2012-12-08 20 views
9

WindowsのデバイスマネージャでCOMポートとして表示されるUSBデバイスとの通信を処理するUSB​​クラスの名前は何ですか? Linuxの場合(少なくともFedora 17とUbuntu 12.04の場合)、これらのポートはACM(抽象コントロールモデル、/ dev/ttyACM#)として表示されます。シリアルCOMポートはどのUSBクラスで使用しますか?

歴史的に、シリアル通信は主に廃止されたRS-232シリアルポートを介して行われていたと私は理解しています。今日の標準はHIDを使ってUSBを介して通信することだと私は信じています。

ACMのgoogle検索では、HIDの反対のUSB通信クラス(つまり、USBデバイスがHIDまたはCDCを使用する可能性がある)であるCDC(通信デバイスクラス)の一部であることがわかります。 This wikipedia articleは、CDC/ACMがUSB経由でRS-232通信をエミュレートする方法であることを示しています。

この情報では、この形式のシリアル通信を「CDC」または「CDC/ACM」と呼ぶべきではありませんか?

答えて

4

thisによると、USBは、「仮想COMポート」確かにUSB CDCクラスを使用している接続されています。

2

WindowsのデバイスマネージャでCOMポートとして表示されるUSBデバイスとの通信を処理するプロトコルの名前はありますか?

ほとんどの場合、FTDI/PL2303/SiLabs Serial2USBチップのように、代用プロトコルが使用されます。彼らはCOMポートとして表示するためにWindows固有のインターフェイスを使用しますが、それはACMとは関係ありません。

あなた自身のUSBマイクロコントローラで - 私はCOMポートを削除して、あなたが1つのBulk-InエンドポイントとBulk-Outエンドポイントをそれぞれ持っていても、あなたのデバイスと直接話すためにWINUSBまたはLibUSBを使うことをお勧めします。

+0

提案していただきありがとうございます。 USB経由の「シリアルCOM」がCDCを使用しているかどうか知っていますか? – Daniel

+0

注:私は、アプリケーションでCDC/"シリアルCOM"を使用することを検討していなかったため、ネット上で明確な回答が見つからなかったため、この質問を投稿しました。しかし、WinUSBを見ると、これは私がHIDを使用することを選択したプロジェクトのためのより良い選択だと思います。提案にもう一度感謝します。 – Daniel

関連する問題