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-descriptor URB 來擷取裝置描述項。

從主機控制器驅動程式傳回時, iManufactureriProductiSerialNumber 值會將索引值包含在裝置所維護的字串描述元陣列中。 若要擷取這些字串,可以使用這些索引值將字串描述元要求傳送至裝置。

規格需求

需求
標頭 usbspec.h (包含 Usb100.h)

另請參閱

USB 結構

UsbBuildGetDescriptorRequest

_URB_CONTROL_DESCRIPTOR_REQUEST