USB鼠标-设置地址(二)

  • Post author:
  • Post category:其他


USB 鼠标详解阅读顺序

1、

枚举

2、

设备描述符

3、

设置地址

4、

配置描述符

5、

接口描述符

6、

HID 描述符

7、

端点描述符

8、

字符串描述符

9、

HID 报告描述符

10、

HID 报告的返回

数据抓包



USB 枚举

章节我们知道,获取到 USB 的设备描述符之后就会对设备再次进行复位,然后进入设置地址阶段

例如,一个 USB 鼠标的设备地址过程如下所示

设置地址的标准请求的代码为

  • 0x00 主机到设备的标准请求,请求的接收者是设备
  • 0x05 请求代码是 0x05 表示设置地址
  • 0x14
  • 0x00 设备地址为 0x14
  • 0x00
  • 0x00
  • 0x00
  • 0x00

再次获取设备描述符

设置完地址之后,后面的通信主机与设备通信都是使用的 0x14 这个地址。

从 USB 的枚举过程 可知,下一步是获取设备描述符(真心实意的获取),这一部分与

USB-设备描述符

类似,这里不再展开讲解

数据代码如下所示

获取配置描述符

设备描述符获取到之后,下一步就是获取配置描述符,数据过程如下

  • 0x80 数据传输方向为从设备到主机,请求的类型为标准类型,请求的接受者为设备
  • 0x06 请求代码是 0x06 获取描述符的请求
  • 0x00
  • 0x02 描述符的类型编号为 0x02 即配置描述符
  • 0x00
  • 0x00 只在获取字符串描述符中有用到
  • 0xFF请求设备返回数据的字节数为 0xFF
  • 0x00



版权声明:本文为tyustli原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。