最終更新:2014-08-19 (火) 15:52:25 (3700d)
デバイスディスクリプタ
Top / デバイスディスクリプタ
USBデバイスに関する一般情報。(18バイト)
構造
Field Offset Size 詳細 bLength? 0 1 ディスクリプタの全体長。デバイスディスクリプタは 18(0x12)Byte 固定。 bDescriptorType 1 1 ディスクリプタの種別番号。DEVICE は 1。 bcdUSB 2 2 USB のバージョン(BCD)。0x100(USB 1.0?)、0x110(USB 1.1)、0x200(USB 2.0)、0x300(USB 3.0) bDeviceClass 4 1 クラス番号 (USBクラス)。0x0 と 0xFF 以外は USB-IF が予約している。 bDeviceSubClass 5 1 サブクラス番号。0x0 と 0xFF 以外は クラス番号に依存する。 bDeviceProtocol 6 1 プロトコル番号。0x0 と 0xFF 以外は クラス、サブクラス番号に依存する。 bMaxPacketSize0 7 1 エンドポイント0の最大パケットサイズ(Byte)。速度別に規定がある。 idVendor 8 2 ベンダID(VID)。USB-IF より ID を発行(有償)してもらう必要有り。 idProduct? 10 2 プロダクトID(PID)。ベンダー各社がプロダクト毎に ID を自由に振りふれる。 bcdDevice 12 2 デバイスのバージョン番号(BCD)。 iManufacturer 14 1 製造者の ストリングディスクリプタ の Index 番号。0の場合、指定無し。 iProduct? 15 1 Product の ストリングディスクリプタ の Index 番号。0の場合、指定無し。 iSerialNumber 16 1 シリアルナンバーのストリングディスクリプタの Index 番号。0の場合、指定無し。複数接続を前提とするならば指定が必要。 bNumConfigurations 17 1 コンフィグレーションディスクリプタの個数。複数の Configuration より複数の Interface の方が好まれるケースが多い。
下位
IADを使うときのデバイスディスクリプタ
Field Offset Size 値 詳細 bDeviceClass 4 1 0xEF Miscellaneous Device Class bDeviceSubClass 5 1 0x02 Common Class bDeviceProtocol 6 1 0x01 Interface Association Descriptor