USB からシリアルポートへの導入と動作原理
1.はじめに
USB シリアル ポートは、コンピュータの USB インターフェイスと物理シリアル ポートの間の相互変換を実現できます。 USB - シリアル ポートは、シリアル ポートや他の USB ホストを持たないコンピュータにシリアル ポートを追加できます。 USB からシリアル ポートへのデバイスを使用する場合、従来のシリアル ポート デバイスをプラグ アンド プレイ USB デバイスに変換することと同じです。
USB 仮想シリアル ポート アプリケーションの機能:
①USB は広く使用されており、ホットプラグ機能をサポートし、転送速度が高速です。
②標準シリアルポートをシミュレートし、元のシリアルポートデバイスをアップグレードしたり、USB 経由でシリアルポートを追加したりできます。
③シリアル ポート アプリケーション プログラムは完全に互換性があり、変更する必要はありません。
④Windows/Linux/Android/macOS などのさまざまなオペレーティング システムをサポートします。
2.動作原理
USB ホストが USB-to-serial デバイスが挿入されたことを検出した後 → デバイスをリセット → USB エニュメレーション プロセスを開始します。
USB 列挙中に、プロセスは、デバイス記述子、構成記述子、インターフェイス記述子などのさまざまな記述子を取得します。 USB デバイスのメーカー ID、デバイス ID、クラス カテゴリなどの情報が含まれます。 オペレーティング システムは、この情報に従って、デバイスに対応する USB デバイス ドライバーを照合します。
USB 仮想シリアル ポートの実現は、システム上の USB からシリアル ポートへのドライバーに依存します。これは通常、製造元から直接提供されます。または、オペレーティング システムに付属の CDC シリアル ポート ドライバーを使用することもできます。
ドライバーは主に 2 つの機能に分けられます。
①: USB デバイス ドライバを登録して、USB デバイスの制御とデータ通信を完了します。
②: シリアル ポート ドライバを登録して、シリアル ポート アプリケーション層に対応する実装方法を提供します。
対応するシリアル ポート トランシーバーのドライバー データ フロー方向:
シリアルポート送信の流れ方向:
シリアル ポート アプリケーションがデータを送信 → USB シリアル ポート ドライバーがデータを取得 → ドライバーが USB チャネル経由で USB シリアル ポート デバイスにデータを送信 → USB シリアル ポート デバイスがデータを受信し、シリアル ポート経由で送信
シリアル ポートが受信したときのフロー方向:
USBシリアルデバイスがシリアルデータを受信 → USB経由でシリアルデータをパッケージングした後、USBホストにシリアルデータをアップロード → USB経由でアップロードされたシリアルデータをUSBシリアルドライバが取得 → ドライバがシリアルバッファにデータを保存し、USBホストに提供読み取り用のシリアル アプリケーション





