0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

電腦是如何識(shí)別你插上了USB設(shè)備

FPGA之家 ? 來(lái)源:未知 ? 2019-07-14 10:25 ? 次閱讀

每次當(dāng)插上鼠標(biāo)或者U盤的時(shí)候,電腦是怎么知道是什么設(shè)備的呢?這里用到的就是枚舉了。枚舉,其實(shí)就是讓HOST認(rèn)識(shí)這個(gè)USB涉筆,并且為該設(shè)備準(zhǔn)備資源,建立好主機(jī)和設(shè)備之間的數(shù)據(jù)傳遞機(jī)制。USB設(shè)備枚舉過(guò)程可以分為8個(gè)部分:1、 獲取設(shè)備描述符2、 復(fù)位3、 設(shè)置地址4、 再次獲取設(shè)備描述符5、 獲取配置描述符6、 獲取接口、端點(diǎn)描述符7、 獲取字符串描述符8、 選擇設(shè)備配置

先看一下上篇文章看的USB鼠標(biāo)枚舉的包吧。那樣更加明顯易懂。

1、 獲取設(shè)備描述符

這次傳輸方式是控制傳輸,她由5個(gè)事務(wù)組成,分別是SETUP、IN、IN、IN、OUT。

首先看第一個(gè)事務(wù)即SETUP事務(wù)的data數(shù)據(jù),根據(jù)其數(shù)據(jù)再根據(jù)usb協(xié)議中的setup協(xié)議可以知道其含義了。下面按照自己來(lái)看協(xié)議

2、 復(fù)位

3、 設(shè)置地址

4、? 再次獲取設(shè)備描述符這個(gè)是第2部分是一樣的,就不再分析了。??

5、 獲取配置描述符

看第一行就知道了這個(gè)是GET_DESCRIPTOR,CONFIGURATION descriptor。下面還是看下具體的事務(wù)吧。

首先還是SETUP事務(wù)了,看數(shù)據(jù)80 06就可以知道了是設(shè)備要發(fā)描述符給主機(jī),而02就表示configuration,就是配置描述符了,

接著就是IN事務(wù),設(shè)備給主機(jī)發(fā)送數(shù)據(jù)了。具體的數(shù)據(jù)含義看下圖。

最后就是OUT事務(wù)。

6、 獲取接口、端點(diǎn)描述符

還是老方法,看SETUP事務(wù),和上一個(gè)一樣,是獲取配置描述符,這里的配置描述符。

具體含義,看下面的圖就明白了。

7、 獲取字符串描述符

這里就不多做分析了。8、 選擇設(shè)備配置

這里,SETUP事務(wù),主要是DEVICE的SET_CONFIGURATION。好了,差不多USB的枚舉就是這么回事了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7876

    瀏覽量

    263692
  • 電腦
    +關(guān)注

    關(guān)注

    15

    文章

    1677

    瀏覽量

    68606
  • Host
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    34568

原文標(biāo)題:科普!插上USB設(shè)備后電腦是怎么識(shí)別的呢?

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PCM2706輸出iis信號(hào)給PMC1794解碼,插上電源/USB插上電腦電腦提示“unkown USB device”,為什么?

    如同標(biāo)題!本人用的是有源12MHz的外部晶體,PCM2706輸出iis信號(hào)給PMC1794解碼! 電路如下: 問(wèn)題是插上電源/USB插上電腦
    發(fā)表于 11-07 08:13

    平板電路板插上USB升級(jí)

    平板電路板插上USB升級(jí)是電腦顯示無(wú)法識(shí)別的u***設(shè)備,該怎么修
    發(fā)表于 01-06 11:14

    請(qǐng)問(wèn)電腦如何識(shí)別設(shè)備

    我想問(wèn)大家一個(gè)問(wèn)題:在用eclipse開發(fā)好android應(yīng)用程序以后,想要把程序下載到手持式設(shè)備里去,只需用USB線把電腦設(shè)備連接上即可,那么我想問(wèn)一下,
    發(fā)表于 05-16 07:45

    串口顯示無(wú)法識(shí)別USB設(shè)備

    原子哥求救?。何业陌遄?現(xiàn)在出現(xiàn)問(wèn)題了啊之前在一個(gè)電腦上 是好的!但是現(xiàn)在換了一個(gè)電腦插上串口線后就是顯示無(wú)法識(shí)別USB
    發(fā)表于 04-10 01:50

    STM32F103無(wú)法識(shí)別USB設(shè)備的原因是什么?

      現(xiàn)象  1、F103mini開發(fā)板下載‘觸控鼠標(biāo)教程后‘插上USB線,上位機(jī)顯示無(wú)法識(shí)別USB設(shè)備,等待1~2秒后自動(dòng)
    發(fā)表于 06-23 14:40

    電腦插上USB為什么會(huì)沒(méi)有反應(yīng)

    1.在KEIL編譯時(shí)先選擇不適用microlib 編譯一遍,此時(shí)插上USB電腦會(huì)顯示未識(shí)別USB。2.選擇使用microlib再編譯一遍,
    發(fā)表于 08-05 06:02

    CH340N插上USB后,電腦提示無(wú)法識(shí)別USB是什么原因?

    電路圖如圖,插上USB后,電腦提示無(wú)法識(shí)別USB。驅(qū)動(dòng)已裝。
    發(fā)表于 07-11 06:01

    CH334U插上電腦識(shí)別是什么原因?

    用5個(gè)CH334U做一個(gè)16接口的hub,插上電腦識(shí)別,提示未知設(shè)備,獲取描述符失敗,期間識(shí)別到過(guò)US
    發(fā)表于 09-27 06:50

    我的JLINK燈變綠了,無(wú)法識(shí)別設(shè)備

    我的JLINK前幾天用的好好的,今天插上突然燈變綠了,不能識(shí)別芯片,而且電腦不能識(shí)別設(shè)備。我在網(wǎng)上搜索解決辦法,先擦除,總之經(jīng)過(guò)一系列操作,
    發(fā)表于 01-11 14:05

    NUC120芯片USB連接電腦后,電腦無(wú)法識(shí)別設(shè)備怎么解決?

    跪求大神幫助啊!搞了一個(gè)周了,電腦一直不識(shí)別啊! 遇到問(wèn)題:程序代碼完全按照NUC120的實(shí)例寫的,下載到板子,USB線連接電腦電腦無(wú)法
    發(fā)表于 06-14 11:51

    USB設(shè)備無(wú)法識(shí)別怎么辦

    USB設(shè)備無(wú)法識(shí)別怎么辦   當(dāng)你想用閃存或移動(dòng)硬盤來(lái)和電腦交換數(shù)據(jù)時(shí),但插上USB口時(shí)
    發(fā)表于 04-19 13:03 ?1.1w次閱讀

    電腦不能識(shí)別USB全面解析

    電腦不能識(shí)別USB全面解析 usb鼠標(biāo)無(wú)法識(shí)別    問(wèn):我有一個(gè)Microsoft IE3.0鼠標(biāo),是X08版的。我的鼠
    發(fā)表于 02-25 11:32 ?8224次閱讀

    APM32F103VCT6S_USB_MAC電腦無(wú)法識(shí)別USB設(shè)備

    APM32F103VCT6S_USB_MAC電腦無(wú)法識(shí)別USB設(shè)備
    發(fā)表于 11-09 21:04 ?0次下載
    APM32F103VCT6S_<b class='flag-5'>USB</b>_MAC<b class='flag-5'>電腦</b>無(wú)法<b class='flag-5'>識(shí)別</b><b class='flag-5'>USB</b><b class='flag-5'>設(shè)備</b>

    電腦無(wú)法識(shí)別usb設(shè)備怎么解決

    Android系統(tǒng)插上USB連接到電腦,提示"無(wú)法識(shí)別USB設(shè)備"
    的頭像 發(fā)表于 10-10 16:20 ?4347次閱讀
    <b class='flag-5'>電腦</b>無(wú)法<b class='flag-5'>識(shí)別</b>的<b class='flag-5'>usb</b><b class='flag-5'>設(shè)備</b>怎么解決

    KT1404A語(yǔ)音芯片USB電腦,win7正常識(shí)別WIN10無(wú)法識(shí)別USB設(shè)備

    KT1404A語(yǔ)音芯片畫的板子,USB連接電腦,win7可以正常識(shí)別到U盤,WIN10提示無(wú)法識(shí)別USB
    的頭像 發(fā)表于 06-10 18:13 ?671次閱讀
    KT1404A語(yǔ)音芯片<b class='flag-5'>USB</b>連<b class='flag-5'>電腦</b>,win7正常<b class='flag-5'>識(shí)別</b>WIN10無(wú)法<b class='flag-5'>識(shí)別</b><b class='flag-5'>USB</b><b class='flag-5'>設(shè)備</b>