シリアル ポート (例: /dev/ttyTEST) として表示される Linux アプリを作成したいと考えています。このアプリは、ポートに送信されたコマンドをリッスンし、応答します。
これは Qt/C++ を使用して可能ですか? 私はカーネルプログラミングを行っていないので、これがユーザー空間で可能になることを願っています。
シリアル ポート (例: /dev/ttyTEST) として表示される Linux アプリを作成したいと考えています。このアプリは、ポートに送信されたコマンドをリッスンし、応答します。
これは Qt/C++ を使用して可能ですか? 私はカーネルプログラミングを行っていないので、これがユーザー空間で可能になることを願っています。
すべては、そのようなデバイスを使用するアプリケーションが期待するものに依存します。
実際のシリアルデバイス/dev/ttyTEST
のように動作し、速度などを設定するすべての ioctl に適切に応答する必要がある場合、これはユーザー空間からは実行できません。ただし、カーネル空間に実装するのはそれほど難しくありません。
/dev/ttyTEST
tty のみが必要な場合は、疑似 tty を提供します。
/dev/ttyTEST
単に別のアプリケーションが読み書きできるものである場合は、socketpair()
そうします。
アプリケーションのコードを制御できる場合は、デバイスがソケット ペアであるか実際のキャラクター デバイスであるかをチェックし、ソケットでのシリアル ポート固有の API の障害を無視することができます。