SylixOS USB總線原理淺析

1. USB總線的工做原理對象

1.1 USB總線的硬件接線接口

如圖 1.1和圖 1.2所示,USB接口只有4條線:VCC,GND,D-,D+。PC機的USB插孔的D-和D+數據線均鏈接15K歐姆的下拉電阻。而USB設備端的D-或D+數據線鏈接1.5K歐姆的上拉電阻。當設備插入PC機的時候,會將PC機的D-或D+端的電壓拉高,當PC機在D-或D+端檢測到高電平時,就知道有設備插入了。若是是PC機D-端被拉高,接入的則是USB低速設備;若是是PC機D+端被拉高,接入的則是USB全速或高速設備。文檔

                          

圖 1.1 USB全速(高速)設備硬件接線圖原理

                            

圖 1.2 USB低速設備硬件接線圖硬件

1.2 USB設備獲取設備信息過程請求

如圖 1.3所示,當PC機檢測到有USB設備插入後,會主動向設備發送命令包,請求設備的設備信息。設備必須向PC機回覆設備的信息(以描述符形式)。程序

                                                   

圖 1.3 USB設備獲取設備信息過程im

2. USB總線的一些概念通信

USB結構類型是主從結構。全部的USB傳輸,都是從USB主機方發起。例如:USB鼠標滑動一下馬上產生數據,可是它沒有能力通知PC機來讀取數據,只能被動地等待PC機讀取它的數據。
USB傳輸速度有:低速1.5Mbps(USB1.0協議)、全速12Mbps(USB1.1協議)、高速480Mbps(USB2.0協議)和超高速5Gbps(USB3.0協議)。
USB的傳輸類型:
控制傳輸:可靠,時間有保證,好比:USB設備的識別過程;
批量傳輸:可靠,時間沒有保證,好比:U盤;
中斷傳輸:可靠,實時,好比:USB鼠標;
實時傳輸:不可靠,實時,好比:USB攝像頭。
USB傳輸的對象:端點(endpoint)
每個端點都有傳輸類型和傳輸方向。所謂的"讀U盤"、"寫U盤",能夠細化爲:把數據寫到U盤的端點1,從U盤的端點2裏讀出數據。除了端點0外,每個端點只支持一個方向的數據傳輸。注意:端點0用於控制傳輸,既能輸出也能輸入。術語裏、程序裏說的輸入(IN)、輸出(OUT)都是基於USB主機的立場說的。好比鼠標的數據是從鼠標傳到PC機,對應的端點稱爲"輸入端點"。
全部USB通訊數據的來源和目的都是基於端點。每一個USB設備最多包含16個端點,注意:3(IN)和3(OUT)是兩個不一樣的端點。
 
3.免責聲明數據

內部交流文檔,若發現相關錯誤或者建議,請及時聯繫文檔建立者進行修訂和更新。

相關文章
相關標籤/搜索