技術文章

當前頁面︰ 首頁 >技術文章 >USB轉串口RS232/RS485的超高速通信

平安彩票网 - 平安彩票官方开奖网_平安彩票网app下载

--武漢波仕電子-代

供稿︰武漢波仕卡科技有限公司 2014/8/26 14:43:44

0 人氣︰1442

  • 關鍵詞︰ USB轉RS232/RS485 USB串口高速率通信,USB串口轉換器,USB232GH2
  • 摘要︰USB串口的超高速通信是指波特率超過115200bps的串口通信,比如921600、460800、230400bps.由于這幾種波特率是非標的,所以從硬件到軟件都有特殊要求和方法才可以實現。本文以波仕USB232GH2轉換器和波特率921600bps為例來進行介紹如何實現USB轉串口RS232/RS485的超高速通信。

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

                        
                                                       ---
武漢波仕電子公司 版權所有

 

   摘要︰USB串口的超高速通信是指波特率超過115200bps的串口通信,比如921600、460800、230400bps.由于這幾種波特率是非標的,所以從硬件到軟件都有特殊要求和方法才可以實現。本文以波仕USB232GH2轉換器和波特率921600bps為例來進行介紹如何實現USB轉串口RS232/RS485的超高速通信。

 

 

USB串口轉換器是實現USB與RS-232/RS-485/RS-422串口設備相互通訊的一種協議轉換裝置(USB協議-串行通信協議)。一般的USB串口轉換器支持的波特率最高達到115.2Kbps(115200bps).USB串口的超高速通信是指最高波特率超過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/串口轉換器支持串口最高速率達921.6Kbps,RS-232、RS-485、RS-422通用,可以虛擬成為本地COM串口(COM1-COM256)、無須修改已有的串口通信軟件。USB232GH2的RS-232/485/422的最高通信速率為921.6Kbps,並且實現了USB與串口(RS-232/485/422)之間的2500V光電隔離。 

 

 

1、如何判斷USB-串口轉換器本身是否支持921.6Kbps波特率

將USB232GH2的USB電纜插到計算機的USB口、計算機會自動檢測到USB232GH2並且顯示“發現新硬件”,將USB232GH2的配套光盤插入計算機的光驅,按“自動查找”計算機會自動找到驅動程序,最後按“完成”結束。用戶可以查看“控制面板”的“系統\設備管理器\端口”,就會發現自動分配給USB232GH2一個新的COM口號碼。如果要查看USB串口是否支持921.6Kbps(921600bps),在Windows 7下,桌面?我的電腦\屬性?硬件?設備管理器?端口?通信端口(找到USB232GH2的COM口)\屬性?端口設置?高級?Port Settings,用戶就可以看到所支持的全部波特率了。如果其中有921600,就說明可以支持921.6Kbps波特率。注意即使有顯示921600,也並不意味著該USB-串口轉換器就一定支持到921600。因為這還與具體USB-串口轉換器的接口硬件性能相關。這個就必須參考產品的說明書的指標。只有經過921600bps波特率檢測通過的、且廠家的說明書確認的產品才可以。另外一般來講,產品支持RS-485和RS-422的最高波特率要比支持RS-232的最高波特率要高。

2、如何實現USB-串口轉換器的921.6Kbps波特率通信

921600bps是比較少使用的波特率,可以說目前的常用串口通信軟件幾乎都不支持921600bps。一般最高到115200,少數到230400bps。由于Windows api實現的最高也就支持256Kbps,所以要實現921600bps串口通信就必須使用更加底層的編程。

以Visual Basic語言為例,無法使用選擇波特率的下拉式菜單來選擇921600,因為921600是非標準的。要想讓串口的波特率一開始就設置為921600,只能把選擇波特率的下拉式菜單的屬性中將初始值設為921600。注意通信波特率的設置必須用Windows底層函數來定義,否則會出現“無效的屬性”提示,就是提示961200是不標準的。 

 

 

由于軟件運行時默認打開COM1串口,而默認波特率又是921600,那麼當COM1串口是普通串口(比如波特率最高115200,達不到921600)而不是最高921600的超高速串口時,會提示“無法打開串口”。這並不意味著COM1串口不存在,只是說明COM1不支持921600。這時按“確定”後,將COM1改選為USB232GH2的COM口即可正確運行。strong>USB轉串口RS232/RS485的超高速通信)

本文介紹的通信方法也適合于其它非標的超高波特率,比如460800bps,230400bps。一般來講,可以支持921600bps的USB串口轉換器一定也支持460800bps和230400bps。支持460800bps和230400bps的串口通信軟件與以上介紹的支持921600bps的程序編寫方法是一樣的,就是︰要想讓串口的波特率一開始就設置為460800(或230400),只能把選擇波特率的下拉式菜單的屬性中將初始值設為460800(或230400)。

更多內容請訪問 武漢波仕卡科技有限公司(#)

手機掃描二維碼分享本頁

工控網APP下載安裝

工控速派APP下載安裝

 

我來評價

評價︰
一般