1 引言
隨著USB2.0版本號的公布,USB越來越流行,已經成為一種標準接口。如今,USB支持三種傳輸速率:低速(1.5Mb/s)、全速(12Mb/s)和快速(480Mb/s),四種傳輸類型:塊傳輸、同步傳輸、中斷傳輸和控制傳輸。USB應用靈活方便,能滿足多種外設的須要。隨著個人便攜式電子產品的增長和嵌入式技術的飛速發展,USB主機已不再局限于單純的PC,能夠是含有USB主控器的不論什么設備,如PDA、MP3播放器等。在USB2.O規范中也添加了USB嵌入式設備的標準——On-The-Go(OTG),它使外設能夠在主機和設備之間相互切換,即當其連接至PC時,它是1個USB設備,而與其它USB設備相連接時,它便作為USB主機。
2 USB OTG
2.1 USB OTG簡單介紹
DSBOTG是USB2.O版本號的補充,并非獨立的標準,它保留了USB2.0的全部特點。OTG使2個USB外設在脫離PC的情況下能夠直接通信。為了實現這樣的功能,在OTG中有一個新的概念——雙功能設備(DRD:Dual-RoleDevice)。1個DRD能滿足下列特征:
●具有一定的USB主機能力和提供1個外設列表;
●作為外設時可以實現全速操作(或快速操作);
●作為主控機時能支持全速操作(低速或快速)
●支持主機協商協議(HNP)和會話請求協議(SRP);
●僅有1個微型AB連接port;
●可以向電源總線提供不小于8mA的電流。
要實現主機功能,主機必須存儲大量的設備驅動程序,而且向電源總線提供一定的電流。對于嵌入式USB主機來說,提供大量的設備驅動程序是不現實的也沒有必要,1個嵌入式USB主機僅僅需支持部分特定設備,這些設備就是它的外設列表。
2.2 主機協商協議(HNP)
在USB標準中,主機採用A型接口,稱為A類設備(A-Device);外設採用B型接口,稱為B類設備(B-Device)。1個DRD既能夠作為主機,也能夠作為外設。那么,當2個DRD互連時,哪個設備作為主機,為什么要作為主機?為了解決這兩個問題,在OTG中提出了新的協議——主機協商協議(HNP)。在OTG中還定義了一種新的接口——微型AB插座(mini-ABreceptacle)以及微型A插頭(mi-ni-Aplug)和微型B插頭(mini-Bplug)。在微型AB插座、微型A插頭和微型B插頭中添加了1個引腳——ID引腳,如圖l所看到的。
在微型A插頭中,ID引腳接地,在微型B插頭中,ID引腳懸空。在OTG中,如果設備的ID引腳接地(即mini-A插頭連接的設備,如圖l右側的設備),則此設備默覺得主機,否則為外設。同一時候,在設備連接使用過程中,通過主機協商協議,同意主機和外設功能互換。比如,如果圖1左邊的B-Device為1個手持PDA,右邊的A-Device為1個打印機。因為連接線的關系,打印機初始化為主機。可是打印機的驅動程序存在PDA中,這時須要PDA作為主機,打印機作為外設。通過HNP能夠方便實現此功能,而不必拔下連接線調換插頭方向,又一次連接打印機和PDA。
2.3 會話請求協議(SRP)
OTG收發器一般用在嵌入式設備中,這類設備普遍採用電池供電,對功耗要求非常嚴。為了節省電源,在OTG標準中,當電源總線沒有使用時,同意A類設備掛起電源總線。當1個B類設備要工作時,它必須通過某種方法通知A類設備向電源總線供電。為了實現這一功能,在OTG中提出了會話請求協議(SRP)。在OTG中,1個會話定義為A類設備向電源總線VBUS有效供電的時間。須要注意的是,在OTG中電源一直都是由A類設備(連接mini-Aplug的DRD)提供的。因為主機協商協議,A類設備也可能作為外設使用,此時,電源也必須由A類設備提供。當A類設備掛起VBUS后,B類設備進入休眠狀態。當B類設備須要再次工作時,它可以通過向數據線發送1個脈沖信號(Data-linePulsing)或向電源總線發送一個脈沖信號(VBUSPulsing)來請求A類設備向電源總線供電。OTG要求不管是DRD設備還是普通的B類設備,都必須具有發送會話請求的功能;同一時候,普通的A類設備或者DRD設備都必須可以響應1個會話請求。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
