USB OTG连接方式
生活随笔
收集整理的這篇文章主要介紹了
USB OTG连接方式
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 概要
OTG設(shè)備使用插頭中的ID引腳來區(qū)分A/B Device,ID接地被稱作為A-Device,充當(dāng)USB Host,A-Device始終為總線?提供電力,ID懸空被稱作為B-Device,充當(dāng)USB Device,設(shè)備的USB Host/USB Device角色可以通過HNP(主機(jī)交換?協(xié)議)切換。OTG設(shè)備連接時(shí)不能跨越USB Hub,如果跨越USB Hub則失去HNP功能。A-Device/B-Device與USB?Host/Device沒有必然的關(guān)系,主機(jī)切換完畢后A-Device變成USB從設(shè)備,但是仍然為總線供電。
SRP協(xié)議允許Adevice在總線為使用時(shí)通過切斷VBUS來節(jié)省電源消耗,任何一類Adevice都應(yīng)該能夠響應(yīng)SRP請求,任何Bdevice也應(yīng)該能夠發(fā)起SRP請求, ADP(Attach Detection Protocol):?
提供是否有對端設(shè)備插入的檢測,支持任何OTG設(shè)備 HNP(Host Negotiation Protocol)主機(jī)交換協(xié)議:?
OTG設(shè)備通過HNP來切換Host/Device角色,Adevice通過查詢Bdevice的OTG性能描述符來判斷是否支持HNP協(xié)議,以判斷Bdevice是否為兩用的OTG設(shè)備,如果Bdevice支持HNP協(xié)議,Bdevice將會(huì)返回有效的OTG性能描述符,隨后Adevice產(chǎn)生一個(gè)SetFeature命令告知Bdevice:你可以在總線掛起時(shí)以主機(jī)的方式工作,Adevice發(fā)送了這個(gè)SetFeature命令后掛起總線,?本次Session結(jié)束后Host回到Adevice手里。 4.設(shè)備框架 OTG描述符 在設(shè)備枚舉時(shí),A-Device通過GetDeor向B設(shè)備請求OTG描述符。OTG描述符也應(yīng)當(dāng)作為GetConfiguration()的一部分返回。其中的bmAttributes標(biāo)示B-Device是否支持ADP/HNP/SRP 標(biāo)準(zhǔn)設(shè)備特性,通過SetFeature()設(shè)置。 b_hnp_enable?
設(shè)置此特性,顯示B-Device被允許進(jìn)行HNP,A設(shè)備必須在T(HOST_REQ_SUSP)時(shí)間內(nèi)掛起總線,此特性在session結(jié)束時(shí)清除。 a_hnp_support 早期OTG版本的兼容特性,設(shè)置這個(gè)特性指示B-Device對端的A-Device支持HNP。 a_alt_hnp_support?
該標(biāo)志已被廢棄 5.連接方式(Host -> Device) As Host Only?與 僅作為外設(shè)的B-device(帶A插頭型) Host端檢測到A插頭插入,停止ADP,打開VBus,因?yàn)锽-Device的A插頭與設(shè)備作為一體,此時(shí)B-Device必定與A插頭連接,Host檢測到外設(shè)連接,開始枚舉。?
As Host Only 與 僅作為外設(shè)的B-device(A插頭為線纜連接) Host段檢測到A插頭插入,停止ADP,打開VBus,如果B-Device是線纜連接完畢在將A插頭插入則整個(gè)連接過程與上面無異,因?yàn)榇?時(shí)B-Device可能還沒有插入插頭,則設(shè)備連接超時(shí),VBus再次關(guān)閉,等待下一次ADP的改變(線纜連接完畢),再次打開VBus,此時(shí)開始正常總 線枚舉。 OTG Device 與 OTG Device Host端檢測到插頭插入,則打開VBus,如果沒有外設(shè)檢測到,則關(guān)閉VBus,打開ADP Probing,Device端檢測到插頭插入,則打開SRP,如果線纜沒有插入,則SRP超時(shí),Device端開始進(jìn)行ADP Probing,當(dāng)線纜連接完畢,Device端偵測到ADP變化,發(fā)送SRP請求Host打開VBus,Host回應(yīng)SRP并且打開VBus,完成設(shè)備連接。 6.案例分析: 有客戶反饋他們的樣機(jī)OTG mrio AB插座不能識(shí)別U盤,最后查出的原因是客戶樣機(jī)的USB的ID腳沒有接地, 樣機(jī)沒有切換到USB HOST模式。
2.USB-OTG插槽類型
As Host Only :提供標(biāo)準(zhǔn)的A插座,普通的USB Host并帶有TPL(支持設(shè)備列表)
As Device Only:僅能作為外設(shè)的B-Device(分為插頭一體和插頭線纜分離的)
OTG Dual ? ? ?:使用Micro AB插座,可以在運(yùn)行時(shí)切換Host/Device。
OTG Dual ?在插頭插入后會(huì)先打開VBus,如果沒有設(shè)備連接則關(guān)閉VBus,并開啟ADP偵測,而EAs Host Only?則?不會(huì)再次關(guān)閉VBus 3.協(xié)議 SRP(Session Request Protocol)對話請求協(xié)議:?SRP協(xié)議允許Adevice在總線為使用時(shí)通過切斷VBUS來節(jié)省電源消耗,任何一類Adevice都應(yīng)該能夠響應(yīng)SRP請求,任何Bdevice也應(yīng)該能夠發(fā)起SRP請求, ADP(Attach Detection Protocol):?
提供是否有對端設(shè)備插入的檢測,支持任何OTG設(shè)備 HNP(Host Negotiation Protocol)主機(jī)交換協(xié)議:?
OTG設(shè)備通過HNP來切換Host/Device角色,Adevice通過查詢Bdevice的OTG性能描述符來判斷是否支持HNP協(xié)議,以判斷Bdevice是否為兩用的OTG設(shè)備,如果Bdevice支持HNP協(xié)議,Bdevice將會(huì)返回有效的OTG性能描述符,隨后Adevice產(chǎn)生一個(gè)SetFeature命令告知Bdevice:你可以在總線掛起時(shí)以主機(jī)的方式工作,Adevice發(fā)送了這個(gè)SetFeature命令后掛起總線,?本次Session結(jié)束后Host回到Adevice手里。 4.設(shè)備框架 OTG描述符 在設(shè)備枚舉時(shí),A-Device通過GetDeor向B設(shè)備請求OTG描述符。OTG描述符也應(yīng)當(dāng)作為GetConfiguration()的一部分返回。其中的bmAttributes標(biāo)示B-Device是否支持ADP/HNP/SRP 標(biāo)準(zhǔn)設(shè)備特性,通過SetFeature()設(shè)置。 b_hnp_enable?
設(shè)置此特性,顯示B-Device被允許進(jìn)行HNP,A設(shè)備必須在T(HOST_REQ_SUSP)時(shí)間內(nèi)掛起總線,此特性在session結(jié)束時(shí)清除。 a_hnp_support 早期OTG版本的兼容特性,設(shè)置這個(gè)特性指示B-Device對端的A-Device支持HNP。 a_alt_hnp_support?
該標(biāo)志已被廢棄 5.連接方式(Host -> Device) As Host Only?與 僅作為外設(shè)的B-device(帶A插頭型) Host端檢測到A插頭插入,停止ADP,打開VBus,因?yàn)锽-Device的A插頭與設(shè)備作為一體,此時(shí)B-Device必定與A插頭連接,Host檢測到外設(shè)連接,開始枚舉。?
As Host Only 與 僅作為外設(shè)的B-device(A插頭為線纜連接) Host段檢測到A插頭插入,停止ADP,打開VBus,如果B-Device是線纜連接完畢在將A插頭插入則整個(gè)連接過程與上面無異,因?yàn)榇?時(shí)B-Device可能還沒有插入插頭,則設(shè)備連接超時(shí),VBus再次關(guān)閉,等待下一次ADP的改變(線纜連接完畢),再次打開VBus,此時(shí)開始正常總 線枚舉。 OTG Device 與 OTG Device Host端檢測到插頭插入,則打開VBus,如果沒有外設(shè)檢測到,則關(guān)閉VBus,打開ADP Probing,Device端檢測到插頭插入,則打開SRP,如果線纜沒有插入,則SRP超時(shí),Device端開始進(jìn)行ADP Probing,當(dāng)線纜連接完畢,Device端偵測到ADP變化,發(fā)送SRP請求Host打開VBus,Host回應(yīng)SRP并且打開VBus,完成設(shè)備連接。 6.案例分析: 有客戶反饋他們的樣機(jī)OTG mrio AB插座不能識(shí)別U盤,最后查出的原因是客戶樣機(jī)的USB的ID腳沒有接地, 樣機(jī)沒有切換到USB HOST模式。
總結(jié)
以上是生活随笔為你收集整理的USB OTG连接方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开怀大笑有助于使心中的郁闷情绪得到疏导
- 下一篇: CentOS 7 /etc/profil