一,概述
現(xiàn)在很多的主控上都帶有USB的功能,但是對于初學(xué)者來說,這方面應(yīng)用還是比較棘手,因為usb的不但固件程序需要編寫,PC端的驅(qū)動也要編寫,而且驅(qū)動寫好了還要寫個上位機才能看出效果。這樣調(diào)試起來十分困難,建議從USB的鍵盤,鼠標開始做,了解清楚了,再做自己的協(xié)議就比較簡單了。
USB的概念歷史啥的這里就不說了。我們先不管具體的數(shù)據(jù)包格式,這一節(jié)先從整個包的層面上簡單的說,過程是這樣的,
---------------------------------------設(shè)備插入-------------------------------------------------------------
1)????主機會輪回查詢各個USB端口,主機檢測到D+與D-之間有電壓差,就認為有新的設(shè)置接入。主機等待100ms后發(fā)出復(fù)位請求。設(shè)備接到復(fù)位請求后將產(chǎn)生一個外部中斷信號。
---------------------------------------枚舉過程------------------------------------------------------------
2)????主機這時候只是知道有新的設(shè)備插入了,但是不知道插進來個什么東西,所以就開始詢問它是什么設(shè)備,怎么用,負荷能力怎么樣。這個時侯就進入了枚舉過程。因為剛剛插入的設(shè)備沒有分配地址,就用默認地址0,首先發(fā)送一個Get_descriptor(獲取設(shè)備描述符)指令包,設(shè)備接到包后就開始解析包(其實就是你在固件程序里判斷處理)?,然后按固定格式返回自己設(shè)備的設(shè)備描述符,這一步主要是主機知道你的USB設(shè)備的基礎(chǔ)屬性,比如支持的傳輸數(shù)據(jù)長度,電流負荷多少,支持那個USB版本,以及以后方便電腦找驅(qū)動的PID,VID。
3)????這時候主機知道你(你做的設(shè)備,簡稱你吧)的數(shù)據(jù)長度還有電流大小后,下一步就是給你分配一個屬于你的地址。
4)????給你一個地址后就開始詢問你的具體配置。首先發(fā)送一個試探性的設(shè)備配置請求Get_configuration(要求固定返回9個設(shè)備配置字),你接到后就開始發(fā)送9字節(jié)的設(shè)備配置字,其中包括你的配置字的總長度,這樣主機就知道你的配置到底有多長,然后再發(fā)一次設(shè)備配置請求,這時你就開始上傳所有的配置字。這個時侯主機就已經(jīng)很明白你的工作方式就各種特性,然后就可以正常工作了
5)????如果你在前面的某些配置(以后章節(jié)詳細說明)要求要說明自己的名字什么的,這里還要上傳字符串描述符。
6)????如果是鼠標或者鍵盤還要上傳報告描述符
---------------------------------------正常數(shù)據(jù)階段------------------------------------------------------
7)????這個時侯你已經(jīng)被主機正式接受并且注冊了,你可以通過自己寫測驅(qū)動或通用驅(qū)動與電腦進行通訊了。
以上是簡單的描述,詳細的后面章節(jié)再做介紹,學(xué)習一個東西關(guān)鍵是首先要知道這個東西是什么,簡單的工作原理。對于USB的工作我這里做個比方,
?????主機好比一個公司,你就是USB設(shè)備,要進入公司首先要面試(枚舉),你到了面試現(xiàn)場(第一次插入設(shè)備),面試官首先了解到你的外表,性別已經(jīng)你要應(yīng)聘的崗位(設(shè)備描述符),然后給你一個號,以后就開始按號叫人,當你被叫到就開始問你的專業(yè)知識,性格等(配置描述符),如果你比較合適(通過了枚舉)你就會錄取了,并且注冊一個你的信息到公司(驅(qū)動安裝,并且寫入注冊表)。等你下次來公司,只要把工號(PID,VID)報上,就知道是你來了。
USB之枚舉
- usb(257400)
相關(guān)推薦
C語言中枚舉精講分析
? ? ?在使用帶有數(shù)字性質(zhì)的名稱時有的時候需要用到枚舉的方式進行定義函數(shù)名字,按照對應(yīng)的數(shù)字格式來對應(yīng)相應(yīng)的名稱。枚舉成員的值是常量不是變量。 ? ? ?我們首先講解一下枚舉與結(jié)構(gòu)體的區(qū)分,結(jié)構(gòu)
2022-03-02 10:58:133578
基于DWC2的USB驅(qū)動開發(fā)-高速設(shè)備枚舉為全速設(shè)備問題案例分析
本文轉(zhuǎn)自公眾號,歡迎關(guān)注 基于DWC2的USB驅(qū)動開發(fā)-高速設(shè)備枚舉為全速設(shè)備問題案例分析 (qq.com) 一.前言 ? 本文分享一個高速設(shè)備被枚舉為全速的問題。 ? ? 高速設(shè)備速度握手參見本系
2023-07-10 17:12:43679
C語言中枚舉的基本概念和常見用法
在C語言中,枚舉是一種方便組織和表示一組相關(guān)常量的工具。枚舉類型有助于提高代碼的可讀性和可維護性。本文將介紹C語言枚舉的基本概念、語法和用法,以及一些高級技巧。
2023-08-17 15:32:37688
如何在Go中給GORM模型添加枚舉類型
GORM是一個流行的Go ORM,它允許我們定義結(jié)構(gòu)體來表示數(shù)據(jù)庫表,并提供一個接口來執(zhí)行CRUD操作。枚舉在編程中是一個有用的特性,它允許我們定義一個變量可以取的固定值集。在這篇文章中,我們將探索如何向GORM模型添加枚舉。
2023-11-28 15:36:27547
C語言必備知識枚舉體
枚舉類型是ANSI C新標準所增加的。如果一個變量只有幾種可能的值,可以定義為枚舉類型。所謂“枚舉是指將變量的值一一列舉出來,變量的值只限于列舉出來的值的范圍內(nèi)。
2023-11-29 16:07:57424
USB 3.0枚舉失敗
我們有一個C型連接器,一個新的PCBA和3端口看到枚舉失敗。該設(shè)備總是列舉為USB 2。我們已經(jīng)抓住了USB連接的協(xié)議分析儀的日志。這將是偉大的如果有人可以提供任何見解日志分析器。故障排除2.8兆
2018-09-06 14:42:15
USB AUDIO device 枚舉成功, 但是MCU沒有數(shù)據(jù)
USB AUDIO device用CUBEMX 生成了(選擇的默認), 電腦也枚舉成功了, 但是電腦放音樂, 也選擇了 STM32 AUDIO做為輸出, 可是就是無數(shù)據(jù).我試了一個專用IC 是可以
2018-12-12 10:46:07
USB HID設(shè)備枚舉失敗,返回STALL(請大俠們幫幫手,急)
如題,最近在做一個項目,需要把USB作為自定義的HID設(shè)備,但總是枚舉不成功,到“獲取HID報告描述符”一步就返回STALL了,郁悶了一個星期,請高手幫忙分析一下問題的原因。下面截圖作一下描述
2013-05-01 14:34:04
USB HOST 枚舉u***鼠標失敗
我手上有LPC1766的u*** host的u盤例程,在自己的LPC1769 的板子上稍微修改了下,成功的枚舉了fat16的u盤,并實現(xiàn)讀寫。但是當我掛載u***鼠標的時候,復(fù)位后第一次發(fā)送請求設(shè)備
2013-09-05 11:13:49
USB Microphone枚舉成功后,處理類特殊請求后還是無法向PC端傳輸音頻流數(shù)據(jù)的原因?
請問USB Microphone枚舉成功后,處理類特殊請求后還是無法向PC端傳輸音頻流數(shù)據(jù)是出于什么原因呢
2022-06-13 07:08:14
USB枚舉和HID枚舉實例
在說枚舉過程之前,先把一些必須了解的說明白一.USB包結(jié)構(gòu)和分類包的共同特點是,都是以同步域開始,接著是PID,最后以EOP結(jié)束,而設(shè)備端則靠SEI(串行接口引擎,硬件上實現(xiàn))來進行這些底層的處理
2018-07-06 06:02:25
USB枚舉失敗
我使用的芯片是STM32F105,F(xiàn)ull-speed模式,ST官網(wǎng)的USB-OTG的庫,現(xiàn)在枚舉過程總是失敗,電腦設(shè)備管理器已經(jīng)可以顯示USB人體輸入設(shè)備,但是顯示錯誤碼:(10)設(shè)備無法啟動
2019-05-10 06:23:25
USB枚舉步驟
一步,因為host/device端都可以檢測到對端的termination阻抗,因此確定設(shè)備插上,VBUS開始供電。通過對端termination阻抗的檢測,可以確定進入SS枚舉還是HS/FS或者LS枚舉。
2019-05-31 06:42:46
USB枚舉的具體過程詳細說明
USB的的監(jiān)控用得較多的是BUSHund,但是這個BUSHound這家伙不能監(jiān)控USB的枚舉,我們使用USBMonitor就能很好地實現(xiàn)這一過程。 工具: USB Monitor 2.26 USB
2018-07-06 02:38:25
USB入門總結(jié)(1)枚舉(轉(zhuǎn)載)
是簡單的描述,詳細的后面章節(jié)再做介紹,學(xué)習一個東西關(guān)鍵是首先要知道這個東西是什么,簡單的工作原理。對于USB的工作我這里做個比方,主機好比一個公司,你就是USB設(shè)備,要進入公司首先要面試(枚舉),你
2011-11-17 08:27:49
USB大容量存儲設(shè)備枚舉失敗
器代碼10“設(shè)備無法啟動”;有時枚舉成功,并且在設(shè)備管理器中出現(xiàn)新的磁盤驅(qū)動器。為什么會這樣?我需要一個USB集線器的驅(qū)動程序嗎?謝謝您。 以上來自于百度翻譯 以下為原文 I am using
2019-07-17 11:33:30
USB電池充電基礎(chǔ)之應(yīng)急指南
的集線器端口被認為是“低功率”。插入裝置后,最初允許吸收最大100mA的電流,同時進行枚舉并與主機協(xié)商其電流預(yù)算。隨后,可能允許吸收高達500mA的電流,或者是保持在100mA。在USB串行總線
2019-02-23 06:30:00
USB設(shè)備同時用作CDC和HID時無法正常枚舉怎么解決?
使用RT thread stdio的時候,USB配置成了復(fù)合設(shè)備(CDC和HID設(shè)備)無法正常枚舉設(shè)備,使用單獨HID或者CDC設(shè)備都可以正常枚舉。
工程使用的芯片是stm32f407
USB配置
2023-08-20 16:41:43
USB設(shè)備檢測過程的USB總線枚舉有哪些步驟
)。USB 總線枚舉過程中,USB 設(shè)備需要經(jīng)歷后 4 個狀態(tài),如圖 6-12 所示。USB 集線器負責監(jiān)測設(shè)備的連接情況,而 USB 主機會通過集線器輪詢地查詢設(shè)備。當主機發(fā)現(xiàn)有一個新的設(shè)備時,會要
2018-11-09 09:30:03
枚舉enum的使用
枚舉和結(jié)構(gòu)體是兩個很好用編程語法,下面是三個枚舉的使用方法。enum SYSERROR{TIME_OUT = 1,LOW_BAT =2,NO_ACK = 3};// 如果要定義一個枚舉的變量可以這樣
2018-02-06 15:09:44
枚舉成功的USB,通信不可以可能有哪些問題
上面是USB做HID設(shè)備類的通信過程,除了廠家描述和 產(chǎn)品描述 其他都是一樣的。但是左邊的是正確傳輸?shù)木W(wǎng)上下載的,右邊的不正確是自己根據(jù)例程改的。枚舉都是成功的,但是自己改的通信是錯誤的,不知道是哪里的問題?
2017-01-10 11:52:52
ARM嵌入式裸機--USB的HOST枚舉
枚舉USB設(shè)備連接到HOST時,HOST必須通過默認的控制管道對其進行枚舉,完成獲得其設(shè)備描述、進行地址分配、獲得其配置描述、進行配置等操作后方可正常使用。USB設(shè)備的即插即用特性即依賴于此。一
2020-10-15 07:51:54
CH552 USB Setup包處理就是沒辦法枚舉成功是什么原因?
使用switch 的方法就是沒辦法枚舉成功,系統(tǒng)頻率是24M的,是處理速度太慢了嗎?switch語法如下:switch(SetReqtp) { case USB
2022-06-10 06:52:46
CH552 USB枚舉電腦不識別怎么解決?
之前寫了個例程用來做USB枚舉的,好像是用的keil3版本,后來換了keil5后,同樣的代碼去編譯,結(jié)果出現(xiàn)電腦不識別,無法枚舉,按鍵進入燒錄模式都比較困難,連續(xù)按很多次才能進入,請問這個是什么問題呢?
2022-07-07 07:08:38
CH573 USB HOST HID設(shè)備端枚舉起來后就提示dev_out dev_in重復(fù)枚舉是為什么?
CH573 USB HOST HID 使用的是EVT里面USB HOST Enum里的demo1.設(shè)備端 枚舉起來后 就提示dev_out dev_in 重復(fù)枚舉,隔兩三秒就重新枚舉了,我這邊測了
2022-08-22 07:43:21
CH582m usb描述符已經(jīng)成功獲取,怎么添加修改例程去枚舉?
工程師您好,usb描述符已經(jīng)成功獲取,不太明白怎么添加修改例程去枚舉,請問有沒有詳細一點的例程或者庫函數(shù)說明,謝謝
2022-09-19 08:23:14
D1 mini clone插入Windows時,開始枚舉USB串行并立即再次取消枚舉是怎么回事?
我有一個中國 D1 迷你克隆(背面有 ESP-12 模塊的那個)。
當我將它插入 Windows 時,它開始枚舉 USB 串行并立即再次取消枚舉(?)。
因此,相應(yīng)的 COM 端口顯示一秒鐘,然后再
2023-05-25 13:12:41
FAQ0094 AT32 USB 不斷開連接, USB 設(shè)備重新枚舉操作
本帖最后由 貪玩 于 2022-5-20 18:32 編輯
USB 不斷開連接, USB 設(shè)備重新枚舉操作Questions:USB 不斷開連接, USB 設(shè)備重新枚舉操作Answer:調(diào)用
2021-02-07 20:24:43
FX3 USB 3控制器不被重新枚舉和斷開連接
你好,對于我們的一個項目,我們正在構(gòu)建一個基于FPGA和FX3 USB 3控制器的自定義解決方案(硬件和軟件)。當FX3為我們的自定義板供電時,F(xiàn)X3用這些參數(shù)枚舉自己:VID=0x04B4,PID
2019-09-20 09:36:07
Harmony USB Bootloader枚舉問題
“USB設(shè)備樹查看器”(Wi)上的USB 3.0端口我編譯和編程基本引導(dǎo)程序應(yīng)用程序沒有任何問題。然后我直接將PIC啟動器套件連接到我的PC->沒有問題,設(shè)備被枚舉,描述符在“USB設(shè)備樹查看器
2019-08-29 09:06:54
I.MX6ULL無法枚舉USB2514是為什么?
你好目前,I.MX6ULL開發(fā)存在一些問題。其中之一是OTG USB2無法正常掛載USB2514,無法正確枚舉下游設(shè)備,只顯示設(shè)備id。usb設(shè)計要注意什么。
2023-04-03 06:55:47
Nucleo-U575Zi-Q上沒有USB枚舉嗎?
,如 AN2606 中所述。但是,STM32U5 不會通過 Nucleo 板上的 USB-C 連接器進行枚舉。我已驗證是否提供了 VDDUSB(DVM 在 SB30 上測量 3v3)。有誰
2023-02-01 07:07:35
OMAP-L138 USB1.1 OHCI枚舉設(shè)備時遇到問題
專家,您好!我最近在調(diào)試OMAP-L138的外設(shè)USB1.1 OHCI時遇到問題,需要向您請教。在枚舉設(shè)備的開始,主機請求設(shè)備描述符(GET_DESCRIPTOR),使用示波器觀察總線,并沒有看到
2018-06-21 04:14:33
STM32 USB 枚舉和移除問題
我們的設(shè)備使用的是STM32芯片,將設(shè)備枚舉為3個CCID+2HID的復(fù)合設(shè)備,但在使用過程中,出現(xiàn)以下兩個問題1、USB設(shè)備接入時,偶然出現(xiàn)枚舉失敗,無法正常枚舉出3個CCID+2HID的復(fù)合設(shè)備
2018-08-16 13:56:03
STM32F407 USB枚舉失敗的原因?
硬件方案STM32F407+外置USB PHY芯片,在使用USB標準庫枚舉鼠標是成功的例程,然后修改配置描述符和請求函數(shù)后,發(fā)現(xiàn)在請求報告描述符失敗,程序已經(jīng)運行,但是PC收不到這個,檢查多次,該配置的都已經(jīng)配置了,還是失敗下面是Bus軟件捕獲到的數(shù)據(jù)
2024-03-11 08:32:09
STM32F407 USB枚舉狀態(tài)為ENUM_IDLE時,USB主機枚舉停止怎么解決?
嗨,當連接設(shè)備并且枚舉狀態(tài)為 ENUM_IDLE 時,我的 USB 主機(CDC 類)枚舉停止。“IF then”測試語句“if (USBH_HandleEnum(phost) == USBH_OK
2023-01-16 07:24:18
cubemx生成的F4 usb audio的代碼,能枚舉成功,但沒有同步端點是為什么?
有誰遇到過 cubemx 生成的F4 usb audio的代碼,能枚舉成功,但沒有同步端點(OTG_FS)的情況嗎?
有大佬指點一下嗎?
2024-03-18 07:32:36
cyusb3014枚舉的工作原理是什么?如果下載固件后不枚舉,可能會是什么原因,原理是什么?
我用3014設(shè)計自己的板子,參考開發(fā)板kit3的原理圖,插入計算機后可以被識別為Bootloader,采用USB啟動模式,下載實例中的固件后,顯示燒寫成功,但設(shè)備在計算機中消失了,不再重新被枚舉。我
2024-02-29 07:11:41
imxrt1052 sdk2.13 usb msd freertos示例,USB無法正常識別,輸出枚舉失敗怎么解決?
這個例子程序看了linkscript,把RW ZI都放了dtcram里面的,我試試把RW ZI的數(shù)據(jù)放ocram中,USB就無法正常識別,輸出枚舉失敗。而改回d tcram就可以正常認識USB。這是為什么原因
2023-05-22 06:40:29
zImage如何在mfg下載期間將USB重新枚舉為UMS設(shè)備?
USB,然后它會找到設(shè)備并繼續(xù)下一步。我覺得 zImage 無法將 USB 重新枚舉為大容量存儲設(shè)備,或者至少它無法向我的 PC 發(fā)出正確的信號以注意到發(fā)生了變化或出現(xiàn)了大容量存儲設(shè)備。這個過程中可能缺少什么?
2023-03-14 12:56:47
不會在所有USB 2.0 PC上進行枚舉
USB 2機枚舉正確。我使用API版本號=1.0.1.670。 以上來自于百度翻譯 以下為原文I have a laptop where the FX3 will not enumerate.It
2019-04-25 15:19:10
為UVC攝像機開發(fā)USB2功能,在USB2枚舉時提示設(shè)備無法識別的原因?
我正在嘗試為 UVC 攝像機開發(fā) USB 2 功能,但在 USB 2 枚舉方面遇到了困難。 當我們將設(shè)備插入 USB 2 端口、使用 USB 3 電纜或 USB 2 集線器的 USB 3 端口
2024-02-22 08:15:47
為什么我的USB設(shè)備枚舉失敗了?
嗨,我是新的USB世界。我最近開始使用MPLAB和聲和32位PIC。到現(xiàn)在為止,我試過(使用SUSTCCESS)使用USAT和定時器模塊,但現(xiàn)在我嘗試在HupPoPH配置器之后制作一個USB HID
2019-07-16 07:30:47
使用cyfxusbhost示例程序來測試cyusb3014作為主機的功能,無法成功枚舉USB閃存驅(qū)動器設(shè)備是什么原因?
現(xiàn)在我正在使用 cyfxusbhost 示例程序來測試 cyusb3014 作為主機的功能。 當我連接 USB 閃存驅(qū)動器和 typec 端口時,我無法成功枚舉 USB 閃存驅(qū)動器設(shè)備。 我可以問一下可能是什么原因嗎?(我也嘗試將鼠標連接到主機端口,但未能成功枚舉鼠標設(shè)備)
謝謝。
2024-02-23 06:54:14
內(nèi)核4.15的I.mx6q USB主機無法識別枚舉
/枚舉USB設(shè)備,但是稍后斷開連接并再次連接時,將無法識別/枚舉。此外,刪除ci_hdrc_imx模塊會導(dǎo)致系統(tǒng)硬鎖定,而控制臺中不會打印任何信息。嘗試4.15.0-29 4.15.0-33。有沒有
2018-10-22 14:26:25
同一個usb3.0的設(shè)備,同是usb2.0的不同主機枚舉得到的設(shè)備描述符為什么不同?
通過usb hound分別監(jiān)控到ch567和電腦枚舉的過程,左圖是電腦主機的usb2.0,右圖是ch567的usb2.0。可以看出usb的版本號、PID、bcddevice、設(shè)備序列號都是不一樣
2022-06-14 07:21:08
如何同時枚舉SlaveFIFO和UART(CDC)?
我使用Re: Slave FIFO + UART Driver Setup中的程序,將img下載進FX3中,成功枚舉出了“USB串行設(shè)備(COM13)”,但是并沒有出現(xiàn)
2024-02-28 07:23:42
求助 USB 主機枚舉無線游戲手柄成功,但是無法解碼按鍵
USB-Host-device_LibV2.1的庫修改后的HID類自定義設(shè)備[size=14.399999618530273px]枚舉解碼有線游戲手柄可以[size=14.399999618530273px]現(xiàn)在換成無線游戲手柄,通信方式
2014-12-26 19:59:22
求助,請幫忙提供CH376USB接口模擬電腦枚舉CH340e USB設(shè)備參考代碼
請幫忙提供CH376USB接口模擬電腦枚舉CH340e USB設(shè)備參考代碼。下圖是我司兩款產(chǎn)品的示意,目前想要做到A產(chǎn)品與B產(chǎn)品的兩個主控MCU可以直接相互傳輸數(shù)據(jù)和命令代碼。
2022-07-06 08:00:32
求問關(guān)于ThreadX系統(tǒng)中開發(fā)的USB枚舉問題
利用ds5+dstream將這個工程代碼燒錄到指定的目標板中,全程運行后再將目標板的USB端口連接到Linux主機上,USB枚舉過程時而成功,時而失敗,以下是將USB端口接到Linux主機后再終端
2017-11-06 10:45:09
請教CH583 Demo中的HostU2Enum例子,關(guān)于枚舉復(fù)合的usb hid類設(shè)備過程?
如題,想請教CH583 Demo中的HostU2Enum這個例子,關(guān)于枚舉復(fù)合的usb hid類設(shè)備過程?例程的usb hid類枚舉過程,從代碼中可發(fā)現(xiàn),只支持只有一個接口的Mouse
2022-07-25 06:59:15
請問PSoC63 USB能同時枚舉CDC、Audio、HID嗎?
在用CY8C6347FMI-BUD53這顆芯片做USB開發(fā),是否同時枚舉出CDC、Audio、HID這三類設(shè)備,或者同時枚舉出CDC、Audio兩類設(shè)備,這種方案可行能夠?qū)崿F(xiàn)嗎?有沒有相關(guān)的PSoC Creator的Example工程可以參考?
2024-02-18 07:07:31
請問u***的枚舉需要多少時間?stm32f107vc
板上mcu的SPI模塊驅(qū)動SD卡,板上u***模塊連電腦,模擬U盤,SD卡激活后,SPI提速到18M,接入USB模塊,USB線連電腦開始識別U盤,枚舉用了整整60秒,電腦才識別出U盤容量信息,后續(xù)
2018-12-27 09:02:19
調(diào)試USB例程,USB枚舉失敗后導(dǎo)致不能下載程序
Virtual_Com_Port_Reset(void)的內(nèi)容注釋掉。下載成功,斷電重啟后,電腦報告未能識別的USB設(shè)備,我想大概這個函數(shù)的內(nèi)容影響到了USB的枚舉過程。所以,重新恢復(fù)void
2014-05-05 10:26:46
轉(zhuǎn): Cypress固件架構(gòu)徹底解析及USB枚舉
dscr51里放的是USB描述符表,EZ-USB在重枚舉階段會讀取或設(shè)置相應(yīng)的描述符:db DSCR_DEVICE_LEN ;; Descriptor lengthdb DSCR_DEVICE
2016-08-04 11:18:02
嵌入式USB主機
本文以一個實際USB設(shè)備枚舉的數(shù)據(jù)過程,講述了USB協(xié)議中的一些關(guān)鍵概念和重要的數(shù)據(jù)結(jié)構(gòu)、時序;在此基礎(chǔ)上,簡單介紹本系統(tǒng)的硬件設(shè)計,然后圍繞如何實現(xiàn)USB設(shè)備枚舉,從
2008-11-26 13:56:466
USB枚舉中文介紹
枚舉是某個USB設(shè)備連接到系統(tǒng)并指派一個明確的地址碼的過程,地址碼用來訪問個別設(shè)備。USB主機控制器查詢設(shè)備屬于哪一類的設(shè)備時也嘗試為其綁定適當?shù)尿?qū)動程序。主機發(fā)往
2010-11-03 16:44:3719
MAX8895X, MAX8895Y 業(yè)內(nèi)首款提供自動USB
MAX8895X, MAX8895Y 業(yè)內(nèi)首款提供自動USB枚舉功能的電池充電器
Maxim的MAX8895電池充電器集成自動適配器檢測和USB枚舉功
2010-09-13 08:15:16994
Maxim推出集成USB充電枚舉器的汽車DC-DC轉(zhuǎn)換器
中國,北京,2013年10月17日。Maxim Integrated Products, Inc. (NASDAQ: MXIM)推出集成USB充電枚舉器的汽車DC-DC轉(zhuǎn)換器MAX16984,利用單芯片IC即可通過USB接口識別任意便攜設(shè)備(PD),并直接利用汽車電池為設(shè)備充電。
2013-10-17 17:38:47951
枚舉是C語言中的一種基本數(shù)據(jù)類型
在C語言中,枚舉類型是被當做 int 或者 unsigned int 類型來處理的,所以按照 C 語言規(guī)范是沒有辦法遍歷枚舉類型的。不過在一些特殊的情況下,枚舉類型必須連續(xù)是可以實現(xiàn)有條件的遍歷。以下實例使用 for 來遍歷枚舉的元素
2018-09-25 15:45:498264
USB的HID描述符枚舉的詳細程序資料免費下載
枚舉可以理解為主機按不定的順序向USB設(shè)備討要設(shè)備信息,好給它分配資源,若枚舉不成功,就放棄分配資源,免得浪費資源。一般都是使用中斷傳輸方式通信。
2018-11-01 17:16:524
如何讓嵌入式設(shè)備枚舉成WinUSB設(shè)備
一般固件程序可以通過MCU廠家提供的范例程序進行修改,這里省略USB固件功能的說明。只要包含以上三個描述符中的必須的字段,就可以成功枚舉成USB Device。枚舉成功后在設(shè)備WINDOWS設(shè)備管理器中可看到類似設(shè)備,如下圖1所示。
2018-12-18 14:28:203208
USB設(shè)備枚舉過程的詳細資料說明
USB設(shè)備在正常工作以前,第一件要做的事就是枚舉。 枚舉就是讓HOST認得這個設(shè)備,并且為該設(shè)備準備其所請求的資源,建立好主機和設(shè) 備之間的信息溝通機制 。
2019-05-09 08:00:001
電腦是如何識別你插上了USB設(shè)備
次當插上鼠標或者U盤的時候,電腦是怎么知道是什么設(shè)備的呢?這里用到的就是枚舉了。枚舉,其實就是讓HOST認識這個USB涉筆,并且為該設(shè)備準備資源,建立好主機和設(shè)備之間的數(shù)據(jù)傳遞機制。 USB設(shè)備枚舉
2019-07-14 10:25:1920010
go語言枚舉類型怎么用
go 語言枚舉類型是這么用的?在什么場景下會用到枚舉?本文對 go 語言枚舉做了詳細講解。 枚舉,是一種重要的數(shù)據(jù)類型,由一組鍵值對組成,通常用來在編程語言中充當常量的標識符。在主流行編程語言
2021-09-02 09:43:364843
SystemVerilog中枚舉類型的使用建議
SystemVerilog中枚舉類型雖然屬于一種“強類型”,但是枚舉類型還是提供了一些“不正經(jīng)”的用法可以實現(xiàn)一些很常見的功能,本文將示例一些在枚舉類型使用過程中的一些“不正經(jīng)”用法,并給出一些使用建議。
2022-09-01 14:20:141057
C語言枚舉簡述
在C語言中,如果一個變量只有幾種可能的值,則可以定義為枚舉類型,所謂“枚舉”就是指把可能的值一一列舉出來,變量的值只限于列舉出來的值的范圍內(nèi)。
2023-03-24 15:15:07519
USB設(shè)備枚舉過程
設(shè)備插入后,先進入【attached】 狀態(tài),然后hub 端口配置進入【powered】 狀態(tài);主機發(fā)起復(fù)位信號,設(shè)備進入【Default】狀態(tài),然后分配設(shè)置地址,設(shè)備配置。
2023-06-25 10:08:34960
USB的枚舉過程
每當一個`USB`外設(shè)接入主機后,系統(tǒng)會提示用戶`USB`設(shè)備接入了,并不停的查找對應(yīng)的驅(qū)動文件,如果找到驅(qū)動文件,則加載對應(yīng)驅(qū)動;如果沒有找到,則提示用戶沒有對應(yīng)的驅(qū)動,需要用戶主動去配置驅(qū)動。
2023-06-25 14:14:291401
什么叫USB枚舉?USB接口標準請求
先說一下什么叫USB枚舉,設(shè)備接入主機后被主機識別,主機為設(shè)備供電,此時主機和設(shè)備使用默認的地址0通訊,直到主機重新分配地址。
2023-09-12 10:48:52472
HK32MCU應(yīng)用筆記(二十)| HK32F103xC/D/E USB枚舉情況分析(二)
HK32MCU應(yīng)用筆記(二十)| HK32F103xC/D/E USB枚舉情況分析(二)
2023-09-18 10:58:22322
HK32MCU應(yīng)用筆記(十九)| HK32F103xC/D/E USB枚舉情況分析
HK32MCU應(yīng)用筆記(十九)| HK32F103xC/D/E USB枚舉情況分析
2023-09-18 10:58:25370
Java枚舉的特點及用法
在 Java 枚舉出現(xiàn)之前,通常會使用常量類來表示一組固定的常量值,直到Java 1.5之后推出了枚舉,那么枚舉類型有哪些特點,它比常量類又好在哪里呢。 本文將分析一下枚舉的特點及用法。 1.
2023-09-30 10:02:00358
java switch case值能為枚舉值嗎
Java中的switch語句可以接受枚舉類型的值作為參數(shù)。在Java中,枚舉是一種特殊的數(shù)據(jù)類型,它定義了一個固定數(shù)量的命名常量。因此,可以將枚舉值作為switch語句的case。 首先,讓我們來看
2023-11-30 14:41:551362
枚舉有多大?c語言枚舉end的作用是什么?
枚舉有多大?c語言枚舉end的作用是什么? 枚舉在C語言中是一種常見的數(shù)據(jù)類型,用于定義一組相互關(guān)聯(lián)的常量或者變量。它通常用于表示一系列可能的取值,使得程序更加易讀和易維護。在C語言中,枚舉的取值
2024-01-19 14:19:44153
評論
查看更多