<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

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

USB接口在串行通信中的應用

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

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

本文引用地址:http://dyxdggzs.com/article/244634.htm

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

1 USB接口簡(jiǎn)介

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

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

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

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

2 USB到RS-232轉換器

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

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

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

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

3 用USB連接56kbps modem設計

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

3.1 傳統的modem結構

傳統modem一般包括:

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

·數字信號處理器(DSP):對信號調制和解調

·模擬調制和解調電路

·數據存取管理電路

·隔離器:將高電壓或高電流隔離電話(huà)線(xiàn)

3.2 簡(jiǎn)化設計

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

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

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

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

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

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


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>