wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

USB設備的枚舉過程

作者:佚名   來源:不詳   點擊數:  更新時間:2014年08月17日   【字體:

     USB主機在檢測到USB設備插入后,就要對設備進行枚舉了。為什么要枚舉呢?枚舉就是從設備讀取一些信息,知道設備是什么樣的設備,如何進行通信,這樣主機就可以根據這些信息來加載合適的驅動程序。調試USB設備,很重要的一點就是USB的枚舉過程,只要枚舉成功了,那么就已經成功大半了。

    在說枚舉之前,先大概說一下USB的一種傳輸模式——控制傳輸。這種傳輸在USB中是非常重要的,它要保證數據的正確性,在設備的枚舉過程中都是使用控制傳輸。控制傳輸分為三個過程:①建立過程。②可選的數據過程。③狀態(tài)過程。建立(Setup)過程都是由USB主機發(fā)起,它開始于一個Setup令牌包,后面緊跟一個DATA0包。如果是控制輸入傳輸,那么數據過程就是輸入數據;如果是控制輸出傳輸,那么數據過程是輸出數據。如果在設置過程中,指定了數據長度為0,則沒有數據過程。數據過程之后是狀態(tài)過程。狀態(tài)過程剛好與數據過程的數據傳輸方向相反:如果是控制輸入傳輸,則狀態(tài)過程是一個輸出數據包;如果是控制輸出傳輸,則狀態(tài)過程是一個輸入數據包。狀態(tài)階段用來確認所有的數據都已經正確傳輸。
    好了,下面我們來看看枚舉的詳細過程。
    首先,USB主機檢測到USB設備插入后,就會先對設備復位。設備復位后,USB主機就會對地址為0的設備發(fā)送獲取設備描述符的標準請求。所有的USB設備在總線復位后其地址都為0,這樣主機就可以跟那些剛剛插入的設備通過地址0通信。主機在建立階段發(fā)出獲取設備描述符的輸入請求,設備收到該請求后,在數據過程將設備描述符返回給主機。主機在成功獲取到一個數據包的設備描述符后并且確認沒有什么錯誤后(注意:有些USB設備的端點0大小不足18字節(jié)(但至少具有8字節(jié)),而標準的設備描述有18字節(jié),在這種情況下,USB設備只能暫時按最大包將部分設備描述符返回,而主機在成功獲取到前面一部分描述符后,就不會再請求剩下的設備描述符部分,而是進入設置地址階段),就會返回一個0長度的狀態(tài)數據包給設備。
    然后主機再對設備復位一下,接下來就會進入到設置地址階段。這時USB主機發(fā)出一個設置地址的請求(建立過程,設置地址無數據過程),地址包含在建立包中,具體的地址USB主機會負責管理,它會分配一個唯一的地址給新的設備。USB設備在收到地址后,返回0長度的狀態(tài)包,主機收到0長度的狀態(tài)包之后,會返回一個ACK給設備。設備在收到這個ACK之后,就可以啟用新的地址了。這樣設備就分配到了一個唯一的設備地址,以后主機就通過它來進行訪問該設備。
    然后主機再次獲取設備描述符,這次跟第一次可能有點不一樣,這次需要獲取完全部的18個字節(jié)的設備描述符。當然,如果你的端點0緩沖大于18字節(jié)的話,那就跟第一次的情形一樣了。
    接下來,主機就會獲取配置描述符。配置描述符總共為9字節(jié)。主機在獲取到配置描述符后,根據里面的配置集合總長度,再獲取配置集合。配置集合包括配置描述符,接口描述符,端點描符等等。
    如果有字符串描述符的話,還要獲取字符串描述符。另外HID設備還有HID描述符等。使用BUS HOUND以及通過串口返回信息,很容易看到具體的過程。總之是主機請求什么,你的程序就響應什么。
 
    下面這些數據是使用BUS HOUND抓的,這個是在WIN2000下抓到的,如果在WINXP下,就看不到設置地址之前的數據。
    寫了注釋下面的部分就是主機和設備之間的數據通信,而其它的則是主機跟根集線器之間的通信數據。
 
Device  Phase  Data                                                Description       Cmd.Phase.Ofs(rep)  Delta
------  -----  --------------------------------------------------  ----------------  ------------------  -----
  14.1  DI     02                                                  .                        1.1.0        3.4sc 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS               2.1.0(2)      17us 
  14.0  DI     01 01 01 00                                         ....                     2.2.0         27us 
  14.0  CTL    23 01 10 00  01 00 00 00                            CLEAR FEATURE            4.1.0        110us 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS               5.1.0(2)      56us 
  14.0  DI     01 01 00 00                                         ....                     5.2.0         14us 
  14.0  CTL    23 03 04 00  01 00 00 00                            SET FEATURE              7.1.0        109ms 
  14.1  DI     02                                                  .                        8.1.0         90ms 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS               9.1.0         23us 
  14.0  DI     03 01 10 00                                         ....                     9.2.0         22us 
  14.0  CTL    23 01 14 00  01 00 00 00                            CLEAR FEATURE           10.1.0          8us 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS              11.1.0         19ms 
  14.0  DI     03 01 00 00                                         ....                    11.2.0         34us
/////////////第一次獲取設備描述符請求////////////////////// 
  14.0  CTL    80 06 00 01  00 00 40 00                            GET DESCRIPTOR          12.1.0        239us 
/////////////第一次返回設備描述符//////////////////////////
/////////////由于該端點緩沖只有16字節(jié),因此只讀到16字節(jié)///////////
  14.0  DI     12 01 10 01  00 00 00 10  65 10 36 21  01 00 00 00  ........e.6!....        12.2.0         67ms 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS              13.1.0         49us 
  14.0  DI     03 01 00 00                                         ....                    13.2.0         27us 
  14.0  CTL    23 03 04 00  01 00 00 00                            SET FEATURE             14.1.0         24us 
  14.1  DI     02                                                  .                       15.1.0        112ms 
  14.0  CTL    a3 00 00 00  01 00 04 00                            GET STATUS              16.1.0         21us 
  14.0  DI     03 01 10 00                                         ....                    16.2.0         25us 
  14.0  CTL    23 01 14 00  01 00 00 00                            CLEAR FEATURE           17.1.0          8us
////////////////設置地址,地址為2/////////////////////////////////
  14.0  CTL    00 05 02 00  00 00 00 00                            SET ADDRESS             18.1.0         19ms
///////////第二次獲取設備描述符請求////////////////////////////// 
  14.0  CTL    80 06 00 01  00 00 12 00                            GET DESCRIPTOR          19.1.0         40ms
////////////第二次返回了全部的18字節(jié)設備描述符//////////////////
  14.0  DI     12 01 10 01  00 00 00 10  65 10 36 21  01 00 00 00  ........e.6!....        19.2.0         75ms 
               02 01                                               ..                      19.2.16
////////////獲取9字節(jié)的配置描述符/////////////////////////////            
  14.0  CTL    80 06 00 02  00 00 09 00                            GET DESCRIPTOR          20.1.0         44us 
////////////返回9字節(jié)的配置描述符/////////////////////////////
////////////可以看到配置描述符集合長度為0x20(即32)字節(jié)//////
  14.0  DI     09 02 20 00  01 01 00 80  dd                        .. ......               20.2.0         50ms 
  14.0  CTL    a3 00 00 00  02 00 04 00                            GET STATUS              21.1.0        214ms 
  14.0  DI     00 01 00 00                                         ....                    21.2.0         34us
//////////再一次獲取設備描述符//////////////////////////////
  17.0  CTL    80 06 00 01  00 00 12 00                            GET DESCRIPTOR          22.1.0        3.8ms 
/////////返回設備描述符////////////////////////////////
  17.0  DI     12 01 10 01  00 00 00 10  65 10 36 21  01 00 00 00  ........e.6!....        22.2.0         67ms 
               02 01                                               ..                      22.2.16
//////////獲取配置描述符///////////////////////             
  17.0  CTL    80 06 00 02  00 00 09 00                            GET DESCRIPTOR          23.1.0         28us 
///////////返回配置描述符///////////////////////
  17.0  DI     09 02 20 00  01 01 00 80  dd                        .. ......               23.2.0         50ms 
/////////獲取0x20字節(jié)的配置描述符集合,包括配置描述符,接口描述符,端點描述符等/////////
  17.0  CTL    80 06 00 02  00 00 20 00                            GET DESCRIPTOR          24.1.0         30us
/////////返回了0x20字節(jié)的配置描述符集合///////////// 
  17.0  DI     09 02 20 00  01 01 00 80  dd 09 04 00  00 02 08 06  .. .............        24.2.0         83ms 
               50 00 07 05  82 02 40 00  00 07 05 02  02 40 00 00  P.....@......@..        24.2.16
////////獲取字符串描述符的語言ID///////////////           
  17.0  CTL    80 06 00 03  00 00 02 00                            GET DESCRIPTOR          25.1.0         29us
///////設備返回語言ID,第一字節(jié)表示語言ID的長度///////////////
  17.0  DI     04 03                                               ..                      25.2.0         45ms 
////////根據長度獲取4字節(jié)的字符串描述符的語言ID///////////////
  17.0  CTL    80 06 00 03  00 00 04 00                            GET DESCRIPTOR          26.1.0         17ms
////////設備返回完整的語言ID////////////////
  17.0  DI     04 03 09 04                                         ....                    26.2.0         53ms 
/////////獲取索引為2的字符串描述符///////////
  17.0  CTL    80 06 02 03  09 04 02 00                            GET DESCRIPTOR          27.1.0         27us 
//////////設備返回字符串描述符,第一字節(jié)為該字符串描述符的長度//////////
  17.0  DI     12 03                                               ..                      27.2.0         46ms 
/////////根據長度獲取索引為2的字符串描述符///////////
  17.0  CTL    80 06 02 03  09 04 12 00                            GET DESCRIPTOR          28.1.0         23us 
/////////設備返回完整的0x12字節(jié)字符串描述符/////////
  17.0  DI     12 03 32 00  30 00 37 00  31 00 30 00  39 00 38 00  ..2.0.7.1.0.9.8.        28.2.0         70ms 
               32 00                                               2.                      28.2.16
////////////////設置配置///////////////////////////////            
  17.0  CTL    00 09 01 00  00 00 00 00                            SET CONFIG              29.1.0         28us
////////////////設置接口//////////////////////////////// 
  17.0  CTL    01 0b 00 00  00 00 00 00                            SET INTERFACE           30.1.0         22ms
//////////////獲取最大邏輯單元///////////////////////// 
  17.0  CTL    a1 fe 00 00  00 00 01 00                            GET MAX LUN             31.1.0        158us 
  17.0  DI     00                                                  .                       31.2.0         53ms
///////////////USB大容量存儲設備的命令塊封包(CBW)//////// 
  17.2  DO     55 53 42 43  c8 58 25 81  24 00 00 00  80 00 06 12  USBC.X%.$.......        32.1.0        3.0ms 
               00 00 00 24  00 00 00 00  00 00 00 00  00 00 00     ...$...........         32.1.16             
 
 
關閉窗口
天干天干啦夜天干天2019| 亚洲91精品在线| 国产国产精品人在线视| 免费成人深夜夜行网站视频| yy1111111| 国产高清第一页| 日本福利小视频| 婷婷久久免费视频| 亚洲国产日本| 亚洲黄色免费电影| 欧美激情久久久久久| 婷婷视频在线播放| 91嫩草丨国产丨精品| 香蕉久久视频| 91麻豆国产福利在线观看宅福利 | 亚洲欧美一区二区激情| 国产九色精品| 日本黄色录像片| 亚洲人成色777777精品音频| 成人网视频在线观看| 国产欧美日韩| 国产精品视频你懂的| 永久免费毛片在线播放不卡| 日韩欧美亚洲日产国产| youjizz亚洲女人| 精品国内自产拍在线视频| 美女航空一级毛片在线播放| 亚洲激情网址| 一本久久a久久免费精品不卡| 国产mv久久久| 91看片破解版| 神宫寺奈绪一区二区三区| 午夜老司机在线观看| 欧美淫片网站| 欧美午夜宅男影院在线观看| 国产精品久久久久久久久男 | 久久成人人人人精品欧| 精品丰满人妻无套内射| 亚洲熟女综合色一区二区三区| xxav视频| 国产乱码精品一区二区三区四区 | 草莓污污视频在线观看| 精品视频在线你懂得| xnxx国产精品| 日韩中文字幕网站| 777av视频| 久久久久精彩视频| 日韩欧美在线观看一区二区| 97在线精品| 欧美日韩国产页| 国产精品网站大全| 成人精品在线观看视频| 自拍视频网站| 久久国产精品美女| 国产午夜三级一区二区三| 欧美日本亚洲视频| 日韩一级理论片| 天堂av中文字幕| 极品在线视频| 国产成人在线网站| 色悠悠国产精品| 国产精品免费入口| 亚洲黄色小说网址| 91福利区在线观看| 国产精品亚洲第一 | 亚洲无码久久久久久久| 亚洲欧美视频一区二区| 母乳一区在线观看| 日韩www在线| 成人性生活视频免费看| 精品毛片一区二区三区| 好看的中文字幕在线播放| 久久超碰97人人做人人爱| 亚洲一区999| 欧美激情成人网| 二区三区不卡不卡视频| 黄视频网站在线观看| 成人激情校园春色| 久久久精品日本| 久久黄色片网站| 欧美色图俺去了| 韩国一区二区三区视频| 亚洲乱码中文字幕综合| 亚洲一区二区免费在线| 亚洲国产精品免费在线观看| 在线看片免费人成视久网| 亚洲免费精品| 国产偷国产偷亚洲清高网站| 成人在线观看你懂的| 好男人www在线视频| 欧美va在线观看| 欧美激情在线看| 国产日韩在线一区| 欧美三级黄色大片| 污网站视频在线观看| 99国产精品| 亚洲无限av看| 日韩成人精品视频在线观看| 网站黄色在线观看| 黄色免费观看网站| 午夜亚洲福利| 日韩va亚洲va欧洲va国产| 久久久久国产精品熟女影院| 免费观看四虎精品成人| 欧美精品密入口播放| 色天天综合久久久久综合片| 日韩精品一区二区三区丰满| 一级片在线观看视频| 亚洲欧洲日本韩国| 亚洲女厕所小便bbb| 国产日韩亚洲精品| 最近中文字幕免费在线观看| 蜜桃麻豆影像在线观看| 国产精品三级在线观看| 国产一区二区三区四区五区在线 | 欧美久久婷婷综合色| 一级做a爰片久久| 丰满人妻一区二区| 欧美黄色一级| 欧美在线999| 国产乱淫av片杨贵妃| 一色屋成人免费精品网| 西野翔中文久久精品字幕| 欧美一区二区女人| 日日噜噜噜噜久久久精品毛片| 日本一二三视频| 欧美成熟视频| 日韩亚洲成人av在线| a视频免费观看| 日本高清中文字幕二区在线| 精品午夜一区二区三区在线观看| 97婷婷涩涩精品一区| 亚洲伦理一区二区三区| 天堂地址在线www| 久久一二三国产| 国产欧美日韩伦理| 国产按摩一区二区三区| 玖玖玖视频精品| 欧美日韩三级视频| 91最新在线观看| 妞干网2018| 美洲天堂一区二卡三卡四卡视频| 青草青草久热精品视频在线网站| 免费在线视频一区二区| 高清精品在线| 亚洲国产一区视频| 亚洲国产精品无码观看久久| 视频在线你懂的| 麻豆精品网站| 日产精品99久久久久久| 成年人av网站| 色综合.com| 欧美日韩一区国产| www.色欧美| 青檬在线电视剧在线观看| 成人综合在线视频| 国语精品中文字幕| 中国女人内谢69视频| 91亚洲国产| 久久中文字幕一区| 久草视频在线免费看| 色在线免费观看| 欧美性少妇18aaaa视频| 北条麻妃av高潮尖叫在线观看| www.久草| 成人免费视频视频在线观看免费| 精品剧情在线观看| 最新国产黄色网址| 色就是色亚洲色图| 欧美国产日产图区| 综合网五月天| 日本黄色入口| 蜜臀av一区二区| 91成人伦理在线电影| 亚洲精选一区二区三区| 第一sis亚洲原创| 久久精品国产亚洲一区二区| 免费中文字幕在线观看| 日本欧美在线| 精品国产乱码久久久久久免费| 国产精品麻豆入口| 久久亚洲导航| 欧美性生活久久| 亚洲av无码专区在线播放中文| 日本在线www| 欧美日韩精品国产| 欧美特级aaa| 福利视频在线看| 一个色综合网站| 狠狠操精品视频| 免费一级在线观看| 亚洲蜜臀av乱码久久精品| 日韩av在线第一页| 尤物免费看在线视频| 国产精品久久久久7777按摩| 国产一区二区在线视频播放| 在线黄色.com| 一区二区三区四区精品在线视频| 日本成年人网址| 可以免费看污视频的网站在线| 怡红院av一区二区三区| 丁香婷婷激情网| 川上优的av在线一区二区| 亚洲国产婷婷综合在线精品| 国产成人无码av在线播放dvd| 色综合888| 一级日本不卡的影视| 国产精欧美一区二区三区白种人| 蜜桃视频网站在线| 欧美色老头old∨ideo| 蜜桃精品成人影片| 福利一区二区三区视频在线观看| 日韩精品中文字幕在线观看| 久久精品一区二区三| 福利片一区二区| 九九热精品视频在线播放| 97在线公开视频| 欧美日本二区| 成人动漫在线视频| 青青青视频在线| 99riav久久精品riav| 欧美午夜性视频| 久蕉依人在线视频| 一本久久a久久免费精品不卡| 亚洲熟妇一区二区三区| 日韩久久一区| 日韩性xxxx爱| 国产福利免费视频| 日韩成人免费在线| 手机看片福利永久国产日韩| 波多野结衣在线中文| 亚洲日本欧美天堂| 国产ts在线观看| 成人免费av电影| 日韩一区二区欧美| www.看毛片| 青青青爽久久午夜综合久久午夜| 五月天综合网| 在线观看免费毛片| 色婷婷久久久久swag精品| 毛片aaaaaa| 亚洲精品3区| 国产精品天天狠天天看| 欧洲毛片视频| 国产精品电影一区二区| 亚洲精品久久久久久| 91精品国产66| 欧美疯狂性受xxxxx另类| 天堂在线视频观看| 国产精品自拍av| 国产成人无码精品久久久性色| 婷婷在线视频观看| 亚洲福利视频专区| 亚洲色图38p| www.在线视频| 日韩精品亚洲精品| 一级黄色片在线| 亚洲人123区| 色天天综合狠狠色| www.99re7| 国产欧美日本在线| av在线免费电影| 色婷婷精品大在线视频| 成人精品免费在线观看| 三级精品在线观看| 日韩中文字幕组| 成人av在线播放| 91美女福利视频高清| 蜜芽视频在线观看| 亚洲精品mp4| 亚洲最大色图| 综合网在线视频| 日韩女优一区二区| 国产精品久久777777毛茸茸 | 精品一级少妇久久久久久久| 国产精品婷婷| 国产天堂在线播放| 精品视频在线观看免费观看| 91在线在线观看| 高清日韩av电影| 欧美成在线视频| 日日摸夜夜夜夜夜添| 欧美日韩一区二区欧美激情| 91成人国产综合久久精品| 91一区二区在线观看| 卡一卡二卡三在线观看| 国产欧美激情| 视频二区在线播放| 亚洲另类av| 永久久久久久| 日韩精品免费观看视频| 91九色极品视频| 成人影院免费观看| 久久成人一区二区| 2020中文字幕在线| 精品一区二区亚洲| brazzers欧美精品| 91精品国产美女浴室洗澡无遮挡| 日本xxxx人| 亚洲一区二区av电影| 波多野结衣家庭主妇| 久久久激情视频| 亚洲熟女www一区二区三区| 日韩1区2区日韩1区2区| 亚洲免费观看在线| 综合久久99| 在线免费观看视频黄| 成人在线电影在线观看视频| www精品久久| 露出调教综合另类| 一级黄色免费在线观看| 成人污污视频| 欧美日韩一区二区三区在线观看免 | 国产911在线观看| av在线播放一区二区| 欧美日韩成人一区二区三区| 周于希免费高清在线观看| 亚洲a级在线观看| 国产黄a三级三级三级av在线看| 91精品国产91久久久| 桃花色综合影院| 久久久久久久爱| 亚洲天堂二区| 国内成人精品一区| 一区二区三区性视频| 欧美极品少妇与黑人| 在线观看av片| 91精品国产沙发| 岛国最新视频免费在线观看| 91成人福利在线| 国产高清一区在线观看| 日本成人在线视频网址| 97在线观看免费观看高清| 国产成人啪精品视频免费网| 日韩在线免费电影| 国产原创欧美精品| 国产在线拍揄自揄拍视频| 91福利视频导航| 在线观看欧美日韩电影| 欧美精品久久久| 国产精品igao视频网网址不卡日韩| 亚洲一区二区三区色| 77成人影视| 可以在线看的av网站| 欧美日韩水蜜桃| 邪恶网站在线观看| 影院欧美亚洲| 成人网站免费观看| 国精产品一区一区三区mba视频| 成人午夜免费影院| 91在线观看地址| 波多野结衣小视频| 亚洲图片自拍偷拍| 亚洲色欧美另类| 91精品在线观看入口| 免费一看一级毛片| 日韩中文娱乐网| 视频在线观看你懂的| 日本精品一区二区三区在线播放视频| 免费黄色在线| 国产精品一区视频| 国产原创一区| 丁香色欲久久久久久综合网| 成人同人动漫免费观看| 国模大尺度视频| 久久精品国产第一区二区三区| www.av视频| 国产精品成人在线观看| 精品国产av鲁一鲁一区| 在线观看日韩精品| 夜夜操夜夜骑| 久久久精品中文字幕麻豆发布| 中文字幕制服诱惑| 色美美综合视频| 尤物视频网站| 北条麻妃一区二区三区中文字幕| 污网站在线观看视频| 91免费版网站入口| 美女性感视频久久久| 久久bbxx| 欧美日韩精品一区| 国内精品偷拍| 日韩在线一区视频| 精品一区二区三区免费观看| 国产区一区二区三| 精品久久久久久久久久久久久| 欧美娇小极度另类| 一区二区欧美亚洲| 国产三级电影在线观看| 国产98在线|日韩| 视频一区中文字幕精品| 亚洲污视频在线观看| 免费av成人在线| 成人午夜淫片100集| 欧美日韩亚洲视频| 免费激情小视频| 97色在线观看免费视频| 人成在线免费网站| 国产肉体ⅹxxx137大胆| 一区在线视频|