基于USB接口的OTG應用技術開發(fā)
(3)a設備在總線上檢測到b設備要成為主機的請求,連接其d+線上拉電阻以作為響應。
(4)b設備發(fā)現d+線是高電平d 線是低電平,這表示a設備識別來自b設備的hnp請求,此時,b設備成為主機而且發(fā)送總線復位信號,開始使用總線。
(5)當b設備使用完總線后,它停止所有的總線活動。
(6)a設備在一定的時間內檢測到沒有總線活動時就會斷開其d+線上的上拉電阻。
(7)b設備連接其上拉電阻。
(8)a設備發(fā)現d+線是高電平d 線是低電平,表示b設備正在發(fā)送連接信號并準備作為外圍設備響應,此時,a設備變?yōu)橹鳈C,并發(fā)送總線復位信號開始使用總線。
srp
otg規(guī)范定義了兩種b設備向a設備請求開始會話的方式,稱為數據線脈沖調制(data-line pulsing)和vbus脈沖調制(vbus pulsing)。這兩種方法組成了會話請求協議(srp)。srp 的初始條件是:b設備必須在確定a設備前一次會話結束以后才能嘗試啟動新的會話。a設備通過檢測到vbus下降到低于其會話有效閾值來確定會話結束。b設備在檢測到d+和d 線至少在2ms的時間內為低電平(se0),這確保a設備檢測到設備的斷開。數據線脈沖調制時,b設備等待滿足上述條件后,接入其數據線上拉電阻(d+或d )。雙重角色b設備只能在全速初始化srp,因此只能上拉d+。vbus脈沖調制時在滿足初始條件后驅動vbus。b設備先執(zhí)行數據線脈沖調制,然后執(zhí)行vbus脈沖調制,a設備設計為能響應其中一種srp的方式。
linux操作環(huán)境下驅動程序的編寫
當otg雙角色設備以主機方式工作時(如圖5),usb主設備軟件包工作,以從機方式工作時,usb設備軟件包工作。otg通過驅動連接器中的id的不同連接,或通過是否有主設備轉換協議spr以確定雙角色設備的工作方式,并確定使用usb主設備軟件包或usb設備軟件包。
評論