- 相關(guān)推薦
USB On-The-Go 技術(shù)概述
摘要:USB OTG(On-The-Go)是USB 2.0規(guī)范的補充,它使外設(shè)可以在無主機參與的情況下直接互連進行通信工程.本文討論了USB OTG補充規(guī)范的新增特性,包括OTG事務(wù)請求協(xié)議SRP和主機流通協(xié)議HNP、連接器和電纜、兩用OTG設(shè)備和外設(shè)式OTG設(shè)備、驅(qū)動程序以及數(shù)據(jù)流模型。USB的廣泛應(yīng)用其正在成為外設(shè)與PC機及膝上型電腦連接的工業(yè)標(biāo)準(zhǔn)USB外設(shè)主要是便攜式設(shè)備,隨著其數(shù)量的不斷增多,設(shè)備之間無主機參與的直接通信成為亟待解決的問題。我們開發(fā)了基于USB總線(接口芯片為Philips公司的PDIUSBD12)的數(shù)據(jù)采集系統(tǒng),取得了滿意的效果。但在開發(fā)USB1.1設(shè)備時遇到的設(shè)備互連直接通信的解決方案.USB 2.0 雖然在速度等方面有很大的改進,但同樣要依賴計算機主機進行通信。
2001年底,USB開發(fā)者論壇(USB Implementers Forum,USB IF)發(fā)布了專門用于USB外設(shè)間“可移動互連”的USB2.0補充規(guī)范USB On-The-Go,其目標(biāo)是使外設(shè)以主機的身份和另外特定的一組外設(shè)直接通信。本文中歸納USB 2.0補充規(guī)范OTG的相關(guān)技術(shù),并主要討論其新增特性。
1 新的協(xié)議
OTG補充規(guī)范對USB2.0的最重要的擴展是其更具節(jié)能性的電源管理和允許設(shè)備以主機和外設(shè)兩種形式工作。OTG有兩種設(shè)備類型:兩用OTG設(shè)備(Dual-role device)和外設(shè)式OTG設(shè)備(Perip-heral-only OTG device) 。兩用OTG設(shè)備完全符合USB2.0規(guī)范,同時它還要提供有限的主機能力考核成績和一個MiniAB插座、支持主機流通協(xié)議(Host Negotiation Protocol,HNP),并和外設(shè)式OTG設(shè)備一樣支持事務(wù)請求協(xié)議(Session Request Protocol,SRP).當(dāng)作為主機工作時,兩用OTG設(shè)備可在總線上提供8mA的電流,而以往標(biāo)準(zhǔn)主機則需要提供100~500mA的電流。
兩個兩用OTG設(shè)備連接在一起時可交替以主機和從機的方式工作,這個特點兼容了現(xiàn)有USB規(guī)范主機/外設(shè)的結(jié)構(gòu)模型。OTG主機同樣負(fù)責(zé)補始化數(shù)據(jù)通信的任務(wù),比如:總線復(fù)位、獲取USB各種描述符和配置設(shè)備。這些配置完成后,兩個OTG設(shè)備便可以分別以主機和從機方式傳輸信息,兩個設(shè)備主從角色交換的過程由主機傳輸協(xié)議(HNP)定義。以下以兩用OTG設(shè)備為例討論SRP和HNP。
1.1 事務(wù)請求協(xié)議SRP
在以往的USB系統(tǒng)運行過程中,主機提供5V的電源和不低于100mA的總線電流。當(dāng)OTG主機(指以主機方式工作的兩用OTG設(shè)備,又稱A-device)連接到有線電源時這種方法是適用的,但像手機這樣的自供電移動設(shè)備則不能承受如此大的電能浪費。為了節(jié)約電源延長電池的使用壽命,當(dāng)總線上沒有活動時,OTG主機將掛起總線電源VBUS。SRP協(xié)議可使OTG從機(指外設(shè)式設(shè)備或者以外設(shè)方式工作的兩用設(shè)備,又稱B-device,此處指后者)請求A-device重新使能VBUS,而后A-device使用HNP協(xié)議交換兩個設(shè)備的工作方式,這兩步完成后由新的OTG主機開始事務(wù)傳輸。B-device可在前一事務(wù)結(jié)束2ms后的任意時間開始SRP,SRP的時序波形見圖形1。
B-device將先后執(zhí)行數(shù)據(jù)線脈沖調(diào)制(data-line pul-sing)和VBUS脈沖調(diào)制(VBUS pulsing) 。它通過使能數(shù)據(jù)線上拉電阻(全速和高速設(shè)備為D ,低速設(shè)備為D-)5~10ms實現(xiàn)前者,后者通過驅(qū)動VBUS實現(xiàn)。VBUS必須要有足夠長的時間對其電容充電,這個時間應(yīng)能保證不大于13μF的電容充電至2.1V(OTG設(shè)備的電容是6.5μF或更小),從而不會對標(biāo)準(zhǔn)主機的96μF或更高的電容充電至2.0V。該限制保證了從B-device引來的VBUS電流不會破壞標(biāo)準(zhǔn)主機的端口。
A-device檢測到數(shù)據(jù)線脈沖調(diào)制或者VBUS脈沖調(diào)制后,首先復(fù)位總線,然后發(fā)送Set_feature命令而先不進行設(shè)備的枚舉,此時B-device尚處在默認(rèn)的從機狀態(tài)。如果Set_feature命令成功執(zhí)行,說明B-device為兩用OTG設(shè)備,A-device(使用HNP協(xié)議)掛起VBUS準(zhǔn)備讓B-device交換為主機方式接管總線。如果Set_feature命令執(zhí)行失敗,說明B-device為外設(shè)式OTG設(shè)備,于是A-device使能VBUS準(zhǔn)備開始一個傳輸事務(wù)(此時,A-device只是被喚醒,并未改變工作方式)。當(dāng)A-device認(rèn)為總線上沒有傳輸需要時,掛起VBUS以結(jié)束該事務(wù)。這種A-device自動檢測B-device是否支持HNP協(xié)議的特征稱為"No Silent Failure"。
1.2 主機流通協(xié)議HNP
當(dāng)兩用設(shè)備連接了一個Mini-A插頭或者Mini-B插頭時,它相應(yīng)的便以O(shè)TG主機或者OTG外設(shè)的默認(rèn)方式工作。A-device為默認(rèn)主機,所以由它提供VBUS電源,且在檢測到有設(shè)備接入時復(fù)位總線、八舉并配置B-device。
A-device在完成對B-device的使用后,可以通過查詢B-device的OTG性能描述符來判斷是否支持HNP協(xié)議(即是否為兩用OTG設(shè)備)。如支持HNP,B-device將返回有效的OTG性能描述符,A-device則產(chǎn)生一個Set_feature命令(即HNP_Enable)來通知B-device可以在總線掛起的時候以主機方式工作,隨后A-device掛起總線。HNP的時序波形見圖2。
B-device通過上拉電阻(全速時)或者下拉電阻(高速時)拉低D 以示連接斷開。隨后,作為對B-device斷開的響應(yīng),
【USB On-The-Go 技術(shù)概述】相關(guān)文章:
淺談植物檢疫技術(shù)概述03-18
USB技術(shù)在數(shù)據(jù)采集方面的研究與應(yīng)用03-07
淺談USB接口技術(shù)研究應(yīng)用與設(shè)計03-28
膜結(jié)構(gòu)的加工制作與施工技術(shù)概述03-28
USB OTG設(shè)計03-18
基于FPGA/CPLD和USB技術(shù)的無損圖像采集卡03-18
公證證據(jù)概述01-13
生物柴油及生產(chǎn)概述01-11