<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > USB的設(shè)計(jì)要素

          USB的設(shè)計(jì)要素

          ——
          作者:Microchip Technology Rodger Richey 時(shí)間:2006-12-04 來源:今日電子 收藏

          通用串行總線()就像20年來無所不在的RS232串行接口一樣應(yīng)用廣泛?,F(xiàn)今發(fā)售的大部分PC僅有接口,而沒有串口或并口。最初是為連接一些基本外設(shè)而設(shè)計(jì)的,但它的易用性和普及性卻使之被用在視頻游戲、PDA、MP3播放器、數(shù)據(jù)記錄儀等方面。

          在進(jìn)行USB接口設(shè)計(jì)時(shí),有許多因素需要考慮:是選擇低速、全速,還是高速傳輸速率;采用A型還是B型連接器;功率消耗和兼容性測試問題以及設(shè)備類型的選擇都需要考慮。目前,USB OTG(On-The Go)設(shè)備是一個(gè)很好的選擇。

          USB基本結(jié)構(gòu)

          一個(gè)USB系統(tǒng)是一種分層的星型結(jié)構(gòu),由一個(gè)主和多個(gè)點(diǎn)對(duì)點(diǎn)或菊花鏈型連接的從設(shè)備組成。每個(gè)端口可以且僅可以連接一個(gè)設(shè)備,這個(gè)設(shè)備也可以是用來擴(kuò)展端口的USB 集線器(Hub)。多個(gè)設(shè)備可以形成菊花鏈,但也有一個(gè)限制:每個(gè)允許有5級(jí)分支,并且最多只能有127個(gè)設(shè)備可以連接到一個(gè)主上。

          這些設(shè)備可以在計(jì)算機(jī)啟動(dòng)時(shí)插入,也可以熱插入。熱插拔技術(shù)對(duì)于像數(shù)碼相機(jī)或便攜音樂播放器這樣的設(shè)備是非常方便的,因?yàn)檫@些設(shè)備僅僅是為了上傳或下載數(shù)據(jù)。如果每次想要連接或斷開它們時(shí)都要重新啟動(dòng)系統(tǒng),則非常不方便。

          主機(jī)和Hub之間的連接是通過3種類型USB連接器中的一種實(shí)現(xiàn)的:用于和主控制器上行連接的“A型”連接器;用于和從設(shè)備下行連接的“B型”連接器;“mini-B”型連接器是小型的“B型”連接器,這些不同的連接器可以避免用戶連接錯(cuò)誤。

          不同類型的USB連接器

          不同類型的USB連接器

          USB設(shè)備的供電

          USB的一個(gè)最大特征是USB設(shè)備可以通過USB電纜獲得電源。USB電纜有4根導(dǎo)線:電源線、地線以及差分信號(hào)對(duì)D+和D-。電源和地線可以提供5V電壓,電流高達(dá)500mA。

          當(dāng)一個(gè)設(shè)備接入時(shí),主控制器將通過枚舉的方式來發(fā)現(xiàn)它。枚舉使主控制器能夠了解接入的是哪一個(gè)設(shè)備,它希望執(zhí)行哪種類型的數(shù)據(jù)傳輸,它要消耗多少功率,以及其他一些參數(shù)。當(dāng)設(shè)備剛插入時(shí),僅允許它吸入100mA的電流,隨后主控制器才允許它吸入最高500mA的電流,這還取決于主控制器分配給已經(jīng)連接的其他設(shè)備所吸入的電流。

          在供電上還有一個(gè)限制,有些Hub不是自帶電源的,而是簡單地將主控制器的電源直接傳遞到下行連接器上。像打印機(jī)、掃描儀和音箱等設(shè)備通常自己帶有電源適配器,而像鼠標(biāo)、鍵盤和閃存盤等設(shè)備則是通過USB電纜供電的。

          在使用USB電纜時(shí),其最大長度被限制在5m。不過,可以通過6根電纜和5個(gè)Hub將電纜延長到30m。

          設(shè)備配置功能

          正如前面提到的,枚舉過程決定了設(shè)備的能力。其他功能決定了數(shù)據(jù)傳輸類型,并幫助裝入合適的驅(qū)動(dòng)程序。USB定義了以下四種傳輸類型。

          ● 控制傳輸:向設(shè)備發(fā)送短的命令和查詢,或接收設(shè)備發(fā)出的狀態(tài)響應(yīng)。

          ● 中斷傳輸:以非常小的數(shù)據(jù)包傳輸以保證快速的響應(yīng),如鼠標(biāo)或鍵盤等。

          ● 塊傳輸:具有錯(cuò)誤檢測的大數(shù)據(jù)量傳輸,如打印機(jī)或硬盤等。

          ● 同步傳輸:沒有錯(cuò)誤檢測的實(shí)時(shí)流數(shù)據(jù)傳輸,如音箱等。

          設(shè)備內(nèi)部的驅(qū)動(dòng)程序設(shè)置每個(gè)下行設(shè)備的設(shè)備類型,根據(jù)不同的設(shè)備類型,操作系統(tǒng)可以加載標(biāo)準(zhǔn)的驅(qū)動(dòng)程序。人機(jī)接口設(shè)備類(HID)和海量存儲(chǔ)設(shè)備類(MSD)有操作系統(tǒng)自帶的驅(qū)動(dòng)程序。其他的類型包括音頻類、打印機(jī)類、視頻類以及測試測量類等。此外,USB也規(guī)定了供應(yīng)商類,以允許客戶自定義。

          USB1.1和USB2.0的傳輸速率

          USB1.1在1998年9月份發(fā)布,并定義了兩種傳輸速率。低速率USB定義了最大1.5Mb/s的傳輸速率,通常用于HID設(shè)備,如鼠標(biāo)或鍵盤。全速率USB定義了最大12Mb/s的傳輸速率。

          2000年4月USB2.0發(fā)布,它定義了更高的傳輸速率,可以高達(dá)480Mb/s。USB2.0對(duì)USB1.1 向下兼容,更高的數(shù)據(jù)傳輸速率可滿足如音視頻流設(shè)備、外置硬盤驅(qū)動(dòng)器接口性能的改善、網(wǎng)絡(luò)攝像機(jī)、掃描儀和打印機(jī)等的數(shù)據(jù)傳輸要求。

          USB將可獲得的帶寬分成由主控制器管理的幀的形式,每個(gè)低速或全速幀的幀長為1.5Kb,每一毫秒發(fā)送一次。在每個(gè)幀中,所有的設(shè)備都使用同步傳輸或中斷傳輸獲得時(shí)隙,以保證所需的時(shí)序要求,其他額外的時(shí)間分配給塊傳輸和控制傳輸。雖然最高傳輸速率是1.5、12或480Mb/s,但任何一個(gè)設(shè)備所用的只是總帶寬的一部分。實(shí)際上,總線可以超出最大帶寬的限制,這取決于連接到主控制器上的設(shè)備數(shù)量,因此,在計(jì)算機(jī)上有時(shí)就需要多個(gè)主控制器。

          需要注意的另外一點(diǎn)是,市場上的許多設(shè)備標(biāo)稱是USB2.0的,但并不是所有的USB2.0 設(shè)備都是高速設(shè)備。USB-IF組織提供了“USB標(biāo)志”和“USB高速標(biāo)志”,通過這些標(biāo)志可以區(qū)分USB產(chǎn)品的兼容性。

          連接USB OTG設(shè)備

          USB OTG標(biāo)準(zhǔn)最初發(fā)行時(shí)間是2001年11月,2003年6月進(jìn)行了一次重要的修訂。主要的變更是允許一個(gè)端口即可以是USB主設(shè)備,還可以是USB從設(shè)備。以主設(shè)備或從設(shè)備方式工作是由插入設(shè)備的電纜的端接形式?jīng)Q定的。

          USB OTG的擴(kuò)充使得像PDA這樣的USB設(shè)備能夠與計(jì)算機(jī)連接,并進(jìn)行上傳數(shù)據(jù)或文件。而PDA也可以與打印機(jī)連接,來打印圖片或文件,還可以連接USB接口的鍵盤或鼠標(biāo),或其他增強(qiáng)PDA使用靈活性的USB設(shè)備。由于大部分USB OTG設(shè)備是便攜設(shè)備或小尺寸設(shè)備,所以定義了兩種新型的連接器:“mini-A型”連接器和“mini-B型”連接器。目前,集成USB OTG模塊的MCU雖然不像USB2.0那樣隨處可見,但也逐漸多了起來。



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();