产品推荐:水表|流量计|压力变送器|热电偶|液位计|冷热冲击试验箱|水质分析|光谱仪|试验机|试验箱


仪表网>技术中心>使用指南>正文

欢迎联系我

有什么可以帮您? 在线咨询

USB转串口RS232/RS485的超高速通信

来源:武汉波仕电子有限公司   2014年09月04日 14:54  

USB转串口RS232/RS485的超高速通信

                        
                                                                        ---
武汉波仕电子公司 版权所有

 

   摘要:USB串口的超高速通信是指波特率超过115200bps的串口通信,比如921600、460800、230400bps.由于这几种波特率是非标的,所以从硬件到软件都有特殊要求和方法才可以实现。本文以波仕USB232GH2转换器和波特率921600bps为例来进行介绍如何实现。

 

 

USB串口转换器是实现USB与RS-232/RS-485/RS-422串口设备相互通讯的一种协议转换装置(USB协议-串行通信协议)。一般的USB串口转换器支持的波特率zui高达到115.2Kbps(115200bps).USB串口的超高速通信是指zui高波特率超过115200bps的串口通信,比如921600、460800、230400bps.由于这几种波特率是非标的,所以从硬件到软件都有特殊要求和方法才可以实现。本文以波仕USB232GH2转换器和波特率921.6Kbps(921600bps)为例来进行介绍。

要实现USB串口的921.6Kbps的高速通信,必须满足2个条件:1、USB-串口转换器本身支持921.6Kbps波特率;2、必须有支持921.6Kbps波特率的通信软件。如果软件只有应用程序(EXE可执行文件),那也就只能够进行通信的演示,因为所有的接收与发送数据都必须位于应用程序的界面内,无法提供给用户。如果用户要将这些接收或者发送的数据嵌入到用户自己的程序中,那么就必须有支持921.6Kbps波特率的通信软件的源代码。

波仕USB232GH2提供一个USB2.0口,一个隔离的RS232/RS485/RS422口,一个可以对外提供隔离5V供电的插座等。高速光电隔离USB/串口转换器支持串口zui高速率达921.6Kbps,RS-232、RS-485、RS-422通用,可以虚拟成为本地COM串口(COM1-COM256)、无须修改已有的串口通信软件。USB232GH2的RS-232/485/422的zui高通信速率为921.6Kbps,并且实现了USB与串口(RS-232/485/422)之间的2500V光电隔离。 

 

 

1、如何判断USB-串口转换器本身是否支持921.6Kbps波特率

将USB232GH2的USB电缆插到计算机的USB口、计算机会自动检测到USB232GH2并且显示“发现新硬件”,将USB232GH2的配套光盘插入计算机的光驱,按“自动查找”计算机会自动找到驱动程序,zui后按“完成”结束。用户可以查看“控制面板”的“系统\设备管理器\端口”,就会发现自动分配给USB232GH2一个新的COM口号码。如果要查看USB串口是否支持921.6Kbps(921600bps),在Windows 7下,桌面à我的电脑\属性à硬件à设备管理器à端口à通信端口(找到USB232GH2的COM口)\属性à端口设置ààPort Settings,用户就可以看到所支持的全部波特率了。如果其中有921600,就说明可以支持921.6Kbps波特率。注意即使有显示921600,也并不意味着该USB-串口转换器就一定支持到921600。因为这还与具体USB-串口转换器的接口硬件性能相关。这个就必须参考产品的说明书的指标。只有经过921600bps波特率检测通过的、且厂家的说明书确认的产品才可以。另外一般来讲,产品支持RS-485和RS-422的zui高波特率要比支持RS-232的zui高波特率要高。

2、如何实现USB-串口转换器的921.6Kbps波特率通信

921600bps是比较少使用的波特率,可以说目前的常用串口通信软件几乎都不支持921600bps。一般zui高到115200,少数到230400bps。由于Windows api实现的zui高也就支持256Kbps,所以要实现921600bps串口通信就必须使用更加底层的编程。

以Visual Basic语言为例,无法使用选择波特率的下拉式菜单来选择921600,因为921600是非标准的。要想让串口的波特率一开始就设置为921600,只能把选择波特率的下拉式菜单的属性中将初始值设为921600。注意通信波特率的设置必须用Windows底层函数来定义,否则会出现“无效的属性”提示,就是提示961200是不标准的。 

 

 

由于软件运行时默认打开COM1串口,而默认波特率又是921600,那么当COM1串口是普通串口(比如波特率zui高115200,达不到921600)而不是zui高921600的超高速串口时,会提示“无法打开串口”。这并不意味着COM1串口不存在,只是说明COM1不支持921600。这时按“确定”后,将COM1改选为USB232GH2的COM口即可正确运行!(

本文介绍的通信方法也适合于其它非标的超高波特率,比如460800bps,230400bps。一般来讲,可以支持921600bps的USB串口转换器一定也支持460800bps和230400bps。支持460800bps和230400bps的串口通信软件与以上介绍的支持921600bps的程序编写方法是一样的,就是:要想让串口的波特率一开始就设置为460800(或230400),只能把选择波特率的下拉式菜单的属性中将初始值设为460800(或230400)。

免责声明

  • 凡本网注明“来源:仪表网”的所有作品,均为浙江兴旺宝明通网络有限公司-仪表网合法拥有版权或有权使用的作品,未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:仪表网”。违反上述声明者,本网将追究其相关法律责任。
  • 本网转载并注明自其它来源(非仪表网)的作品,目的在于传递更多信息,并不代表本网赞同其观点或和对其真实性负责,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品第一来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
联系我们

客服热线: 15267989561

加盟热线: 15267989561

媒体合作: 0571-87759945

投诉热线: 0571-87759942

关注我们
  • 下载仪表站APP

  • Ybzhan手机版

  • Ybzhan公众号

  • Ybzhan小程序

企业未开通此功能
详询客服 : 0571-87759942