структура USB_DEVICE_DESCRIPTOR (usbspec.h)

Структура USB_DEVICE_DESCRIPTOR используется драйверами USB-клиента для получения дескриптора устройства, определяемого USB. Элементы этой структуры описаны в спецификации универсальной последовательной шины 3.1, доступной в библиотеке документов USB. См. раздел 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. Затем эти сведения можно использовать для дальнейшей настройки или получения сведений об устройстве. Дескрипторы устройств извлекаются путем отправки URB-дескриптора get-descriptor.

Значения iManufacturer, iProduct и iSerialNumber , возвращаемые из драйвера контроллера узла, содержат значения индекса в массиве дескрипторов строк, поддерживаемых устройством. Чтобы получить эти строки, на устройство можно отправить запрос дескриптора строки, используя эти значения индекса.

Требования

Требование Значение
Заголовок usbspec.h (включая Usb100.h)

См. также раздел

Структуры USB

UsbBuildGetDescriptorRequest

_URB_CONTROL_DESCRIPTOR_REQUEST