usb枚举设置配置后没再发命令

usb枚举设置配置后没再发命令,第1张

1、检测到USB设备后,对USB设备复位,使设备地址变为0x0。发80060100004000命令,读取设备描述符命令,由于不知道设备描述符的长度,暂时要求返回数据长度为0x40。

2、给这个新接上的设备分配地址。

3、设置地址成功后,对新地址发送获取设备描述符命令,此时已经知道了它的长度,直接按这个长度即可。

4、在得到设备描述符后,我们再发获取配置描述符命令。

5、从上一步,我们可以得到设备支持的接口数及端点数,此时再发一次得到配置描述符命令,把数据长度改大,数据长度我们可以从wTotallLength中读取,但我们一般在这里设为0xFF。

6、如果有字符串描述符,在这里可以发命令读取。接下来再一次发命令完整读取设备描述符和配置描述符。

7、在这里发送设置配置命令,到此,我们已经完整地得到了设备的信息。枚举过程结束。

USB设备枚举:

每个USB设备内部都有一个设备描述表,表中包含了设备全部要求和特性。USB设备插入主机后,主机会执行认证程序(设备枚举)

① 使用预设地址0取得设备描述符

② 设定设备新地址

③ 使用新地址取得设备描述符

④ 取得配置描述符

⑤ 设定配置描述符

设备枚举就是通过连接主机与设备之间的控制传输来辨识和配置新连接上的USB设备的过程。

成功后,Windows系统注册表中就会发现相应的VID和PID


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8064602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存