USB Composite device の PSoC 3, PSoC 4L, PSoC 5LP による実装 - Community Translated (JA)
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
Community Translated by MoTa_728816 Version: **
質問:
PSoC 3, PSoC 4L, 又は PSoC 5LP で USBFS composite deviceを実装するのにはどのようにしたら良いでしょうか?
回答:
USB複合デバイス (composite device) とは複数のデバイスクラスとしてエニュメレート(enumerate)されるデバイスです。例えば、同一のデバイスが CDC と HID クラスとしてエニュメレートされる場合、これは複合デバイスと呼ばれます。目的の複合デバイスクラスに要求されるエンドポイントの総数が8以下の場合には、PSoC 3, PSoC 4L, PSoC 5LP を使用して実装することが可能です。
インターフェースアソシエーションデスクリプタ (IAD)は、一つのデバイス機能(function)に結合された二つ以上のインターフェースを記述する為に使用されます。IAD はホストに参照されている複数のインターフェース機能が一体化されていることを知らせます。例えば、USB-UARTブリッジは二つのインターフェースが結合されています:コントールインターフェースとデータインターフェースです。IADはホストにこれらのインターフェースが同一のファンクション、ここでは USB-UART、に結合されていてコミュニケーションデバイスクラス (CDC) に属することを知らせます。このデスクリプタは必ずしも複数のインターフェースをもったデザイン全てに必要なわけではありません。もしあるインターフェースがもう一つのインターフェースと異なる機能を持つ場合、それらは区別されたままであるべきです。通常複数のインターフェースが同じ機能に属していて、0から順次番号が振られる場合にはエニュメレーションで問題ありません。しかし、二つ目の機能もIADを必要とするかも知れません。念のために、IAD は両方の機能に使用することが可能です。
PSoC Creator の USBコンポーネントはデフォルトで IAD をサポートしています。図1に一つのPSoC 上の典型的な複合デバイス、デュアル USB CDC クラスのデバイスデスクリプタを示します。
図1. 複合デバイスのデバイスデスクリプタ – デュアル CDC
図2 にIADの設定を示します。例では、CDC 機能1 はインターフェース番号 0 から始まる二つのインターフェースで構成されています。アプリケーションに合わせて、最初のインターフェースとインターフェースカウントパラメータを記入してください。図2 のように、機能クラス、機能サブクラス、プロトコルなどを設定してください。
図2. CDCファンクション1の IAD コンフィグレーション
- タグ:
- cdc
- creator composite
- descripto
- endpoint
- iad
- icw
- interface
- psoc
- psoc 3
- psoc 4
- psoc 5
- uart
- usb
- usbfs
- usbuart (cdc interface)