USB RS-232轉換卡設計
3 板卡性能測試方法及其結果
3.1 設備驅動層通信功能測試
USB-RS 232轉換卡的性能需要借助可靠的工具來進行測試。利用CH341芯片制造商提供的USB測試程序進行調試,點擊搜索CH341串口,出現(xiàn)CH341的串口號為“COM3”的字樣(因為目前電腦上已經有兩個串口),這說明USB-RS 232設備已經成功連接到計算機上。
3.2 應用層通信功能測試
本文利用具有RS 232接口的網(wǎng)絡型溫濕度傳感器來進行測試,該傳感器通過本文研制的USB-RS 232轉換卡連接,該卡一端接傳感器,一端接計算機。在圖4下設置串口的端口號以及幀格式,保證傳感器與計算機的協(xié)議設置是一致的。設置好相關參數(shù)后,把傳感器接到轉換卡上,運行傳感器測試程序后出現(xiàn)如圖5的畫面,經長時間拷機后傳感器工作正常,這說明RS 232接口的外設(溫濕度傳感器)經過USB-RS 232轉換卡可以在USB接口上使用,也說明該轉換卡實現(xiàn)了RS 232協(xié)議到USB協(xié)議的轉換。
4 使用和調試中的關鍵問題
4.1 操作系統(tǒng)識剮不到轉換卡
USB-RS 232轉換卡是即插即用的USB設備,正在使用轉換卡進行數(shù)據(jù)傳輸?shù)倪^程中,不可以將其物理斷開,必須在應用程序關閉該串口后,轉換卡才可以從USB插座中拔出。如果在應用程序使用轉換卡的過程中,轉換卡從USB插座中斷開,那么應用程序應該盡快關閉轉換卡并退出(關閉及退出可能需要數(shù)秒時間)。如果在轉換卡通信過程中發(fā)生錯誤,極有可能是轉換卡已經物理斷開,所以在檢測到錯誤后建議關閉轉換卡,稍等2 s后再重新打開串口通信。采用設備事件通知的方法可以及時了解轉換卡的連接與斷開,從而使串口應用程序能夠及時打開和關閉轉換卡。
4.2 傳輸數(shù)據(jù)丟失
如果通信波特率較高,建議設置較大的緩沖區(qū),尤其在windows 98/ME下,線程調度能力和USB實時性都比Windows 2000/XP差,如果串口接收緩沖區(qū)較小,那么在通信波特率較高時,接收大量數(shù)據(jù)會導致串口緩沖區(qū)溢出而丟棄數(shù)據(jù)。由于底層的USB是將多個字節(jié)組成數(shù)據(jù)包后安插到各個1 ms幀中進行傳輸?shù)?,所以有可能將串口收發(fā)的相鄰的兩個字節(jié)實際分割在兩個USB數(shù)據(jù)包,甚至兩個USB幀中,在最壞情況下這兩個字節(jié)在時間上有可能相隔1 ms甚至2 ms。
5 結語
本文詳細介紹了USB-RS 232轉換卡的設計原理,成功設計了以CH341T為例的USB-RS 232轉換卡。經過調試和試用,轉換卡運行正常,成功實現(xiàn)了RS 232接口設備與USB總線的數(shù)據(jù)傳輸。轉換卡體積小,成本低。使用方便,性能可靠,傳統(tǒng)的RS 232串口設備無需做任何改動即可通過USB口使用。該轉換卡順應市場需要,可以廣泛應用在日常生活與生產實踐中,如:筆記本電腦(大多數(shù)新一代筆記本電腦往往沒有RS232的9針串口,卻有4個USB口)、Modem、數(shù)碼相機、條碼掃描器、刷卡器、磁卡讀寫器、手機傳輸線、掌上電腦、標簽打印機、POS系統(tǒng)、工業(yè)自動化控制機械、安全門禁系統(tǒng)、數(shù)據(jù)采集器等。通過USB-RS 232轉換卡,這些設備都能在RS 232串口和USB口之間非常容易地建立可靠的連接,通過利用USB接口即插即用和熱插拔的能力給這些RS 232串口設備提供非常容易使用的環(huán)境,并大大提高傳輸速率。
評論