USB_DEVICE_DESCRIPTOR 结构 (usbspec.h)
USB 客户端驱动程序使用 USB_DEVICE_DESCRIPTOR 结构来检索 USB 定义的设备描述符。 USB 文档库中提供的通用串行总线 3.1 规范中介绍了此结构的成员。 请参阅 9.6.1 部分。
语法
typedef struct _USB_DEVICE_DESCRIPTOR {
UCHAR bLength;
UCHAR bDescriptorType;
USHORT bcdUSB;
UCHAR bDeviceClass;
UCHAR bDeviceSubClass;
UCHAR bDeviceProtocol;
UCHAR bMaxPacketSize0;
USHORT idVendor;
USHORT idProduct;
USHORT bcdDevice;
UCHAR iManufacturer;
UCHAR iProduct;
UCHAR iSerialNumber;
UCHAR bNumConfigurations;
} USB_DEVICE_DESCRIPTOR, *PUSB_DEVICE_DESCRIPTOR;
成员
bLength
指定此描述符的长度(以字节为单位)。
bDescriptorType
指定描述符类型。 必须设置为 USB_DEVICE_DESCRIPTOR_TYPE。
bcdUSB
标识此描述符结构符合的 USB 规范的版本。 此值是二进制编码的十进制数。
bDeviceClass
指定 USB 规范组分配的设备类代码。
bDeviceSubClass
指定 USB 规范组分配的设备子类代码。
bDeviceProtocol
指定 USB 规范组分配的设备协议代码。
bMaxPacketSize0
指定设备终结点零的最大数据包大小(以字节为单位)。 该值必须设置为 8、16、32 或 64。
idVendor
指定 USB 规范委员会分配的设备的供应商标识符。
idProduct
指定产品标识符。 此值由制造商分配,并且特定于设备。
bcdDevice
标识设备的版本。 此值是二进制编码的十进制数。
iManufacturer
指定字符串描述符的设备定义索引,该字符串描述符提供包含此设备的制造商名称的字符串。
iProduct
指定字符串描述符的设备定义索引,该字符串描述符提供包含设备说明的字符串。
iSerialNumber
指定字符串描述符的设备定义索引,该字符串描述符提供包含制造商确定的设备的序列号的字符串。
bNumConfigurations
指定设备的可能配置总数。
注解
此结构用于保存检索到的 USB 定义的设备描述符。 然后,此信息可用于进一步配置或检索有关设备的信息。 通过提交 get-描述符 URB 检索设备描述符。
从主机控制器驱动程序返回时, iManufacturer、 iProduct 和 iSerialNumber 值将索引值包含在设备维护的字符串描述符数组中。 若要检索这些字符串,可以使用这些索引值向设备发送字符串描述符请求。
要求
要求 | 值 |
---|---|
Header | usbspec.h (包括 Usb100.h) |