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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2426|回復: 0
收起左側

學習筆記->USB相關概念和協議淺析1

[復制鏈接]
ID:140343 發表于 2016-9-24 22:21 | 顯示全部樓層 |閱讀模式
                  

USB 系統拓撲結構
1、系統拓撲結構(最多127個設備)
一個 USB HOST 最多可以同時支持 128 個地址,地址 0 作為默認地址,只在設備枚舉期間臨時用,而不能被分配給任何一個設備,因此一個 USB HOST 最多可以同時支持 127 個地址,如果一個設備只占用一個地址,那么可最多支持 127 個 USB 設備。在實際的 USB 體系中,如果要連接 127 個USB設備,必須要使用 USB HUB,而 USB HUB 也是需要占用地址的,所以實際可支持的 USB 功能設備的數量將小于 127。

2、USB主控制器負責處理主機與設備之間的電氣和協議層的互聯。
常見的USB控制的類型:
UHCI:大多是Intel和Via主板上的USB控制器芯片。都是USB1.1規格。
UHCI:大多是Intel和Via主板上的USB控制器芯片。都是USB1.1規格。
EHCI:是由Intel等幾個廠商研發,兼容OHCI\UHCI,遵循USB2.0規范,同時兼容USB1.1。
3、每個USB Host控制器都會自帶一個USB HUB,被稱為根(Root)HUB。這個Hub可以接子HUB, 每子HUB上可以掛載多個USB設備。當USB設備拔插HUB,會發出電氣信號(HUB內部D+\D-引腳1.5K下拉,設備為1.5K上拉,接入之后HUB內部D+\D-被拉高從而通知USB控制器)
USB設備邏輯結構
1、在USB設備的邏輯組織中,包含設備、配置、接口和端點4個層次。設備通常會有一個或多個配置,配置通常有一個或多個接口,接口或零或多個端點。
2、配置、接口、端點。
配置:體現出來是一種功能的集合。不同的配置市設備表現出不同的功能組合。在探測、連接期間需從其中選定一個。
接口:體現出來就是一種功能。而配置由多個接口(功能)組成,接口由多個端點組成,代表一個基本的功能。是USB設備驅動程序控制的對象。一個功能復雜的USB設備可以具有多個接口,而接口是端點的匯集。
端點:基本的通信單位,除了端點0之外是雙向通訊,其它都是單向通信。可以理解為數據緩沖區。是USB設備中唯一可尋址的部分。它是位于USB設備或主機上的一個數據緩沖區,用來存放和發送USB的各種數據。主機和設備的通信最終作用于設備上的各個端點,它是主機和設備間通信流的一個邏輯終端。
3、地址、端點號
每個USB設備有一個唯一的地址、這個地址是在設備連上主機時,由主機分配給USB設備(整個主機范圍,對應具體的USB設備,會寫入USB設備)。而設備中的每個端點在設備內部有唯一的端點號,這個端點號是在設計設備時固定的(整個設備范圍,對應具體端口)。
每個端點都是一個簡單的連接點,支持數據流進或流出設備,兩者不可兼得,即單向通信。
4、基于Pnp機制,設備被枚舉時,它必須告訴主機此設備有幾個端點,每個端點的特性,包括端口號、通信方向、端點支持的最大包大小(又稱數據有效負載)、數據帶寬要求等。每個設備必須有端點0,用于設備枚舉和對設備進行一些基本的控制功能,即主機一開始與USB設備通訊時都會直接訪問端點0(約定),其余的端點在設備配置(通過端點0)之前無法與主機通信(因為主機不知道端點的特性),只有通過端點0將這些端點特性告訴主機之后,主機才知道如何使用這些端點,這些端點才算被激活使用。
USB描述符
1、當我們把USB設備(如USB鼠標)接入到我們PC時,PC能夠自動識別出我們的USB設備類型。這是因為USB主機檢測到USB設備接入之后會主動通過USB設備的端點0取獲取一組固定格式的數據,該數據包含了USB的類型、生產廠商等信息。這組固定格式的數據就稱之為USB描述符。
2、標準的USB設備有5種USB設備描述符
a)設備描述符:
一個USB設備只能有一個設備描述符,但可包含多個配置描述符。
長度為18個字節。Table 9-8(262(290/650)頁)。
b)配置描述符:
描述此設備都有哪些功能集合。一個配置描述符可以包含多個接口描述符。
長度為8個字節。Table 9-10(265 (293 / 650) 頁)。
c)接口描述符:
描述一個具體的功能,該功能需要與主機通訊都要使用端點。
長度為8個字節。Table 9-12(268 (296 / 650) 頁)。
d)端點描述符:
一個接口描述符使用了多少個端點就有多少個端點描述符。
長度為7個字節。 Table 9-13(269 (297 / 650) 頁)。
e)字符串描述符:
用于設備、配置、接口描述符需要加入字符串信息(如廠家名稱)的時候,可以使用此描述符,設備、配置、接口通過索引的方式找到指定的字符串描述符。
   
    參考:Universal+Serial+Bus+Specification+v2[1].0((USB+2.0).pdf
USB設備枚舉
1、USB設備在正常工作以前,第一件事要做的事就是枚舉。枚舉是讓HOST認得這個USB設備,并且為該設備準備好資源,如分配好地址、得到該設備所有端點特性。建立好主機和設備之間的數據傳遞機制。
2、USB標準的8個枚舉步驟
a)獲取設備描述符
b)復位
c)設置地址
d)再次獲取設備描述符
e)獲取配置描述符
f)獲取接口、端點描述符
g)獲取字符串描述符
h)選擇設備配置   
   
3、獲取設備描述符的數據包分析

第一個事務->請求包:
Packet1:Host發送一個SETUP命令,表示即將發送請求包
Packet2:Host發送了一個請求包,請求設備將其設備描述符發送過來
Packet3:Device 回送一個ACK 響應包,表示已經收到請求。
    第二事務->拿到設備描述符-描述信息
    Packet1:Host發送獲取數據的命令給 Devices。
    Packet2:Devices 發送數據給 Host
    Packet3:Host 返回一個ACK表示Host收到的數據。
4、USB鼠標的整個枚舉和通信的流程
鼠標是通過中斷傳輸方式:(這里的中斷并不是指硬件中斷,只是一種USB的傳輸方式)
鼠標是通過中斷傳輸方式:(這里的中斷并不是指硬件中斷,只是一種USB的傳輸方式)


   








回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品久久久久久一区二区 | 麻豆毛片 | 久久国产一区二区 | 天天干天天爱天天操 | 中文字幕在线一区 | 天天综合91 | 亚洲国产成人在线视频 | 日韩一区二区在线播放 | 久久中文字幕一区 | 国产主播第一页 | 久久91| 又黄又色 | 99视频在线免费观看 | 精品一区二区在线观看 | 中文字幕加勒比 | 久久精品视频免费观看 | 久久成人一区 | 亚洲精品乱码久久久久久9色 | 久久综合伊人 | 久久精品成人一区 | 91精品在线看 | 国产精品久久久久久久久 | 一级毛片免费完整视频 | 日韩综合网 | 视频一区在线观看 | 亚洲免费在线观看av | 亚洲一区二区三区免费在线观看 | 亚洲精品片 | 欧美一级做性受免费大片免费 | 日本天堂一区二区 | 国偷自产av一区二区三区 | 久久亚洲国产精品 | 国产一区2区 | aaa级片 | 亚洲精品一二三 | 欧美在线观看网站 | 亚洲综合在线一区 | 欧美二区三区 | 国产成人亚洲精品自产在线 | 亚洲成人日韩 | 欧美日韩电影免费观看 |