USB RS-232轉(zhuǎn)換卡設(shè)計(jì)
與RS 232總線的數(shù)據(jù)傳輸速率相比,USB的傳輸速率高達(dá)480 Mb/s,因此很多計(jì)算機(jī)的RS 232串行接口都被USB接口所替換,但是很多儀器儀表、控制終端、遠(yuǎn)程終端等設(shè)備的接口還是沿用RS 232。為解決兩個(gè)接口之間的轉(zhuǎn)換,設(shè)計(jì)并研制了USB-RS 232接口轉(zhuǎn)換卡。從USB和RS 232通信協(xié)議出發(fā),詳細(xì)介紹USB-RS 232轉(zhuǎn)換卡的設(shè)計(jì)原理,并以CH341T芯片為例,設(shè)計(jì)并制作了USB-RS 232轉(zhuǎn)換卡。利用研制的USB-RS 232轉(zhuǎn)換卡連接具有RS 232接口的溫濕度傳感器,在運(yùn)行監(jiān)控程序后,傳感器運(yùn)行穩(wěn)定,能正確顯示溫濕度數(shù)據(jù),且表明該轉(zhuǎn)換卡可成功地實(shí)現(xiàn)RS 232接口與USB接口的轉(zhuǎn)換。
本文引用地址:http://cafeforensic.com/article/150865.htm1 USB-RS 232轉(zhuǎn)換卡的組成及其工作原理
1.1 組成
USB-RS 232轉(zhuǎn)換卡的設(shè)計(jì)原理框圖如圖1所示,由USB接口模塊、UART接口模塊、數(shù)據(jù)緩沖區(qū)和協(xié)議控制單元組成。各部分功能如下:
USB接口模塊 主要提供與USB總線的連接,它需要實(shí)現(xiàn)一般USB設(shè)備接口的所有功能,以實(shí)現(xiàn)與USB主機(jī)的數(shù)據(jù)傳輸。
UART接口模塊 實(shí)現(xiàn)標(biāo)準(zhǔn)的RS 232接口的所有功能,以實(shí)現(xiàn)與標(biāo)準(zhǔn)RS 232接口的連接。
協(xié)議控制單元 通過接收USB接口的命令,對(duì)UART接口進(jìn)行配置(如配置通信波特率、數(shù)據(jù)位、校驗(yàn)位、停止位、數(shù)據(jù)量控制信號(hào)等)。
數(shù)據(jù)緩沖區(qū) 用來臨時(shí)保存雙方數(shù)據(jù)傳輸過程中的數(shù)據(jù)。
1.2 工作原理
下面以計(jì)算機(jī)與外設(shè)的數(shù)據(jù)傳輸為例,介紹USB-RS 232轉(zhuǎn)換卡的工作原理:
當(dāng)USB-RS 232轉(zhuǎn)換卡連接到USB總線上時(shí),計(jì)算機(jī)檢測到設(shè)備的連接后對(duì)設(shè)備進(jìn)行初始化配置并啟動(dòng)相關(guān)的客戶驅(qū)動(dòng)程序;驅(qū)動(dòng)程序給設(shè)備發(fā)送配置命令以設(shè)置RS 232接口的數(shù)據(jù)傳輸特性;最后,在數(shù)據(jù)傳輸時(shí),計(jì)算機(jī)上的驅(qū)動(dòng)程序首先將數(shù)據(jù)包傳輸給USB接口,USB接口讀出實(shí)際的有效數(shù)據(jù)并保存在數(shù)據(jù)緩沖區(qū)中,UART接口則從數(shù)據(jù)緩沖區(qū)中將數(shù)據(jù)取走并發(fā)送給設(shè)備。
2 USB-RS 232轉(zhuǎn)換卡的設(shè)計(jì)
2.1 協(xié)議轉(zhuǎn)換模塊的設(shè)計(jì)
根據(jù)原理框圖,選擇恰當(dāng)?shù)膮f(xié)議轉(zhuǎn)換模塊是設(shè)計(jì)該卡的關(guān)鍵。設(shè)計(jì)轉(zhuǎn)換卡的方法有好幾種:一種方法是采用通用的USB控制器,利用其內(nèi)置的通用異步收發(fā)器(UART)在USB與RS 232之間進(jìn)行信號(hào)轉(zhuǎn)換,例如EZ-USB,PIC16C745,CY7C63001等,若沒有內(nèi)置UART,也可以利用通用I/O接口模擬RS 232的收發(fā)過程;另外還可以采用單獨(dú)的USB接口收發(fā)器芯片,如ISP1581,PDI-USBD11/12等,但這種方法需要另配微控制器才能工作;第三種就是采用專用的USB與RS 232轉(zhuǎn)換芯片,如CH341芯片,這種芯片的優(yōu)點(diǎn)是數(shù)據(jù)接收和發(fā)送的協(xié)議轉(zhuǎn)換工作全部由芯片獨(dú)立完成,無需干預(yù),也不用編寫芯片的固件。本文采用CH341的簡裝版CH341T來設(shè)計(jì)USB-RS 232轉(zhuǎn)換卡。圖2是一個(gè)利用CH341T和MAX232進(jìn)行USB接口設(shè)計(jì)的硬件框圖。如圖所示,該硬件系統(tǒng)由4部分組成:USB接口、CH341T、MAX232和RS 232接口。其中,USB接口用于連接USB主機(jī),在此選用USB總線接口的A型連接頭;CH341T用于完成USB接口轉(zhuǎn)RS 232接口的所有硬件功能;MAX232用于完成RS 232與TLL/CMOS的電平轉(zhuǎn)換;RS 232接口用于連接RS 232設(shè)備。根據(jù)實(shí)際需要,選擇目前廣泛應(yīng)用的DB9連接器。
2.2 硬件電路設(shè)計(jì)
設(shè)計(jì)USB轉(zhuǎn)RS 232串口的硬件連接圖如圖3所示。USB總線包括一對(duì)5 V電源線和一對(duì)數(shù)據(jù)信號(hào)線。通常,+5 V電源線為紅色;接地線為黑色;D+信號(hào)線為綠色;D-信號(hào)線為白色。USB總線提供的電源電流最大可以達(dá)到500 mA,CH341T芯片可以直接使用USB總線提供的5 V電源。C3和C4是高頻瓷片電容,C3容量一般為4 700 pF~0.02 μF,用于CH341T內(nèi)部電源節(jié)點(diǎn)的退耦;G容量為0.1μF,用于外部電源的退耦。晶振X1、電容C1和C2用于時(shí)鐘振蕩電路。X1的頻率是12 MHz,C1和C2是容量為15~30 pF的高頻瓷片電容。MAX232提供電平轉(zhuǎn)換。
2.3 驅(qū)動(dòng)程序
連接USB-RS 232轉(zhuǎn)換卡的計(jì)算機(jī),必須安裝CH341T的驅(qū)動(dòng)程序CH341SER.EXE,當(dāng)模塊首次連接到計(jì)算機(jī)的USB端口時(shí),計(jì)算機(jī)提示找到新硬件,按照提示完成驅(qū)動(dòng)程序的安裝。
安裝完驅(qū)動(dòng)程序后,可以通過計(jì)算機(jī)的USB接口提供仿真串口。在邏輯功能方面,使用方法與普通計(jì)算機(jī)串口完全相同,支持大多數(shù)常用的串口監(jiān)控及調(diào)試工具程序,應(yīng)用程序可以不做任何修改,可以像存取一個(gè)標(biāo)準(zhǔn)的物理串口一樣訪問這個(gè)虛擬串口,在保持軟硬件兼容的前提下,將原串口產(chǎn)品轉(zhuǎn)換為USB接口。
評(píng)論