chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

主機識別USB設(shè)備原理簡介

海闊天空的專欄 ? 來源: 中穎電子 ? 作者: 中穎電子 ? 2022-05-05 17:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

USB(UniversalSerialBus),其中文為通用串行總線,是一個外部總線標(biāo)準(zhǔn),也是一種輸入輸出接口的技術(shù)規(guī)范,被廣泛地應(yīng)用于個人計算機和計算機周邊配套的通信。標(biāo)準(zhǔn)USB接口通過四線實現(xiàn)主機跟設(shè)備之間的通信連接(Vdd/D+/D-/GND),每臺主機最多可以連接127個外部設(shè)備,并且不會損失通信速度。常用的電腦周邊USB設(shè)備有鼠標(biāo)、鍵盤、U盤、音響、攝像頭等等。那么一臺主機(電腦),是如何適時的知道是否有外部USB設(shè)備插入電腦USB端口的呢?

一、USB端口及設(shè)備硬件架構(gòu)

如下圖所示,圖(1)為USB主機接口內(nèi)部示意圖,圖2為支持全速通信的USB設(shè)備端,圖3為支持低速通信的USB設(shè)備端口。

poYBAGJzl46AUXcsAABL55ehfKc923.png

二、USB端口插入外部設(shè)備識別

1)全速/低速設(shè)備插入識別

USB支持三種類型的傳輸速率:1.5Mb/s的低速傳輸、12Mb/s的全速傳輸和480Mb/s的高速傳輸。當(dāng)主控制器或集線器的下行端口上沒有USB設(shè)備連接時,其D+和D-線上的下拉電阻使得這兩條數(shù)據(jù)線的電壓都是近地的(圖1);當(dāng)全速/低速設(shè)備連接以后,電流流過由集線器的下拉電阻和設(shè)備在D+/D-的上拉電阻構(gòu)成的分壓器。由于下拉電阻的阻值是15KΩ,上拉電阻的阻值是1.5KΩ,所以在D+/D-線上會出現(xiàn)大小為(Vcc*15/(15+1.5))的直流高電平電壓。當(dāng)USB主機探測到D+/D-線的電壓已經(jīng)接近高電平,而其它的線保持接地時,它就知道全速/低速設(shè)備已經(jīng)連接了(D+為高電平,主機判定接入全速設(shè)備;如果檢測D-為高電平,則接入的USB設(shè)備為低速設(shè)備)。

2)高速設(shè)備插入識別

高速設(shè)備初始是以一個全速設(shè)備的身份出現(xiàn)的,即和全速設(shè)備一樣,D+線上有一個1.5k的上拉電阻。USB2.0的hub把它當(dāng)作一個全速設(shè)備,之后,主機hub和設(shè)備通過一系列握手信號確認(rèn)雙方的身份。在這里對速度的檢測是雙向的,比如高速的hub需要檢測所掛上來的設(shè)備是高速、全速還是低速,高速的設(shè)備需要檢測所連上的hub是USB2.0的還是1.x的,如果是前者,就進行一系列動作切到高速模式工作,如果是后者,就以全速模式工作。


總結(jié)下來,高速設(shè)備的識別過程如下

poYBAGJzl6uAeOlVAAAyCl4Ddn8755.png

1)D+/D-上拉電阻確定為全速/高速設(shè)備

2)主機hub檢測到有設(shè)備插入,向主機通報,主機發(fā)送Set_Port_Feature請求讓hub復(fù)位新插入的設(shè)備。設(shè)備復(fù)位操作是hub通過驅(qū)動數(shù)據(jù)線到復(fù)位狀態(tài)SE0(Single-ended 0,即D+和D-全為低電平),并持續(xù)至少10ms(中穎設(shè)備中產(chǎn)生bus reset信號)。

3)如果是高速設(shè)備,看到復(fù)位信號后,通過內(nèi)部的電流源向D-線持續(xù)灌大小為17.78mA電流。因為此時高速設(shè)備D+的1.5k上拉電阻還未撤銷,在hub端,全速/低速驅(qū)動器形成一個阻抗為45歐姆(Ohm)的終端電阻,兩個電阻并聯(lián)后仍是45歐姆左右的阻抗,所以在hub端看到一個約800mV的電壓(45歐姆*17.78mA),這就是Chirp K信號。Chirp K信號的持續(xù)時間是1ms~7ms。

4)在hub端,雖然下達(dá)了復(fù)位信號,并一直驅(qū)動著SE0,但USB2.0的高速接收器一直在檢測Chirp K(D+位0,D-為1)信號,如果沒有看到Chirp K信號,就繼續(xù)復(fù)位操作,直到復(fù)位結(jié)束,之后就在全速模式下操作。如果只是一個全速的hub,不支持高速操作,那么該hub不理會設(shè)備發(fā)送的Chirp K信號,之后設(shè)備也不會切換到高速模式。

設(shè)備發(fā)送的ChirpK信號結(jié)束后100us內(nèi),hub必須開始回復(fù)一連串的KJKJKJ….(K/J為USB信號端口的兩種狀態(tài),K狀態(tài)D+為高D-為低,J狀態(tài)D+為低D-為高)序列,向設(shè)備表明這是一個USB2.0的hub。這里的KJ序列是連續(xù)的,中間不能間斷,而且每個K或J的持續(xù)時間在40us~60us之間。KJ序列停止后的100~500us內(nèi)結(jié)束復(fù)位操作。hub發(fā)送ChirpKJ序列的方式和設(shè)備一樣,通過電流源向差分?jǐn)?shù)據(jù)線交替灌17.78mA的電流實現(xiàn)。

5)設(shè)備端確定上述高速流程后,斷開D+上拉1.5k電阻并連接D+/D-上的高速終端電阻。

三、USB端口設(shè)備枚舉

通過上述過程,主機只是知道有新的設(shè)備插入了,但是不知道插進來個什么東西,所以就開始詢問它是什么設(shè)備,怎么用,負(fù)荷能力怎么樣。這個時候就進入了USB協(xié)議的枚舉過程。USB枚舉過程簡單來說如下:

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

地址:默認(rèn)為0

主機:發(fā)送獲取描述符指令包

設(shè)備:設(shè)備接到包后解析,然后按固定格式返回設(shè)備描述符信息

目的:主機獲取USB設(shè)備的基礎(chǔ)屬性,比如數(shù)據(jù)傳輸方式,數(shù)據(jù)長度,設(shè)備最大電流負(fù)荷,USB版本,VID/PID等。

2)配置描述符

分配地址:主機給設(shè)備分配一個屬于它的地址;

主機:給設(shè)備一個地址后,就開始詢問設(shè)備的具體配置(配置描述符)。

設(shè)備:解析主機信息,上傳設(shè)備配置信息;

目的:配置上傳設(shè)備描述符、字符串描述符等;HID設(shè)備還要上傳報告描述符。


到此,主機就已經(jīng)完全識別了端口插入的設(shè)備是什么,將怎么工作。

來源:中穎電子

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

    關(guān)注

    60

    文章

    8320

    瀏覽量

    279052
  • 中穎電子
    +關(guān)注

    關(guān)注

    5

    文章

    177

    瀏覽量

    8121
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    USB 接口無法識別外接設(shè)備怎么辦??

    辦公插U盤傳文件、接移動硬盤存素材,或者連外接鍵盤辦公,難免會遇到USB接口無法識別設(shè)備的問題。很多人第一反應(yīng)以為“接口壞了”或“設(shè)備廢了”,其實80%的故障都是接口連接沒到位或者驅(qū)動
    的頭像 發(fā)表于 09-17 16:28 ?1004次閱讀
    <b class='flag-5'>USB</b> 接口無法<b class='flag-5'>識別</b>外接<b class='flag-5'>設(shè)備</b>怎么辦??

    k230彈出windows資源管理器無法識別usb設(shè)備怎么解決?

    k230彈出windows資源管理器無法識別usb設(shè)備
    發(fā)表于 07-31 08:28

    win7無法識別USB設(shè)備怎么解決?

    我現(xiàn)在有一個添加了CDC的FX3固件,該設(shè)備可以在win10和win11上正常工作,但在win7似乎并不能正確的識別設(shè)備,串口和USB設(shè)備
    發(fā)表于 07-16 06:52

    某些安卓手機無法識別FX2LP設(shè)備,怎么解決?

    ()” 找到設(shè)備。 閱讀尚未測試。 Phome #2 (小米):給設(shè)備加電,但屏幕上什么也沒發(fā)生,“getDeviceList ()” 返回空白。 手機可以識別我嘗試過的所有其他 USB
    發(fā)表于 05-27 06:21

    MAX3421E USB外設(shè)/主機控制器,SPI接口技術(shù)手冊

    MAX3421E USB外設(shè)/主機控制器包含了實現(xiàn)USB規(guī)范2.0全速USB外設(shè)或全速/低速主機所需的數(shù)字邏輯電路和模擬電路。內(nèi)置收發(fā)器具有
    的頭像 發(fā)表于 05-22 16:39 ?817次閱讀
    MAX3421E <b class='flag-5'>USB</b>外設(shè)/<b class='flag-5'>主機</b>控制器,SPI接口技術(shù)手冊

    PC電腦USB3.0接口無法識別CX3設(shè)備分辨率怎么解決?

    我正在使用CX3065來捕獲圖像,我發(fā)現(xiàn)有些USB3.0接口無法找到分辨率,現(xiàn)在我嘗試了幾臺筆記本電腦,我發(fā)現(xiàn)USB3.0接口提供關(guān)機充電,它可以識別CX3設(shè)備分辨率。 我保存了是或否
    發(fā)表于 05-15 08:26

    請問CYUSB3065如何修改電腦識別后的USB設(shè)備名?

    大家好!想修改USB識別后,電腦顯示的設(shè)備名字,默認(rèn)是CX3-UVC想修改成其他的,需要改哪些文件的哪些位置呢?
    發(fā)表于 05-14 07:53

    CYUSB3014無法識別USB3.0設(shè)備怎么解決?

    我開發(fā)了一款CYUSB3014硬件,但是我在燒錄了syncfifo示例代碼后,板卡只能被識別USB2.0設(shè)備。我確認(rèn)我的線材是支持USB3.0的,并且我檢查了19.2Mhz的晶振工作
    發(fā)表于 04-30 07:24

    使用官方評估板STM32H563ZI進行USB虛擬串口開發(fā),下載后電腦提示USB設(shè)備無法識別,設(shè)備描述符請求失敗怎么解決?

    使用官方評估板STM32H563ZI進行USB虛擬串口開發(fā),找到官方例程:Ux_Device_HID_CDC_ACM,屏蔽掉HID相關(guān)的配置和初始化代碼,下載后電腦提示USB設(shè)備無法識別
    發(fā)表于 03-11 08:06

    基于FT600Q芯片 的USB3.0設(shè)計,為什么連接PC后設(shè)備無法識別?

    一個基于FT600Q芯片 的USB3.0設(shè)計,進行高速傳輸,使用的是Micro usb3.0的接口,但是連接PC端口,顯示無法識別設(shè)備,請教各位大佬,這種情況是接口的設(shè)計有問題嗎?下
    發(fā)表于 01-20 14:48

    使用TUSB1046插入USB3.0的U盤,發(fā)現(xiàn)有不識別的現(xiàn)象,為什么?

    我設(shè)計了一個電路如附件所示。 發(fā)現(xiàn)有如下問題:插入USB3.0的U盤,發(fā)現(xiàn)有不識別的現(xiàn)象,即U盤插入后主機沒有任何反應(yīng)。大概開關(guān)機實驗10次就會有一次出現(xiàn)這個問題。 具體表現(xiàn)為開機之后如果第一次
    發(fā)表于 12-05 07:15

    Micro USB接口可與哪些設(shè)備兼容

    在數(shù)字時代,我們越來越依賴于各種電子設(shè)備,從智能手機到平板電腦,再到各種便攜式電子設(shè)備。這些設(shè)備之間的連接和數(shù)據(jù)傳輸變得至關(guān)重要。 一、Micro USB接口
    的頭像 發(fā)表于 11-27 10:06 ?4536次閱讀

    USB驅(qū)動問題:設(shè)備無法識別的全面指南!

    今天我把USB驅(qū)動問題,關(guān)于設(shè)備無法識別方面做一個全面指南供大家參考。連接USB無法識別模組設(shè)備
    的頭像 發(fā)表于 11-26 12:35 ?1717次閱讀
    <b class='flag-5'>USB</b>驅(qū)動問題:<b class='flag-5'>設(shè)備</b>無法<b class='flag-5'>識別</b>的全面指南!

    樂鑫USB方案設(shè)備互聯(lián)傳輸,豐富的外設(shè)支持應(yīng)用

    啟明云端/01樂鑫USB方案USB是一種通用的總線標(biāo)準(zhǔn),用于連接主機和外部設(shè)備。樂鑫USB方案為用戶提供了方便快捷的
    的頭像 發(fā)表于 11-14 01:00 ?1407次閱讀
    樂鑫<b class='flag-5'>USB</b>方案<b class='flag-5'>設(shè)備</b>互聯(lián)傳輸,豐富的外設(shè)支持應(yīng)用

    USB3.0的識別問題

    做了一個USB3.0集線器,現(xiàn)在遇到這個問題,USB3.0無法識別,插拔幾次后可以識別,接上其他設(shè)備也能正常工作,求高手幫忙啊,怎么處理
    發(fā)表于 10-29 11:36