usb協(xié)議簡介剖析_第1頁
usb協(xié)議簡介剖析_第2頁
usb協(xié)議簡介剖析_第3頁
usb協(xié)議簡介剖析_第4頁
usb協(xié)議簡介剖析_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、USB協(xié)議簡介USB枚舉USB,全稱是UniversalSerialBus(通用串行總線),它是在1994年底康柏、IBM、Misosoft等多家公司聯(lián)合制訂的USB1.1和USB2.0USB1.1是較為普遍的USB規(guī)范,其高速方式的傳輸速率為12Mbps,低速方式的傳輸速率為l.5Mbps(b是Bit的意思),lMB/s=8MBPS(兆位/秒),12Mbps=1.5MB/So當前,大部分MP3為此類接口類型。USB2.0規(guī)范是由USBL1規(guī)范演變而來的。它的傳輸速率達到了480Mbps,折算為MB為60MB/S,足以滿足大多數(shù)外設的速率要求。使用USB為打印機應用帶來的變化則是速度的大幅度提

2、升,USB接口提供了12Mbps的連接速度,相比并I速度提高達到10倍以J在這個速度之卜打印文件傳輸時間大大縮減。USB2.0標準進一步將接口速度提高到480Mbps,是普通USB速度的20倍,更大幅度降低了打印文件的傳輸時間。USB系統(tǒng)的核心是HostUSB為了支持多個設備互相,而不需要另外接Host,比如個數(shù)碼相機和一個打印機,希望把打印機和數(shù)碼相機直接相連接,然后就可以實現(xiàn)通過USB,把數(shù)據(jù)從數(shù)碼相機傳送到打印機中,打印機就可以打印了。0TG引入了個新的概念,HNP(HostNegotiationProtocol),主機協(xié)商協(xié)議,允許兩個設備之間互相協(xié)商誰去當Host©不過,即

3、使在0TG中,也只是同時刻,只存在單個的Host,而不允許存在多個Host的。標準USB,Mini-USB接口定義USB是一種常用的PC接口,只有4根線,兩根電源兩根信號,需要注意的是干萬不要把正負極弄反了,否則會燒掉USB設備或者電腦的南橋芯片!a型us,接口(公口)型us接口(對口)USB弓唧定義:型us按口(公口)Pin 2PinPin 4型ush接口(母口)31琳解備注1VBus紅電源由2Data-白數(shù)船LData!轆+4GND黑_£_普通PC端USB設備的接口型 Nini II!;接口(公口)b型 w” 1f按口(公口)其中ID腳在OTG功能中才 使用。由于Mini-USB

4、接口 分Mini-A、R和AR接口。如果你的系統(tǒng)僅僅是用做 Slave,那么就使用B妾口。Pin 1Pin 5ini-QSB接口(母口)通用Mini-USB引腳定義:系統(tǒng)控制器會判斷ID腳的 電平判斷是什么樣的設備 插入,如果是高電平,則 是B接頭插入,此時系統(tǒng) 就做主模式(master mode) 如果ID為低,則是A接口插 入,然后系統(tǒng)就會使用 HNP對話協(xié)議來決定咖個 做Master,哪個做Slave。引腳功能顏色備注1V Bus紅電源正5 V2Dat a-白數(shù)據(jù)-3Data+綠鞅據(jù)+4IDA型:與地相連B型:不接地(空)5GND黑數(shù)碼相機,移動硬盤等移動設備Micro 用口Micro

5、AMicro BMicro USBMicro USB是儂標準的一 個便攜版本,化當前部分手機 使用的Mini USB接口也小, Micro-USB 是 Mini-USB 的下一 代規(guī)格,由USB標準化組織美 國USB Implementers Forum 飛SB-IF)于2007年1月41T制 定完成。(A型插頭)(B型插頭)(B型)USB母口(A型插座) LSB公口(A型插頭)從左往右依次為:miniUSB公口(A型插頭)、miniUSB公口(B型插頭)、USB公口(B型)、USB母口(A型插座)、USB公口(A型插頭)USB描述符 標準的描述符有5種,USB為這些描述符定義了編號: 1一一

6、設備描述符 2一一配置描述符 3一一字符描述符 4接口描述符 5一一端點描述符設備描述符一個設備只仃一個設備描述符,而一個設備描述符可以包含多個配置描述符,向一個配置描述符可以包含多個接口描述符,一個接口使用了幾個端點,就有幾個端點描述符。這間描述符是用一定的字段構成的,分別如卜說明;設備描述符struct_DEVICE_DEscriptOR_STRUCT(BYTEbLength:設備描述符的字節(jié)數(shù)大小,為0x12BYTEbDescriptof»pe;描述符類型編號,為0x01WORDbcdUSB;/USB版本號BYTEbDeviceClass;USB分配的設備類代碼,OxOJOxf

7、e為標準設得類,Oxflf為廠商自定義類型0x00不是在設備描述符中定義的,如HIDBYTEbDeviceSubClass;u$b分配的子類代碼,同上,值由USB規(guī)定和分配的BYTEbDeviceProtocI;USB分配的設備協(xié)議代碼,同上BYTEbMaxPackctSizcO;端點0的最大包的大小WORDidVcndor;廠商編號WORDidProduct;產(chǎn)品編號WORDbcdDcvicc;設備出廠編號BYTEiManufacturer;描述廠商字符串的索引BYTEiProduct;描述產(chǎn)品字符串的索引BYTEiSerialNumber;描述設備序列號字符串的索引BYTEbNumConf

8、iguralion;可能的配置數(shù)M表USB設備描述符的結構偏移狀域大小值描述0bLength1數(shù)字此描述表的字節(jié)數(shù)1bDecriptorType1常量描述符的類型(此處應為0x01,即設備描述符)2bcdUSB2BCD碼此設備。描述表兼容的USB設備說明版本號(BCD碼)4bDeviceClass1類設備類碼:如果此域的值為。則一個設置卜每個接口指出它自己的類,各個接口各自獨立工作。如果此域的傷處TFEH之間,則設備在不同的接口上支持不同的類。并這些接口可能不能獨立工作。此值指出了這些接口集體的類定義。如果此域設為FFH,則此設備的類由廠商定義。5bDeviceSubClass1了類r類挖碼這

9、些碼值的JI體含義根據(jù)bDeviceClass域來億如bDeviceClass域為零.此域也須為零如bDeviceClass域為FFH.此域的所仃值保留。6bDevicePortocol1協(xié)議協(xié)議碼這些64的值彳見bDeviceClass和bDeviceSubClass的"ufu定.如果設備支持設備類相關的協(xié)議,此碼標志r設備類的值.如果此域的值為零.則此設備不支持設備類相關的協(xié)議,然而,可能它的接口支持設備類相關的協(xié)議如果此域的值為FFH,此設備使用廠商定義的協(xié)議。7bMaxPacketSizeO1數(shù)字端點。的最大包大小(僅8,16,32,64為合法值)8idVendor2ID廠商

10、標志(由USB-IF組織賦值)bDescriptorType為描述符的類型.,其含義可杳卜表(此友也適用卜標準命令Get_Descriptor中wValue域高字節(jié)的取值含義):表USB描述符的類型值類型描述符描述符值標準描述符設備描述符(DeviceDescriptor)0x01配置描述符(ConfigurationDescriptor)0x02字符串描述符(StringDescriptor)0x03接口描述符(InterfaceDescriptor)0x04端點描述符<EndPontDescriptor)0x05類描述符維線器類描述符(HubDescriptor)0x29人機接口類描

11、述符(HID)0x21廣商定義的描述符OxFFUSB的設備類型(deviceclass)表USBClass表BaseClassDescriptorUsageDescriptionOOh.DeviceUseclassinformationintheInterfaceDescriptors種類信息定義在接口描述符中OlhInterfaceAudio音頻設備02hBothCommunicationsandCDCControl通信設備(手機,Class_02&SubClass_02&Prot_01)03hInterfaceHID(HumanInterfaceDevice)人機接口設備0

12、5hInterfacePhysical物理設備06hInterfaceImage圖像設備(可能是IPhone手機,Class_06&SubClass_01&Prot_01)07hInterfacePrinter打印機08hInterfaceMassStorage大容量存儲(可能是手機,Class08&SubClass06&Prot50)OMMB09hDeviceHub集線器OAhInterfaceCDC-Data通信設備(手機,ClassOA&SubClassOO&Prot00)OBhInterfaceSmartCard智能kODhInterfa

13、ceContentSecurity內容安全設備OEhInterfaceVideo視頻設備(攝像頭,Class_0e&SubClass_03&Prot_00)orhInterfacePersonalHealthcare個人健康設備DChBothDiagnosticDevice診斷設備(USB2兼容設備)EOhInterfaceWirelessController無線控制器(藍牙設備等)EFhBothMiscellaneous雜項(ActiveSync,PalmSync,各種協(xié)會等)FEhInterfaceApplicationSpecific應用專有規(guī)范(固件升級,紅外,USB測

14、試與測量等)FFhBothVendorSpecific供應商自定義規(guī)范(手機,Class-FF&SubClass_FF&Prot.FF)為何會有這么多USB的Class分類?用單一的USB接口,取代之前種類繁多的各種其他接口。而為了取代其他各種接口,那意味著就要實現(xiàn),或者是支持,之前別的接口,所對應的各種功能。因此,USB協(xié)議設計的時候,就是要把鼠標,鍵盤,大容量存儲,圖像等,這些之前是通過其他接口所實現(xiàn)的,各種的功能,都囊括進來。并旦在協(xié)議中有對應的規(guī)范定義,支持這些功能。因此,才有了如此多的各種USB的Clas,即分類,根據(jù)功能而分出的各種類別。不同的Class分類,用于實

15、現(xiàn)對應的功能,適用于相應的設備。配置描述符struct_CONFIGURATION_DEscriptOR_STRUCT(BYTEbLength;設備描述符的字節(jié)數(shù)大小BYTEbDescriptorType;描述符類型編號WORDwTotalLength;配置所返回的所有數(shù)量的大小BYTEbNumlnterface;此配置所支持的接口數(shù)量BYTEbConfigurationVale;Set_Configuration命令需要的參數(shù)值一BYTEiconfiguration;描述該配置的字符串的索引值BYTEbmAttribute;供電模式的選擇BYTEMaxPower;設備從總線提取的最大電流字符

16、描述符struct_STRING_DEscript0R_STRUCT(BYTEbLength;設備描述符的字節(jié)數(shù)大小BYTEbDescriptorType;描述符類型編號BYTESomeDescriptor36;/UNICODE編碼的字符串)接口描述符struct_INTERFACE_DEscriptOR_STRUCT(BYTEbLength;設備描述符的字節(jié)數(shù)大小BYTEbDescriptorType;描述符類型編號BYTEblnterfaceNunber;接口的編號BYTEbAlternateSetting;備用的接口描述符編弓BYTEbNumEndpoints;該接口使用端點數(shù),不包括端

17、點0BYTEblnterfaceClass;接口類型BYTEblnterfaceSubClass;接口子類型BYTEblnterfaceProtocol;接口所遵循的協(xié)議BYTE.Interface;描述該接口的字符串索引值端點描述符struct_ENDPOIN_DEscriptOR_STRUCT(BYTEbLength;設備描述符的字節(jié)數(shù)大小,為0x07BYTEbDescriptorType;描述符類型編號,為0x05BYTEbEndpointAddress;端點地址及輸入輸出屬性.BYTEbmAttribute;端點的傳輸類型屬性0x02WORDwMaxPacketSize;端點收、發(fā)的最

18、大包的大小BYTEbIntervaI;主機查詢端點的時間間隔)枚舉過程USB的枚舉過程分為4個狀態(tài).1 .接入態(tài)。主機檢測到USB設備插上,擊活端口,并發(fā)送復位命令(保持10ms)2 .默忒態(tài) :主機使用默認地址讀取設備描述符(GET_DESCRIPTOR)。主機分配給設備一個總在線的唯一地址(SET_ADDRESS)3.地址態(tài) :主燈L從新的地1止獲取設備描(GET_FULL_DEV_DESC) 主機獲取所有設備的配置描述符(占ET_CFG_6kSC)4.配置態(tài):生機密置描述符(設備,配置)(GET_FULL_CFG_DESC)。主機讀取配置狀態(tài)(可選)(get_c6nfi或jraYRdn)

19、。主機讀取接口狀態(tài)(可選)(GETJNTERFACE)USB傳輸方式在U5B規(guī)范中規(guī)定了四種不同的數(shù)據(jù)傳輸方式:1、等時傳輸方式(Isochronous)該方式用來聯(lián)接需要連續(xù)傳輸數(shù)據(jù),II對數(shù)據(jù)的正確性要求不高而對時間極為敏感的外部設備,如麥克風、嗽叭以及電話等。等時傳輸方式以固定的傳輸速率,連續(xù)不斷地在主機與USB設備之間傳輸數(shù)據(jù),在傳送數(shù)據(jù)發(fā)生錯誤時,USB并不處理這些錯誤,而是繼續(xù)傳送新的數(shù)據(jù)。2、中斷傳輸方式(Interrupt)該方式傳送的數(shù)據(jù)量很小,但這些數(shù)據(jù)需要及時處理,以達到實時效果,此方式主要用在鍵盤、鼠標以及操縱桿等設備上。3、控制傳輸方式(Control)該方式用來處理

20、主機到USB設備的數(shù)據(jù)傳輸。包括設備控制指令、設備狀態(tài)杳詢及確認命令。當USB設備收到這些數(shù)據(jù)和命令后,將依據(jù)先進先出的原則處理到達的數(shù)據(jù)。4、批(Bulk)傳輸方式該方式用來傳輸要求正確無誤的數(shù)據(jù)。通常打印機、掃描儀和數(shù)字相機以這種方式與生機聯(lián)接USB抓包工具bushoundQoptureSettingsDevices tjelp ExitClick in the chedc box to select a device:骨(0) lntel(R) 7 ScricB/CZ I 6 CViipsct Fumily 4 port Seriul ATA Sturugc Cuiitrullcr 1

21、E00 骨(2)主要IDE曲道 一次要IDE通道 U (1J lntel(H) / Seriee/CZl 6 Ctiipset Family 2 port Serial AI A Sturaye Controller 1EO8骨主要IOE泡道官(5)次要 IDE ifflijt . (6) ST9500/I23AS,. (7) Ifitel(R) 7 Serieu/C21 6 Chipuet Family USB Enhanced Ho»t Controller - 1 E2D口行(1 P) usn Root Huh(1 5) Generic USB Hub,.(IAllnrn U

22、S13-01 n nt err,(33| I KD Sending Card(6) Intel(R) 7 Serieu/CZ 1 6 Chipset 尸USB Enliancrd Host Controller - 1EZ6(1 3) USB Root HubL - . R7) Generic USR Hub;28 USB人體學愉入我備、|?9) ftIID-complinnt matis«R二(<i)fi 印AL端 口 (LPrij (Id) Printer Port Logical InterfaceL Auto salact hot plugged davicas Pro

23、pertiesEnclpoxt 0 :EdpoiTit 1 OUT:Endpoint 1 INHord“oru IDDoto Rood: m 1 n iTyj>e-CTI.Classr* ffSxih>C laas- 00Px-otocol -00MaxPocket - 8TvT>e-BUI.kfSxifeC 1»as-00Protocol -00MaxrPaickct -40Tv pc-BULKCl«9S£S:-ffSutjC Icasrx:- 00Fx-otocol -00MaxF4»cke-1 -40USBSVid_0 4 8 3

24、&«F±d_5 7106xR=v 0200 180 bytD= 57KB 門二一主機笫次發(fā)出請求描述符命令,數(shù)據(jù)流為:8006000200000900,bRequest的值為0x06,代表Get_Descriptor命令,但為什么描述符呢?wValue的高字'。表示T描述符的類型,此處wValue的值為0x0100.所以高字節(jié)為0x01,設備返回的數(shù)據(jù)為:120100020000004083041057000201020301,第,個字節(jié)bLenght的值為0x12,表示此描述符的長度。第二個字節(jié)bDecriptorType的值為0x01,代表設備描述符。b

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論