HID HID描述符
HID描述符的主要作用是用来识别HID通信所使用的额外描述符。下表是HID描述符结构。
偏移量 | 字段 | 字节数 | 数值类型 | 说明 |
---|---|---|---|---|
0 | bLength | 1 | Numeric | 描述符字节数 |
1 | bDescriptorType | 1 | Constant | 0x21 = HID描述符 |
2 | bcdHID | 2 | Numeric | HID规范版本号(BCD) |
4 | bCountryCode | 1 | Numeric | 硬件设备所在国家的国家代码 |
5 | bNumDescriptors | 1 | Numeric | 类别描述符数目(至少有一个报表描述符) |
6 | bDescriptorType | 1 | Constant | 类别描述符的类型 |
7 | wDescriptorLength | 2 | Numeric | 报表描述符的总长度 |
9 | [bDescriptorType]... | 1 | Constant | 附加的描述符的类型,可选的 |
10 | [wDescriptorLength]... | 2 | Numeric | 附加的描述符的总长度,可选的 |
bcdHID:设备与其描述符所遵循的HID规范的版本号码,此数值是4个16进位的BCD格式字符。例如版本1.1的bcdHID是0110h。
bCountryCode:硬件目的国家的识别码。如果不说明,该字段为0。
bDescriptorType:HID描述符附属的描述符的类型(报表或实体)。每一个 HID都必须至少支持一个报表描述符。一个接口可以支持多个报表描述符,以及一个或多个实体描述符。
HID描述符的偏移量为9和10的bDescriptorType和wDescriptorLength可以重复存在多个。