久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 第一篇 USB基礎知識 [打印本頁]

作者: weiguopai123    時間: 2020-7-31 15:31
標題: 第一篇 USB基礎知識
本帖最后由 weiguopai123 于 2020-7-31 15:43 編輯

一、基礎知識

1.USB
        USB:UniversalSerial Bus,中文譯為“通用串行總線”,USB設備最顯著的優點是具有熱插拔功能、傳輸速率快。USB是主從結構的系統,具有主機和設備這兩個角色,即Host和Device。此外,還有兩類特殊的USB設備,分別是USB集線器設備(USB Hub)和USB OTG設備。
        USB協議版本有:USB1.0、USB1.、USB2.0、USB3.0。USB1.0和USB1.1只有低速模式(Low-SpeedMode)和全速模式(Full-Speed Mode),理論上最大傳輸速率分別為1.5Mbps和12Mbps。USB2.0引入了傳輸速度更快的高速模式(High-Speed Mode),理論上最大傳輸速率為480Mbps。而USB3.0在速度的提升上,實現了重大飛躍,最大傳輸速率理論值高達5Gbps。需要注意的是,這些都是理論值,實際開發過程中,不可能達到這些理論值。      
        在實際開發過程中,不同的傳輸類型有不同的傳輸速率,每一次的數據交互,都是一個相當復雜的過程,有令牌包的解析、數據包的傳輸、握手包的發送等等,這些都是額外的消耗,因此,傳輸速度是不可能達到理論值。USB有四種傳輸類型,分別是控制傳輸、中斷傳輸、塊傳輸、等時傳輸。
        先學習Device開發,再研究Host的實現。

2.USB的電氣特性
USB使用差分傳輸模式,有兩條數據線,分別是:
  
1USB數據正信號線,USB Data Positive,即USBDP線,簡寫為D+
  
2USB數據負信號線,USB Data Minus,即USBDM線,簡寫為D-

剩下的就是電源線(5V-Vbus)和地線(GND)。對于USB OTG設備,會多出一根ID線。

3.USB主機端硬件控制器類型
分別有:OHCI  UHCI  EHCI XHCIUSB協議版本:1.0/ 1.1/ 2.0/ 3.0
與協議規定標準接口的對應OHCI、UHCI都是USB1.1的接口標準;而EHCI是對應USB2.0的接口標準;最新的xHCI是USB3.0的接口標準。

3.1 OHCI
        OHCI:Open Host Controller Interface,是USB1.1的標準,不僅僅是針對USB,還支持其他的接口,比如支持Apple的火線(Firewire,IEEE 1394)接口。與UHCI相比,OHCI的硬件復雜,硬件做的事情更多,所以實現對應的軟件驅動的任務,就相對較簡單。主要用于非x86的USB,如擴展卡、嵌入式開發板的USB主控。

3.2 UHCI
        UHCI:Universal Host ControllerInterface,是Intel主導的對USB1.0、1.1的接口標準,與OHCI不兼容。UHCI的軟件驅動的任務重,需要做得比較復雜,但可以使用較便宜、較簡單的硬件的USB控制器。Intel和VIA使用UHCI,而其余的硬件提供商使用OHCI。

3.3 EHCI
        EHCI:Enhanced Host Controller Interface,是Intel主導的USB2.0的接口標準。EHCI僅提供USB2.0的高速功能,而依靠UHCI或OHCI來提供對全速(full-speed)或低速(low-speed)設備的支持。

3.4 xHCI
        xHCI:eXtensible Host ControllerInterface,是最新USB3.0的接口標準,它在速度、節能、虛擬化等方面都比前面3中有了較大的提高。xHCI支持所有種類速度的USB設備(USB 3.0的 SuperSpeed; USB 2.0 Low-、Full-、andHigh-speed; USB 1.1 Low- and Full-speed)。xHCI的目的是為了替換前面3種類型(UHCI/OHCI/EHCI)。

4.識別設備的速度模式
        對于設備(Device)而言,按照速度來劃分,工作在低速模式下的設備稱之為低速設備;工作在全速模式下的設備稱之為全速設備;同理,工作在高速模式下的設備稱之為高速設備。
        對于主機(Host)而言,只有全速主機和高速主機兩種。

4.1識別低速和全速設備
         主機的D+D-都接有15K下拉電阻;全速USB設備的數據線D+接有1.5K的上拉電阻,一旦接入主機,主機的D+被拉高;低速USB設備的數據線D-接有1.5K的上拉電阻,一旦接入主機,主機的D-會被拉高。因此,主機就可以根據檢測到自己的D+為高還是D-為高,從而判斷接入的設備是一個全速還是低速設備。硬件結構圖如下:


圖:有USB低速設備接入



圖:有USB全速設備接入

4.2識別高速設備
         剛開始時,高速設備以全速模式連接到主機,D+有上拉電阻。主機檢測到全速設備連接上之后,對設備進行復位,USB設備收到復位信號,主動發起高速模式的握手協議進行速度識別。接下來,就取決于主機端了,如果主機的USB控制器支持高速模式傳輸,則主機會與該高速設備交互完成高速模式握手協議,之后,兩者都工作在高速模式下;如果主機不支持高速模式傳輸(如果主機上沒有EHCI類型的控制器,像比較老舊的電腦,并且是XP系統的),那么握手協議就會失敗,設備端也不會切換到高速模式,之后兩者都工作在全速模式下。
         如果是一個全速設備接到高速主機,設備端沒法發起高速握手協議,所以,最終設備和主機都會工作在全速模式下。主機具有多種控制器類型,能工作在全速/高速模式下。
        全速和高速控制器,都是DP上拉,低速才是DM上拉(配置寄存器的時候,需要注意的地方)。






作者: 今日-今時    時間: 2020-8-11 09:46
謝謝樓主的分享,原來是調整D+,D-電位來判斷傳送速度。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: v片网站| 国产午夜三级一区二区三 | 亚洲a视频 | 免费成人毛片 | 黄久久久 | 国产精品久久久久久久久久久久久久 | 国产农村妇女毛片精品久久麻豆 | 亚洲国产一区视频 | 91视频免费黄 | 一级黄色毛片免费 | 欧美日韩一区二区三区在线观看 | 亚洲激情综合 | 日韩国产在线 | 久久久123| 成人a视频在线观看 | 久久夜色精品国产 | 亚洲精品国产成人 | 国产欧美一区二区在线观看 | 亚洲有码转帖 | 国产91久久久久久久免费 | 日韩av美女电影 | 久久国内精品 | www国产成人免费观看视频,深夜成人网 | 亚洲欧美一区二区在线观看 | 午夜男人天堂 | 亚洲a毛片| 国产成人一区二区三区精 | 色约约视频 | 永久网站 | 狠狠干天天干 | 精品一区二区三区入口 | 国产精品久久久久久久久大全 | 日本欧美在线观看视频 | 国产精品123区 | 国产精品永久免费视频 | 中文字幕在线免费视频 | 一区二区三区回区在观看免费视频 | 日韩精品一区二区三区免费视频 | 亚洲国产成人精品女人久久久野战 | 日本亚洲精品成人欧美一区 | 老司机精品福利视频 |