關鍵詞:OTG;DRD;HNP;SRP;A-Device;B-Device;ESD
1 引言
隨著USB2.0版本的發(fā)布,USB越來越流行,已經(jīng)成為一種標準接口。現(xiàn)在,USB支持三種傳輸速率:低速(1.5 Mb/s)、全速(12 Mb/s)和高速(480 Mb/s),四種傳輸類型:塊傳輸、同步傳輸、中斷傳輸和控制傳輸。USB應用靈活方便,能滿足多種外設的需要。隨著個人便攜式電子產(chǎn)品的增長和嵌入式技術的飛速發(fā)展,USB主機已不再局限于單純的PC,可以是含有USB主控器的任何設備,如PDA、MP3播放器等。在USB2.O規(guī)范中也增加了USB嵌入式設備的標準——On-The-Go(OTG),它使外設可以在主機和設備之間相互切換,即當其連接至PC時,它是1個USB設備,而與其他USB設備相連接時,它便作為USB主機。
2 USB OTG
2.1 USB OTG簡介
DSB OTG是USB2.O版本的補充,并不是獨立的標準,它保留了USB2.0的所有特點。OTG使2個USB外設在脫離PC的情況下可以直接通信。為了實現(xiàn)這種功能,在OTG中有一個新的概念——雙功能設備(DRD:Dual-Role Device)。1個DRD能滿足下列特征:
●具有一定的USB主機能力和提供1個外設列表;
●作為外設時能夠實現(xiàn)全速操作(或高速操作);
●作為主控機時能支持全速操作(低速或高速)
●支持主機協(xié)商協(xié)議(HNP)和會話請求協(xié)議(SRP);
●僅有1個微型AB連接端口;
●能夠向電源總線提供不小于8 mA的電流。
要實現(xiàn)主機功能,主機必須存儲大量的設備驅動程序,并且向電源總線提供一定的電流。對于嵌入式USB主機來說,提供大量的設備驅動程序是不現(xiàn)實的也沒有必要,1個嵌入式USB主機只需支持部分特定設備,這些設備就是它的外設列表。
2.2 主機協(xié)商協(xié)議(HNP)
在USB標準中,主機采用A型接口,稱為A類設備(A-Device);外設采用B型接口,稱為B類設備(B-Device)。1個DRD既可以作為主機,也可以作為外設。那么,當2個DRD互連時,哪個設備作為主機,為什么要作為主機?為了解決這兩個問題,在OTG中提出了新的協(xié)議——主機協(xié)商協(xié)議(HNP)。在OTG中還定義了一種新的接口——微型AB插座(mini-AB receptacle)以及微型A插頭(mi-ni-A plug)和微型B插頭(mini-B plug)。在微型AB插座、微型A插頭和微型B插頭中增加了1個引腳——ID引腳,如圖l所示。
在微型A插頭中,ID引腳接地,在微型B插頭中,ID引腳懸空。在OTG中,如果設備的ID引腳接地(即mini-A插頭連接的設備,如圖l右側的設備),則此設備默認為主機,否則為外設。同時,在設備連接使用過程中,通過主機協(xié)商協(xié)議,允許主機和外設功能互換。例如,假設圖1左邊的B-Device為1個手持PDA,右邊的A-Device為1個打印機。由于連接線的關系,打印機初始化為主機。但是打印機的驅動程序存在PDA中,這時需要PDA作為主機,打印機作為外設。通過HNP可以方便實現(xiàn)此功能,而不必拔下連接線調換插頭方向,重新連接打印機和PDA。
2.3 會話請求協(xié)議(SRP)
OTG收發(fā)器一般用在嵌入式設備中,這類設備普遍采用電池供電,對功耗要求很嚴。為了節(jié)省電源,在OTG標準中,當電源總線沒有使用時,允許A類設備掛起電源總線。當1個B類設備要工作時,它必須通過某種方法通知A類設備向電源總線供電。為了實現(xiàn)這一功能,在OTG中提出了會話請求協(xié)議(SRP)。在OTG中,1個會話定義為A類設備向電源總線VBUS有效供電的時間。需要注意的是,在OTG中電源一直都是由A類設備(連接mini-Aplug的DRD)提供的。由于主機協(xié)商協(xié)議,A類設備也可能作為外設使用,此時,電源也必須由A類設備提供。當A類設備掛起VBUS后,B類設備進入休眠狀態(tài)。當B類設備需要再次工作時,它可以通過向數(shù)據(jù)線發(fā)送1個脈沖信號(Data-line Pulsing)或向電源總線發(fā)送一個脈沖信號(VBUS Pulsing)來請求A類設備向電源總線供電。OTG要求無論是DRD設備還是普通的B類設備,都必須具有發(fā)送會話請求的功能;同時,普通的A類設備或者DRD設備都必須能夠響應1個會話請求。
3 MAX330lE的特點及工作原理
3.1 MAX3301E的特點
目前,很多公司都推出了各自的OTG電路,如Cypress公司的SL8llHS、Philips公司的ISPll61、ISPl362等。下面主要介紹Maxim公司生產(chǎn)的MAX3301E。
MAX3301E是完全集成的USB On-The-Go(0TG)收發(fā)器與電荷泵,不需要PC主機就可以實現(xiàn)移動設備(如PDA、蜂窩電話與數(shù)碼相機等)之間及與USB外設的連接。使用MAX3301E的嵌入USB主機可以直接與打印機或外部硬件驅動器等設備連接。
MAX3301E集成了USB OTG收發(fā)器、VBUS電荷泵、線性穩(wěn)壓器及與I2C總線兼容的2線串行接口。內部電平轉換器使MAX3301E可以與+1.65 V~+3.6V邏輯接口。MAX3301E中OTG兼容的電荷泵可以在+3 V~+4.5 V輸入電壓下工作,輸出電流大于8mA時,可以在VBUS上提供OTG兼容的輸出。
MAX3301E使那些無法提供或容許USB OTG要求的+5 V VBUS電平的高集成度數(shù)字設備能夠實現(xiàn)USB OTG通信。利用內部比較器控制、測量VBUS,MAX3301E支持USB 0TG會話請求協(xié)議(SRP)和主機協(xié)商協(xié)議(HNP)。
MAX3301E內部為VBUS、ID_IN、D+和D-引腳提供了±15 kV靜電放電(ESD)保護。MAX3301E采用5 mmx5 mm芯片級(UCSP)和32引腳薄型QFN封裝(5 mmx5 mmx0.8 mm),工作溫度范圍為-40℃~+85℃。
3.2 MAX3301E的內部結構和工作原理
圖2示出MAX3301E的內部結構框圖,主要由下列模塊組成:ID檢測器、電荷泵、VBUS比較器、線性穩(wěn)壓器、上拉/下拉電阻器、CAR KIT中斷檢測器、收發(fā)器、串行控制模塊和電源模塊。
眾所周知,在普通的USB外設電路中,通過1個連接在D+或者D-的上拉電阻器(通常為15 kΩ)來告知主機1個外設的接入和指示需要的操作速度——如果上拉電阻器連接在D+上,表示全速操作;連接在D-上,則表示低速操作。在USB主控電路或集線器電路中,通過連接在D+和D-上的下拉電阻器(通常為15 kΩ)表示該電路為USB主控電路或集線器電路。從圖3中可以看到,在MAX3301E數(shù)據(jù)線D+和D-上都設計了上拉和下拉電阻器轉換開關,這樣就可實現(xiàn)外設和主機功能之間的轉換,同時也可實現(xiàn)全速或低速操作選擇。
如圖4所示,當MAX3301E作為A-Device時,電荷泵向3.3 V穩(wěn)壓器和VBUS提供電源(5 V,8mA);當MAX3301E作為B-Device時,穩(wěn)壓器的電源也可以設置為由VBUS提供。VBUS比較器負責監(jiān)控VBUS上的電壓,右邊的電阻器轉換開關VBUS提供脈沖信號。
4 典型應用電路
圖5所示是MAX3301E的典型應用電路。
圖中,VCC是MAX3301E的工作電壓,范圍為+3.3 V~+4.5 V。VL是系統(tǒng)側邏輯電源輸入,連接到系統(tǒng)的邏輯電平,范圍為+1.65 V~+3.6 V。此電平設置邏輯輸出的最大電平和邏輯輸入的門限。
VBUS、D+、D-、ID_IN、GND組成USB OTG的連接口,需要注意的是,根據(jù)USBOTG的規(guī)定,VBUS總線上所有的濾波電容之和必須限定在1μF~6.5μF。
SPD是速度選擇器輸入。將SPD連接至GND選擇低數(shù)據(jù)速率(1.5 Mb/s)。將SPD連接至VL則選擇全速數(shù)據(jù)速率(12 Mb/s)。同時也可以修改MAX3301E內部的寄存器,關閉SPD的功能。SPD被關閉后,DAT_VP/SE0_VM的速率將由相應的寄存器值給定。
OE/INT控制DAT_VP/SE0_VM和D+/D-的輸入或輸出狀態(tài)。當OE/INT為邏輯O時,設備為發(fā)送模式,待發(fā)送的數(shù)據(jù)由DAT_VP/SE0_VM進入MAX3301E,然后通過D+/D-發(fā)送出去。當OE/INT為邏輯1時,設備處于接收模式,MAX3301E從D+/D-接收數(shù)據(jù),然后再通過DAT_VP/SEO_VM傳送給控制器。在掛起模式下(SUS=“1”),可以控制OE/INT使其成為中斷輸出,它檢測的中斷源與INT相同。
5 結束語
隨著USB的發(fā)展,USB接口已經(jīng)成為各種電子產(chǎn)品的標準接口。傳統(tǒng)的PC到外設的USB通信方式已經(jīng)不能滿足人們的需要,迫切需要脫離PC的控制,直接實現(xiàn)設備之間的USB連接。由于這種需要,OTG標準應運而產(chǎn)生。隨著各大器件和設備制造商對OTG的支持,目前各種具有OTG功能的收發(fā)器和電子產(chǎn)品已經(jīng)走向市場。比如PDA可以通過USB接口連接手機實現(xiàn)無線上網(wǎng)。數(shù)碼相機或數(shù)碼伴侶可以通過USB接口直接控制打印機打印照片。如果在野外拍攝,數(shù)碼相機也可以通過USB接口連接手機實現(xiàn)無線上網(wǎng),把照片發(fā)進到電腦或者其他服務器上。