linux usb驅動——USB OTG硬件設計


轉自 http://www.elecfans.com/dianlutu/dianyuandianlu/20100716220514.html

隨着PDA、移動電話、數碼相機、打印機等消費類產品的普及,用於這些設備與電腦,或設備與設備之間的高速數據傳輸技術越來越受到人們的關注,IEEE1394和USB是用於此類傳輸的兩個主要標准。這兩個標准都提供即插即用和熱插拔功能,都可以向外提供電源,也都支持多個設備的連接。其中IEE1394支持較高的數據傳輸速度,但相對比較復雜、價格較高,主要用於需要高速通信的AV產品;而最初的USB標准主要面向低速數據傳輸的應用,其中USB1.1支持1.5Mbps和12Mbps的傳輸速率,被廣泛用於傳輸速率要求不高的PC機外設,如:鍵盤、鼠標等。USB2.0標准的推出使USB的傳輸速度達到480Mbps。而USB OTG技術的推出則可實現沒有主機時設備與設備之間的數據傳輸。例如:數碼相機可以直接與打印機連接並打印照片,從而拓展了USB技術的應用范圍。圖1是USB技術的典型應用示意圖。

  1 主機通信協議與對話請求協議

  USB OTG標准在完全兼容USB2.0標准的基礎上,增添了電源管理(節省功耗)功能,它允許設備既可作為主機,也可作為外設操作(兩用OTG)。OTG兩用設備完全符合USB2.0標准,並可提供一定的主機檢測能力,支持主機通令協議(HNP)和對話請求協議(SRP)。在OTG中,初始主機設備稱為A設備,外設稱為B設備。可用電纜的連接方式來決定初始角色。圖2所示是用第5個ID腳確定默認主機的示意圖,兩用設備使用新型mini-AB插座,從而使mini-A插頭、mini-B插頭和mini-AB插座增添了第五個引腳(ID),以用於識別不同的電纜端點。mini-A插頭中的ID引腳接地,mini-B插頭中的ID引腳浮空。當OTG設備檢測到接地的ID引腳時,表示默認的是A設備(主機),而檢測到ID引腳浮這的設備則認為是B設備(外設)。系統一旦連接后,OTG的角色還可以更換。主機與外設采用新的HNP,A設備作為默認主機半提供VBUS電源,並在檢測到有設備連接時復位總線、枚舉並配置B設備。OTG標准為USB增添的第二個新協議稱為對話請求協議(SRP)。SRP允許B設備請求A設備打開VBUS電源並啟動一次對話。一次OTG對話可通過A設備提供VBUS電源的時間來確定(注:A設備總是為VBUS供電,即使作為外設)。也可通過A設備關閉VBUS電源來結束一閃會話以節省功耗,這在電池供電產品中是非常重要的。例如,在兩台蜂窩電話通過連接互相交換信息時,一台連接在電費的mini-A端,是A設備,默認為主機。另一台是B設備,默認為外設。當在不需要USB通信時,A設備可以關閉VBUS線,此時B設備就會檢測到該狀態並進入功低耗模式。

2 OTG功能的構建

  圖3所示電路給出了構建OTG功能時需要在基礎USB外設上添加的電路,電路中的通用串行總線控制器可以是一個微處理器和USB SIE(串口引擎),也可以是集成的μP/USB芯片或與USB收發器相連的ASIC。為總線提供電源的外部設備需要一路3.3V穩壓輸出供電電壓,以便為邏輯電路和連接在D+、D-引腳的1500Ω電阻提供電源。通過D+、D-引腳上的上拉電阻可向主機發出設備已連接的信號,並指示設備的工作速度。電阻上拉至D+表示全速運行,電阻上拉至D-表示低速運行。其它端點(包括D+和D-的15kΩ下拉電阻)用於檢測上拉電阻的狀態。由於USB設計需要提供熱插拔功能。因此,其ESD保護電路主要用於為D+、D-和VBUS引腳提供保護。

  為了增加OTG的兩用功能,必須擴充收發器功能來使OTG設備既可作為主機使用,也可以作為外設使用。而要實現上述功能,就需要在圖3所示電路中添加D+和D-端的15kΩ下拉電阻並為VBUS提供供電電源。此外,收發器還需要具備以下三個條件:

  (1)可切換D+/D-線上的上拉和下拉電阻,以提供外設和主機功能。

  (2)作為A設備時,需要具有VBUS監視和供電電路;作為B設備初始化SRP時,需要監視和觸發VBUS。

  (3)具有ID輸入引腳。

USB OTG設計

  作為兩用OTG設備,ASIC、DSP或其它與收發器連接的電路必須具備充當外設和主機的功能,並應按照HNP協議轉換其角色。

  收發器所需添加的大多數電路用於VBUS引腳的管理。作為主機,它必須能夠提供5V、輸出電流可達8mA的電源。圖3中的模擬開關用於配置收發器的各種功能。

  ASIC和控制器還必須包含USB主機邏輯控制功能,包括發送SOF(幀啟動)包、發送配置u36755輸入u36755輸出數據包,在USB 1 msec幀內確定傳輸進程、發送USB復位信號、提供USB電源管理等。

 

USB OTG設計

  3 Maxim要提供的USB OTG方案

  MAX3301E是Maxim公司研制的一款USB OTG收發器,該器件集成有電荷泵,可將PDA、蜂窩電話和數碼相機等移動設備與USB外設直接連接而無需PC機的參與。采用MAX3301E和一個嵌入式USB主機,就可直接將諸如打印機或外部硬盤驅動器這樣的外設連接。MAX3301E內部包括USB OTG收發器、UBUS電荷泵、線性穩壓器和I2C 2線串行接口。內部電平轉換器使MAX3301E能夠與采用+1.65至+3.6V邏輯電源電壓的器件連接。MAX3301E中的電荷泵工作在+3V至+4.5V輸入電源下,可產生符合OTG要求的VBUS輸出,且輸出電流大於8mA。該器件可利用內部比較器控制並測量VBUS,同時支持USB OTG SRP和HNP,其典型應用電路如圖4所示。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM