最終更新:2025-10-03 (金) 11:08:56 (248d)
USB/標準ディスクリプタ
種類
名前 英語 bDescriptorType メモ デバイスディスクリプタ DEVICE? 1 VIDとかPIDとかのデバイス情報 コンフィグレーションディスクリプタ CONFIGURATION? 2 USBのコンフィグレーション情報 ストリングディスクリプタ STRING? 3 文字テーブル インターフェイスディスクリプタ INTERFACE? 4 インターフェイスの情報 エンドポイントディスクリプタ ENDPOINT? 5 エンドポイントの情報
番号
親子関係
デバイスディスクリプタ └コンフィグレーションディスクリプタ └インターフェイスディスクリプタ └エンドポイントディスクリプタ
デバイスディスクリプタ
- USBデバイスなら必須。
- USB 機器の plug-in 時の一番初めに取得される。18バイト固定
- USB デバイスに 1 つだけ
- デバイスのベンダ ID、プロダクト ID、USBクラス(USBハブかどうか)、コンフィギュレーションの数の情報
コンフィグレーションディスクリプタ
- デバイスの構成情報を記述
- 構成の番号とかインタフェース数。
インターフェイスディスクリプタ
- デバイスの機能を表すためのディスクリプタ
- インターフェイス自身の番号、USBクラス、サブクラス、プロトコル情報、エンドポイントの数
エンドポイントディスクリプタ
- エンドポイントのデータ転送種別、転送方向、パケットサイズ、ポーリング時間
ストリングディスクリプタ
USB 2.0で追加
名前 英語 bDescriptorType メモ デバイスクオリファイアディスクリプタ DEVICE_QUALIFIER? 6 Hi-Speed USB をサポートする場合、必要 アザースピードコンフィグレーションディスクリプタ OTHER_SPEED_CONFIGURATION? 7 Hi-Speed USB をサポートする場合、必要 INTERFACE_POWER 8 - 更に追加
OTG 9 DEBUG 10 IAD INTERFACE_ASSOCIATION 11

