表4、USB设备描述符的结构 |
偏移量 | 域 | 大小 | 值 | 描述 |
0 | bLength | 1 | 数字 | 此描述表的字节数
|
1 | bDecriptorType | 1 | 常量 | 描述符的类型(此处应为0x01,即设备描述符)
|
2 | bcdUSB | 2 | BCD码 | 此设备与描述表兼容的USB设备说明版本号(BCD 码)
|
4 | bDeviceClass | 1 | 类 | 设备类码:
如果此域的值为0则一个设置下每个接口指出它自己的类,各个接口各自独立工作。
如果此域的值处于1~FEH之间,则设备在不同的接口上支持不同的类。并这些接口可能不能独立工作。此值指出了这些接口集体的类定义。
如果此域设为FFH,则此设备的类由厂商定义。
|
5 | bDeviceSubClass | 1 | 子类 | 子类挖码
这些码值的具体含义根据bDeviceClass 域来看。
如bDeviceClass 域为零,此域也须为零
如bDeviceClass 域为FFH,此域的所有值保留。
|
6 | bDevicePortocol | 1 | 协议 | 协议码
这些码的值视bDeviceClass 和 bDeviceSubClass 的值而定。
如果设备支持设备类相关的协议,此码标志了设备类的值。如果此域的值为零,则此设备不支持设备类相关的协议,然而,可能它的接口支持设备类相关的协议。如果此域的值为FFH,此设备使用厂商定义的协议。
|
7 | bMaxPacketSize0 | 1 | 数字 | 端点0的最大包大小(仅8,16,32,64
为合法值)
|
8 | idVendor | 2 | ID | 厂商标志(由USB-IF组织赋值)
|
10 | idProduct | 2 | ID | 产品标志(由厂商赋值)
|
12 | bcdDevice | 2 | BCD 码 | 设备发行号(BCD 码)
|
14 | iManufacturer | 1 | 索引 | 描述厂商信息的字符串描述符的索引值。 |
15 | iProduct | 1 | 索引 | 描述产品信息的字串描述符的索引值。 |
16 | iSerialNumber | 1 | 索引 | 描述设备序列号信息的字串描述符的索引值。 |
17 | bNumConfigurations | 1 | 数字 | 可能的配置描述符数目 |