USB Composite device の PSoC 3, PSoC 4L, PSoC 5LP による実装 - Community Translated (JA)

Version 1

    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 コンフィグレーション