首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
   P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
   D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
   电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
工控搜索 快.专.准
串口波特率转换的纯软件实现--向丽
武汉波仕电子有限公司
收藏本文     查看收藏
串口波特率转换的纯软件实现
                    武汉波仕电子有限公司 ________
 
串口通信,就是RS-232/RS-485通信,要求通信的双方波特率等通信格式一样才可以通信成功。可是在许多情况下,两种不同格式比如不同波特率的串口也要相互通信,这就必须进行串口波特率等格式的转换。本文介绍了如何用纯软件实现串口波特率的转换。
如果串口设备1与串口设备2之间需要通信,但是它们之间的通信波特率不一样。纯软件实现串口波特率的转换的原理就是利用计算机的两个串口,称为串口A和串口B,分别设置为不同的波特率、不同的校验位、不同的数据位和不同的停止位。其中串口A按照串口A设置的波特率等格式接收数据立即从串口B按照串口B设置的波特率等格式发送出去,同样串口B以串口B设置波特率等格式收到的数据立即从串口A以串口A设置的波特率等格式发送出去。
 
 

将计算机的串口A接设备1,串口A的通信波特率设置为设备1的波特率、校验位、数据位和停止位。将计算机的串口B接设备2,串口B的通信波特率设置为设备2的波特率、校验位、数据位和停止位。计算机必须至少有两个RS-232串口,扩展串口可以采用USB-串口转换器等。这样就实现了串口设备1与串口设备2之间的通信。

 

 

 

串口波特率转换软件的界面如图。左边分别是两个串口的设置框,分别可以设置COM口的号码、波特率、校验位、数据位、停止位,默认的格式为(9600,N,8,1)。可以选择的COM口号码为116号。COM串口号可以从操作系统的“设备管理器”只能够的“端口”看到。波特率的可选择范围为:25600012800011520057600384002880019200144009600 480024001200600。校验位可选择:n(无)、o(偶)、e(奇)。数据位可选择:87654。停止位可选择10

设置好串口格式后,按“打开串口”。注意AB两个串口都要打开。成功打开串口后会在“打开串口”按钮的旁边显示红色的圆圈。“打开串口”按钮下面为“清空计数”按钮和本串口接收和发送数据的个数。正常情况下,由于串口A接收到的数据都立即发送给了串口B,所以串口A接收的计数与串口B发送的计数时一样的。同理串口B接收的计数与串口A发送的计数时一样的。

串口波特率转换软件的界面右边为测试和检测部分,正常工作时不需要操作。按“手动发送A串口”可以测试串口A的设置是否生效,是否可以正确与设备1通信,接收到的数据显示在“接收区A”框内。串口B的部分是同样的功能。右下角有“字符格式”和“十六进制”的选项,默认为“字符格式”。当选择“十六进制”时,本软件可以实现16进制数据的格式转换,特别适合MODBUS等工控软件。

如果在软件界面上只打开一个串口,比如串口A或者串口B,那么本软件就是一个功能齐全的串口调试助手软件,可以进行每个串口的设置、数据收发等。

本软件用Visual Basic软件编写,串口用MSCOMM控件实现。核心功能就是将Mscomm1接收的数据立即送到Mscomm2的发送区。难点在于对16进制数据的转换处理。

Mscomm的核心代码如下:

Private Sub MSComm1_OnComm()

    Dim BytReceived() As Byte

    Dim strBuff As String

    Dim i As Integer

    Select Case MSComm1.CommEvent    '事件发生

            Case 2

           MSComm1.InputLen = 0     '读入缓冲区全部内容

            strBuff = MSComm1.Input  '读入到缓冲区

            If MSComm1.InputMode = comInputModeBinary Then

            BytReceived() = strBuff  '如果是二进制接收模式则进行数据处理,否则直接显示字符串

            For i = 0 To UBound(BytReceived)

             If Len(Hex(BytReceived(i))) = 1 Then

       strData = strData & "0" & Hex(BytReceived(i)) & " "

'如果只有一个字符,则前补0,如F显示0F,最后补空格

                Else                      '方便显示观察如: 00 0F FE

                    strData = strData & Hex(BytReceived(i)) & " "

                End If

            Next

             Text1 = strData

              Call hexSend2          '  '发送一个16进制

              strData = ""

 

        Else

            Text1 = Text1 & strBuff

           If MSComm2.PortOpen = False Then

           MsgBox "请打开串口B"

            End If

            On Error GoTo uerror3

            MSComm2.Output = strBuff

            Label14.Caption = Label14.Caption + Len(strBuff) '发送计数

           End If

       End Select

uerror3:  

  End Sub

本文介绍的串口波特率转换的纯软件方法和程序,对不同格式之间的串口通信具有一定的使用价值。本软件不仅仅实现了波特率的转换,还同时实现了校验位、数据位和停止位的转换。文中介绍的软件可以从波仕电子的网站下载。纯软件波特率转换的不足之处在于占用了一台计算机,并且必须配有两个专门用于波特率转换的串口。如果要实现方便简单的波特率转换,还是要用具有双串口的单片机或者FPGA。通过对单片机或者FPGA的两个串口进行波特率等格式的设置,而两个串口在内部进行数据透明传输。这种产品就是硬件波特率转换器,我们将以另外文章《串口波特率转换的纯硬件实现》予以介绍。

 


 

状 态: 离线

公司简介
产品目录

公司名称: 武汉波仕电子有限公司
联 系 人: 向丽
电  话: 027-18995634129
传  真: 027-87561485
地  址: 武汉市洪山区关东科技园QQ:735568869
邮  编: 430000
主  页:
www.232485.com
 
该厂商相关技术文摘:
波仕卡RS-232增强器直接延长串口距离
RS-485及RS-422的自动交叉连接
波仕智能串口共享器的级联使用技巧
波仕485A转换器的使用技巧
用塑料光纤实现串口延长和组网
波仕卡485C转换器的使用技巧
下一代RS-485总线不限距离和节点
RS-485的节点和距离的理论极限
RS-232/RS-485/RS-422通信标准
USB单光纤延长器登场
下一代RS-485总线不限距离和节点
波仕推出Win8无驱的USB隔离串口转换器
更多文摘...
立即发送询问信息在线联系该技术文摘厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved

聚圣源用杨起名女三个字的杭州商标起名高铁专业学费好名字起名公司起名后缀都有哪些党员民主评议个人总结怎么给男孩起个英文名字好奈菲牛年宝宝起名能用字名字名起名字大全搞笑动漫大全根据中文名起的英语名美女逼女子起名德国阿根廷夏天起个名字国家起名瑞典足球教育公司起名字psp游戏iso下载消音软件曹氏宝宝女孩起名大全古剑奇谭电视剧全集楼姓男孩起名用锦起名字啊小窝模块乾起名字好吗进击的巨人小说易经婴儿起名终极一班3在线观看淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化