USB设备描述符
bLenth :该描述符的长度,单位字节一般USB设备描述符都是固定的18字节即0x12; bDescriptorType :描述符种类代码。USB设备描述符为0x01; bcdUSB :USB协议版本,采用BCD编码如2.0就是0x0200,但是USB是小端结构,因此实际就是 【0x00 ,0x20】 bDeviceClass: 设备类代码,大多数是0而在接口描述符中的bInterfaceClass中指定该接口实现的功能,注意的是当bDeviceClass为0时,bDeviceSubClass也必须为0; bDeviceSubClass :配合bDeviceClass代码决定,USB标准定义。 bDeviceProtocol:设备所使用类的协议,如果没有定义类就为0 ,字段为0xFF表示使用自定义协议。 bMaxPackSize0 :端点0的最大包长,最小是8,因为枚举过程,第一次获取设备描述符只会读取一次,因此需要在这个包中包含USB设备描述符的长度。 idVendor:厂商ID VID,需要交保护费申请。 idProduct :产品ID PID由厂商自己定义。通常主机会根据VID和PID来加载本地或源的驱动程序。 bcdDevice :设备版本号,也采用BCD码,同理USB协议版本号。 iSerialNumber :设备序列号字符串索引值。 bNumConfigurations :设备有多少种配置,大部分USB设备就只有一个配置。
|
楼主,请问如何获取对应的插入的USB设备描述符呢?目前我自己通过win接口去获取,总是会有鼠标、键盘等一些标准的USB设备在里面,怎么把这些排除,并获取对应的USB设备描述符呢?