USB是通用串行總線(Universal Serial Bus),分為HOST/DEVICE兩個角色,所有的數據傳輸都由主機主動發起,而設備隻是被動的負責應答。例如,在讀數據時,USB先發出讀命令,設備收到該命令後,才返回數據。比如我們的PC跟鼠标通訊,我們的PC是作為USB host角色,鼠标是作為USB device角色來工作。
2.USB接口種類介紹目前我知道的有幾種USB種類:type-A,type-B,type-C,MINI USB,macro usb,apple lightning,分别如下圖:
USB Type A:該标準一般适用于個人電腦PC中,是應用于最廣泛的接口标準
USB Type B:一般用于3.5寸移動硬盤、以及打印機、顯示器等連接
USB Type C:USB Type C這個接口名稱是在USB 3.1時代之後出現的,該接口的亮點在于更加纖薄的設計、更快的傳輸速度(最高10Gbps)以及更強悍的電力傳輸(最高100W)。Type-C雙面可插接口最大的特點是支持USB接口雙面插入,主要面向更輕薄、更纖細的設備(未來可能統一手機平闆的接口,取代Micro USB接口)。
總結說來USB Type-C具有以下特點:
1) 最大數據傳輸速度達到10Gbit/秒,也是USB 3.1的标準;
2) Type-C接口插座端的尺寸約為8.3mm×2.5mm纖薄設計;
3) 支持從正反兩面均可插入的“正反插”功能,可承受1萬次反複插拔;
4) 配備Type-C連接器的标準規格連接線可通過3A電流,同時還支持超出現有USB供電能力的“USB PD”,可以提供最大100W 的電力。
一般用于數碼相機、數碼攝像機、測量儀器以及移動硬盤等移動設備
在USB2.0時代,Micro USB口出現了,這是USB 2.0标準的一個便攜版本,Mini USB的下一代規格,比早期部分手機使用的Mini USB接口更小。這種接口是我們最常見的接口,我們手機的充電接口就是Micro USB接口。
蘋果的自研發USB接口,但是聽說蘋果要轉戰TYPE-C
一般的USB,比如type a,typa b都有4根線
其中D ,D-是傳輸數據使用,但是像MINI USB,MACRO USB會多出一跟ID線,用于OTG
像typc-C,apple lightning接口,引腳很多,我們不列舉了
3.USB設備的插入檢測和速度檢測
在USB設備插到USB 主機的時候,主機會通過上拉電阻去檢測插入的是什麼設備,一般采用1.5K的上拉電阻,在USB設備端上拉電阻接到D 的時候,那麼此設備就是高速或者全速設備,在1.5K的上拉電阻接到D-的時候,那麼此設備就是低俗設備,那我們的闆子是接到D ,所以在插入到USB主機的時候,我們的闆子告訴主機我們是高速或者全速設備。
二. USB枚舉過程
再說枚舉詳細過過程之前,我們先來普及下descriptor的知識
一個設備有且隻有一個device descriptor,有1個或者多個configuration descriptor,每個configuration descriptor下面有1個或者多個interface descriptor,每個interface descriptor下面有1個或者多個endpoint descriptor.
1.獲取descriptor的封包格式圖片來源USB2.0 9.3
2.Get device descriptor request & response分析2.1 Get device request的格式
對應的usb封包如下:
2.2 Get device descriptor response
格式如下:
usb封包如下:
3.Get configure descriptor request & response分析3.1 Get configure descriptor req的格式
usb抓包如下:
3.2 Get configure descriptor response的格式
抓包如下:
3.3 interface的格式
usb的封包的如下:
3.4 endpoint的格式
抓包如下:
三.傳輸類型
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!