USB_DEVICE_DESCRIPTOR-Struktur (usbspec.h)

Die USB_DEVICE_DESCRIPTOR-Struktur wird von USB-Clienttreibern verwendet, um einen usb-definierten Gerätedeskriptor abzurufen. Die Elemente dieser Struktur werden in der Universal Serial Bus 3.1-Spezifikation beschrieben, die in der USB-Dokumentbibliothek verfügbar ist. Siehe Abschnitt 9.6.1.

Syntax

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;

Member

bLength

Gibt die Länge dieses Deskriptors in Bytes an.

bDescriptorType

Gibt den Deskriptortyp an. Muss auf USB_DEVICE_DESCRIPTOR_TYPE festgelegt werden.

bcdUSB

Gibt die Version der USB-Spezifikation an, die diese Deskriptorstruktur erfüllt. Dieser Wert ist eine binärcodierte Dezimalzahl.

bDeviceClass

Gibt den Klassencode des Geräts an, der von der USB-Spezifikationsgruppe zugewiesen wird.

bDeviceSubClass

Gibt den Unterklassencode des Geräts an, der von der USB-Spezifikationsgruppe zugewiesen wird.

bDeviceProtocol

Gibt den Protokollcode des Geräts an, der von der USB-Spezifikationsgruppe zugewiesen wird.

bMaxPacketSize0

Gibt die maximale Paketgröße in Bytes für Endpunkt Null des Geräts an. Der Wert muss auf 8, 16, 32 oder 64 festgelegt werden.

idVendor

Gibt den Anbieterbezeichner für das Gerät an, der vom USB-Spezifikationsausschuss zugewiesen wurde.

idProduct

Gibt den Produktbezeichner an. Dieser Wert wird vom Hersteller zugewiesen und ist gerätespezifisch.

bcdDevice

Gibt die Version des Geräts an. Dieser Wert ist eine binärcodierte Dezimalzahl.

iManufacturer

Gibt einen gerätedefinierten Index der Zeichenfolgendeskriptor an, der eine Zeichenfolge mit dem Namen des Herstellers dieses Geräts bereitstellt.

iProduct

Gibt einen gerätedefinierten Index des Zeichenfolgendeskriptors an, der eine Zeichenfolge bereitstellt, die eine Beschreibung des Geräts enthält.

iSerialNumber

Gibt einen gerätedefinierten Index der Zeichenfolgendeskriptor an, der eine Zeichenfolge bereitstellt, die eine vom Hersteller festgelegte Seriennummer für das Gerät enthält.

bNumConfigurations

Gibt die Gesamtzahl möglicher Konfigurationen für das Gerät an.

Hinweise

Diese Struktur wird verwendet, um einen abgerufenen USB-definierten Gerätedeskriptor aufzunehmen. Diese Informationen können dann verwendet werden, um Informationen zum Gerät weiter zu konfigurieren oder abzurufen. Gerätedeskriptoren werden durch Übermitteln einer get-deskriptor-URB abgerufen.

Die Werte iManufacturer, iProduct und iSerialNumber , wenn sie vom Hostcontrollertreiber zurückgegeben werden, enthalten Indexwerte in einem Array von Zeichenfolgendeskriptoren, die vom Gerät verwaltet werden. Um diese Zeichenfolgen abzurufen, kann mithilfe dieser Indexwerte eine Zeichenfolgendeskriptoranforderung an das Gerät gesendet werden.

Anforderungen

Anforderung Wert
Header usbspec.h (einschließlich Usb100.h)

Weitere Informationen

USB-Strukturen

UsbBuildGetDescriptorRequest

_URB_CONTROL_DESCRIPTOR_REQUEST