關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > USB接口在串行通信中的應(yīng)用

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

作者: 時(shí)間:2006-05-07 來(lái)源:網(wǎng)絡(luò) 收藏

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

本文引用地址:http://butianyuan.cn/article/244634.htm

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

1 USB接口簡(jiǎn)介

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

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

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

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

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

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

RS-232點(diǎn)對(duì)點(diǎn)連接,一個(gè)串口只能連接一個(gè)外設(shè)。而USB是一種多點(diǎn)、高速的連接方式,采用集線器能實(shí)現(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è)接收器端各有一個(gè)微控制器,實(shí)際上這兩個(gè)微控制器可以合并,可采用MCS-51系列控制器或者I2C總線微控制器實(shí)現(xiàn)。

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

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

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

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

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

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

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

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

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

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

3.2 簡(jiǎn)化設(shè)計(jì)

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

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

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

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

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

隔離器相關(guān)文章:隔離器原理


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉