《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > USB接口在串行通信中的應(yīng)用

USB接口在串行通信中的應(yīng)用

2009-02-02
作者:何廣軍

??? 摘? 要: 介紹USB接口在串行通信中的應(yīng)用,討論USB接口同RS-232接口的轉(zhuǎn)換以及USB接口modem的簡化設(shè)計,并給出了實際中的產(chǎn)品樣圖,。?

????關(guān)鍵詞: USB? RS-232? 通訊類? UniModem

?

1 USB接口簡介?

??? USB即通用串行總線,可以實現(xiàn)熱插拔,采用菊花鏈結(jié)構(gòu),最多可以同時連接127臺設(shè)備,由總線提供電源,并有檢錯、糾錯功能以保證數(shù)據(jù)正確傳輸,。?

??? USB在PC機上應(yīng)用時,PC機的操作系統(tǒng)需要支持USB協(xié)議,此時PC機上的軟件包括兩部分:USB初始化軟件和運行部分,。前者對外設(shè)進行構(gòu)造并定義一個唯一的標識,這就是所謂的列舉過程,以獲得每個外設(shè)的描述表,。?

??? 另外USB主機端軟件分層為多種外設(shè)的類,如大存儲器外設(shè),、通訊外設(shè)、音頻外設(shè),、人機接口外設(shè)等,。?

??? USB數(shù)據(jù)線傳送差分信號,所有通信由根集線器初始化,并由外部集線器復(fù)制,其連接為點到點,采用半雙工。USB數(shù)據(jù)線上無時鐘信號,故節(jié)點間為異步通訊,總線上所有外設(shè)的額定通信速率為12MHz,外設(shè)采用過采樣方式從總線上接收信號,。接收器依賴于有規(guī)律的信號變化以保持與發(fā)送器的同步,USB規(guī)格書中采用不歸零翻轉(zhuǎn)以實現(xiàn)其數(shù)據(jù)線的發(fā)送編碼,。?

2 USB到RS-232轉(zhuǎn)換器?

??? RS-232是個流行的接口。在MS-DOS中,四個串行接口稱為COM1,、COM2,、COM3和COM4,而絕大部分windows應(yīng)用程序最多可以有4個外設(shè),但是如果用戶要擴充更多外設(shè)時,就必須要用插入式串行卡或者外部開關(guān)盒實現(xiàn)。?

??? RS-232點對點連接,一個串口只能連接一個外設(shè),。而USB是一種多點,、高速的連接方式,采用集線器能實現(xiàn)更多的連接。USB接口的基本部分是串行接口引擎SIE,SIE從USB收發(fā)器中接收數(shù)據(jù)位,轉(zhuǎn)化為有效字節(jié)傳送給SIE接口;反之,SIE接口也可以接收字節(jié)轉(zhuǎn)化為串行位送到USB總線,。?

??? 圖1為轉(zhuǎn)換器加串行外設(shè)示意圖,。在轉(zhuǎn)換器和外設(shè)接收器端各有一個微控制器,實際上這兩個微控制器可以合并,可采用MCS-51系列控制器或者I2C總線的微控制器實現(xiàn)。?

?

?

??? 圖2為使用外部USB連接的微控制器示意圖,通用微控制器選用MCS-51,USB外圍芯片是Philips的PDIUSBD11,該芯片帶有I2C接口,其SIE接口包括一個中斷和一個較大寄存器,用于對I2C總線的存取,。當一個數(shù)據(jù)包來到時,PDIUSBD11將其中斷線拉低,微控制器轉(zhuǎn)入中斷處理程序,首先讀取PDIUSBD11的中斷狀態(tài)寄存器,然后再讀取其他寄存器的值,以獲得數(shù)據(jù)包類型和包中數(shù)據(jù),。每次傳送完一個數(shù)據(jù)包均會產(chǎn)生一次中斷請求,中斷處理程序監(jiān)視控制序列并檢測所有錯誤。

?

?

3 用USB連接56kbps modem設(shè)計?

??? USB協(xié)議中包括一個通信類,定義了一種結(jié)構(gòu),以囊括所有用于遠程通信服務(wù)和中速網(wǎng)絡(luò)服務(wù)的設(shè)備,。這樣,外設(shè)就可以將自身標識為一個通信類的外設(shè),。?

3.1 傳統(tǒng)的modem結(jié)構(gòu)?

??? 傳統(tǒng)modem一般包括:?

??? ·微控制器:以對控制碼譯碼(AT命令集)?

??? ·數(shù)字信號處理器(DSP):對信號調(diào)制和解調(diào)?

??? ·模擬調(diào)制和解調(diào)電路?

??? ·數(shù)據(jù)存取管理電路?

??? ·隔離器:將高電壓或高電流隔離電話線?

3.2 簡化設(shè)計?

??? 由于PC機串口的最高速率為115.2kbps,這樣在圖3的結(jié)構(gòu)中會形成一個速度瓶頸。RS-232系統(tǒng)包括2個串行信號路徑,其方向相反,分別用于傳輸命令和數(shù)據(jù),而命令和狀態(tài)必須與數(shù)據(jù)交織在一起;而USB支持分離的命令和數(shù)據(jù)通道并允許獨立的狀態(tài)報告,。?

?

?

??? 在Windows操作系統(tǒng)中,通信層的UniModem驅(qū)動程序(圖4所示)可以實現(xiàn)modem命令集,。微軟的VCOMM口驅(qū)動軟件可以重新定位原先面向串行口的輸出,將之直接傳給Windows外設(shè)驅(qū)動模塊(WDM—Windows Device Driver Model)的類驅(qū)動器,由WDM類驅(qū)動器將輸出送到USB外設(shè)。而采用相反的順序則可將由USB外設(shè)的輸入送至Unimodem驅(qū)動器并最終回到應(yīng)用程序,。?

?

?

??? 另外,由于PC主機有足夠的處理能力,在處理用戶應(yīng)用程序的同時,完全可以實現(xiàn)實時信號處理,并且Intel在其處理器中保留了MMX指令集,。該指令集有DSP算法的優(yōu)點,同時又是通過“軟”處理實現(xiàn),且相對于物理的DSP芯片,該指令集的信號處理算法可以方便地升級。?

??? 通過“軟處理”,傳統(tǒng)的調(diào)制解調(diào)器中只保留了調(diào)制級,、信號隔離器和一個數(shù)據(jù)存取管理器,。圖5即為簡化了的設(shè)計,帶有一個變壓器用作隔離器。?

?

?

??? 本文討論了USB接口技術(shù)在串行通信中的應(yīng)用,通過在外設(shè)中加入一個微控制器,并利用幾個Windows支持的通信類,簡化了傳統(tǒng)USB接口modem的設(shè)計,。文中給出了一個實際modem的簡化設(shè)計,利用LabView軟件和VB語言可以對該modem進行仿真模擬。?

參考文獻?

1 USB Specification V1.1 ?

2 Device Class Definition for Audio V1.0?

3 Device Class Definition for Communications V1.1?

4 張汝春. USB新技術(shù).北京:清華大學出版社,2002

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。