新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > USB On-The-Go 工作原理分析和應用研究

        USB On-The-Go 工作原理分析和應用研究

        作者: 時間:2013-11-08 來源:網絡 收藏
          1994年,Intel,Compaq等七家軟硬件全球知名企業為了突破當時PC使用串口和并口傳輸速度的限制,成立了通用串行總線開發者論壇( Implementers Forum, IF),并在1994年11月提出了 0.7版,到了1998年開始出現了支持USB 1.1的設備,他的高速性(USB1.1支持1.5 Mb/s和12 Mb/s兩種速度[1])和易用性迅速使之成為P C外設的寵兒。為了對抗1394速度的優勢(1394可以達到400 Mb/s),1999年提出了US B 2.0規范的思想,2000年4月USB IF推出USB 2.0。USB 2.0向下兼容1.1,提供3種速度 ,最高可以達到480 Mb/s[2]。
          USB 1.1和2.0都是必須依賴于PC的,為了在一定程度擺脫對PC的完全依賴,有一定程度的主機功能,2001年12月推出了OTG 1.0,經過6次修改,于2003年6月推出了USB OTG 1.0 a,正式成為一個達到市場實用的規范[3]。
          本文中分析討論了USB 2.0補充規范OTG的,并且針對目前數碼相機伴侶存在的問題,作者提出了自己的解決方案。
        1USB OTG的
          OTG補充規范對USB 2.0的最重要的擴展是其更具節能性的電源管理和允許設備以主機和外設兩種形式工作。OTG有兩種設備類型:兩用OTG設備(Dualrole device)和外設式OTG設備(Peripheralonly OTG device) 。兩用OTG設備完全符合USB 2.0規范,同時,他還要提供有限的主機能力和一個MiniAB插座、支持主機流通協議(Host Negotiatio n Protocol, HNP),并和外設式OTG設備一樣支持事務請求協議(Session Request Protocol, SRP)。當作為主機工作時,兩用OTG設備可在總線上提供8 mA的電流,而以往標準主機則需要 提供100~500 mA的電流。
          2個兩用OTG設備連接在一起時可交替以主機和從機的方式工作,這個特點兼容了現有USB 規范主機/外設的結構模型。OTG主機負責初始化數據通信的任務,比如:總線復位、獲取USB 各種描述符和配置設備。這些配置完成后,2個OTG設備便可以分別以主機和從機方式傳輸信息,2個設備主從角色交換的過程由主機傳輸協議(HNP)定義。
          下面從5個方面說明OTG的
        1.1主機(Adevice)和從機(Bdevice)的初始功能
          設備的初始功能是通過定義連接器來實現的。OTG定義了一個叫做MiniAB的袖珍插孔,他能直接接入MiniA或者MiniB插口,MiniAB有一個ID引腳 上拉至電源端,MiniA插頭有一個與地連接好的ID(R10 Ω),Mini B插頭有一個與地連接的開路ID引腳(R>100 kΩ)。當2個OTG設備連接到一起的時候,MiniA插頭邊的ID引腳會注入一個“0”狀態,MiniB插頭邊的ID引腳為 “1”,ID為0的OTG設備默認為主機(Adevice),ID為1的OTG設備默認為從機(B device)。圖1對上述內容進行了圖解[4]。
        1.2對話請求協議SRP(Session Request Protocol)
          這個協議允許Adevice(可以是電池供電)在總線未使用時通過切斷Vbus來節省電源消耗,也為Bdevice啟動總線活動提供了一種方法。任何一個Adevice, 包括PC或便攜式電腦,都可以響應SRP;任何一個Bdevice,包括一個標準USB外設, 都可以啟動SRP;要求一個雙重功能設備既能啟動SRP,又能響應SRP。
        1.3主機流通協議HNP(Host Negotiation Protocol)
          HNP是一種用來實現Adevice和Bdevice主機/從機轉換的協議(實際上是電纜的反轉)。主/從機功能交換的結果表現在下列過程中:
          (1)利用上拉電阻來發送信號給從機。
          (2)Adevice可在Bdevice上設置“HNP Enable”特性。
          (3)Bdevice斷開上拉。
          (4)ADevice與上拉電阻相連,表明Adevice從屬于從機。
          (5)Adevice給Vbus供電。
          (6)Bdevice檢測Adevice的上拉。
          (7)復位/列舉/使用Adevice。
        1.4驅動程序[5]
          與PC主機不同,便攜式設備沒有便捷的方式和足夠的空間裝載新的驅動程序。因此,OTG 規范要求每個兩用OTG設備有一個支持的外設式OTG目標設備的列表,列表中包括設備的類型和制造商等信息。
          與PC機不同,OTG兩用設備的驅動程序棧由USB主機棧和USB設備棧構成以滿足兩種工作方式的需要。OTG驅動程序通過連接器的不同或者是否有NHP交換設備的工作方式來決定使用USB主機棧還是USB設備棧。
          當OTG兩用設備以主機方式工作時,USB主機棧工作。其中的主機控制器驅動程序負責USB 主機棧與硬件端點的數據交換,USB驅動程序枚舉并保存設備的信息,目標外設主機類驅動程序支持目標設備列表里的設備。主機類驅動程序由芯片制造商提供,同時,OTG提供通用的主機類驅動程序(可以修改以用于非通用設備)。
          當OTG兩用設備以從機方式工作時,USB設備棧工作。其中的設備控制器驅動程序負責USB 設備棧與硬件端點的數據交換,USB協議層負責處理USB協議規范,設備類驅動程序的功能取決于該兩用設備的功能(如數碼照相機、存儲設備、打印機等)。
          OTG驅動程序負責處理兩用OTG設備的工作方式轉換,同時,他還可以返回其結果(如設備是否支持HNP)并處理總線錯誤。應用層程序通過OTG驅動程序開始或者結束一個傳輸事務, 通過USB主機棧或設備棧與硬件層交換數據。 上拉電阻相關文章:上拉電阻原理

        上一頁 1 2 下一頁

        關鍵詞: USB On-The-Go 工作原理

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新宾| 东城区| 兰考县| 鹤峰县| 泰和县| 古交市| 昭平县| 教育| 全南县| 龙山县| 工布江达县| 石狮市| 平舆县| 蕲春县| 松江区| 望奎县| 吉木乃县| 桃园市| 灵山县| 宝丰县| 阳原县| 清涧县| 揭东县| 凤城市| 深圳市| 志丹县| 延津县| 喀什市| 英德市| 太谷县| 岳池县| 新源县| 淮北市| 潢川县| 靖边县| 平利县| 广河县| 沙雅县| 循化| 五常市| 和平县|