USB_DEVICE_DESCRIPTOR 構造体 (usbspec.h)
USB_DEVICE_DESCRIPTOR構造体は、USB クライアント ドライバーが 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 仕様のバージョンを識別します。 この値は、2 進コードの 10 進数です。
bDeviceClass
USB 仕様グループによって割り当てられたデバイスのクラス コードを指定します。
bDeviceSubClass
USB 仕様グループによって割り当てられたデバイスのサブクラス コードを指定します。
bDeviceProtocol
USB 仕様グループによって割り当てられたデバイスのプロトコル コードを指定します。
bMaxPacketSize0
デバイスのエンドポイント 0 の最大パケット サイズをバイト単位で指定します。 値は、8、16、32、または 64 に設定する必要があります。
idVendor
USB 仕様委員会によって割り当てられたデバイスのベンダー識別子を指定します。
idProduct
製品識別子を指定します。 この値は製造元によって割り当てられ、デバイス固有です。
bcdDevice
デバイスのバージョンを識別します。 この値は、2 進コードの 10 進数です。
iManufacturer
このデバイスの製造元の名前を含む文字列を提供する文字列記述子のデバイス定義インデックスを指定します。
iProduct
デバイスの説明を含む文字列を提供する文字列記述子のデバイス定義インデックスを指定します。
iSerialNumber
デバイスの製造元が決定したシリアル番号を含む文字列を提供する文字列記述子のデバイス定義インデックスを指定します。
bNumConfigurations
デバイスで使用可能な構成の合計数を指定します。
注釈
この構造体は、取得した USB で定義されたデバイス記述子を保持するために使用されます。 この情報を使用して、デバイスに関する情報をさらに構成または取得できます。 デバイス記述子は、get-descriptor URB を送信することによって取得されます。
ホスト コントローラー ドライバーから返される iManufacturer、 iProduct、 および iSerialNumber の値には、デバイスによって維持される文字列記述子の配列にインデックス値が含まれます。 これらの文字列を取得するには、これらのインデックス値を使用して、文字列記述子要求をデバイスに送信できます。
要件
要件 | 値 |
---|---|
Header | usbspec.h (Usb100.h を含む) |