最終更新:2014-03-14 (金) 08:01:46 (3658d)
USBデバイス
Top / USBデバイス
別名
種類
- コンポジットデバイス (複合デバイス) - USB/インターフェイスを複数持つ。
- コンパウンドデバイス? - デバイス内部にUSBハブを内蔵したデバイス
USBデバイス
階層
- USB/コンフィグレーション - 複数のコンフィグレーションは同時動作できない。普通は1つ。
- USB/インターフェイス - 通信を行う機能の単位。
- USB/エンドポイント - 実際の通信路。エンドポイント0は各インターフェイスで共有される
- USB/インターフェイス - 通信を行う機能の単位。
USB/エンドポイント
- エンドポイントのうち、エンドポイント 0 はデフォルトエンドポイントと呼ばれ、制御データの転送を常に行うことができる。
- その他のエンドポイントはコンフィギュレーションがアクティブにならない限り使用できない。
- エンドポイントとPCの間の論理的な接続路はパイプと呼ばれる
- エンドポイント0は各インターフェイスで共有される
USB/ディスクリプタ
デバイスディスクリプタ
- USBデバイスに関する一般情報。(18バイト)
- デバイスディスクリプタは USB デバイスに1つだけ
コンフィグレーションディスクリプタ
- コンフィグレーションディスクリプタはコンフィグレーションに含まれるディスクリプタ全てのデータバイト数、インタフェース数を含む。
- 多くのデバイスはコンフィグレーションが 1 つのみとなっている。
- コンフィグレーションディスクリプタの取得要求に対して、インタフェースディスクリプタ、エンドポイントディスクリプタも併せて返却する仕様となっている。
インターフェイスディスクリプタ
- デバイスの機能を表すためのディスクリプタ。
- インターフェイスにはインターフェイス自身の番号、またそのインターフェイスのバリエーションの番号、エンドポイントの数を記述する。
エンドポイントディスクリプタ
- エンドポイントディスクリプタはエンドポイントのデータ転送種別、転送方向、パケットサイズ、ポーリング時間を記述する。
- なお、エンドポイント 0 についてのエンドポイントディスクリプタは存在しない。また、エンドポイントの番号はデータ転送方向によっても異なるため、例えば 1 番のエンドポイントにつき、入力と出力の 2 つを存在させることができる。
ストリングディスクリプタ
- ストリングディスクリプタはデバイス、インタフェースなどの説明を記述したり、デバイスのシリアル番号文字列を設定できる。 標準的に使用されるストリングディスクリプタはデバイスディスクリプタ68など、別のディスクリプタからインデックス番号として参照される。