Linux コマンドラインを使用してテストしたいシリアル ポート デバイスがあります。
sttyとechoを使ってシリアルポートにコマンドを送ることはできますが、デバイスが応答したときにシリアルポートから何が送られてくるのか読み取る方法がありません。
stty -F /dev/ttyS0 speed 9600 cs8 -cstopb -parenb && echo -n ^R^B > /dev/ttyS0
デバイスにコマンドを送信します。デバイスは動作し、300 ミリ秒以内に応答を返します。コマンド ラインを使用してその応答をコンソールに出力するにはどうすればよいですか?
答え1
出力の場合と同じです。例:
cat /dev/ttyS0
または:
cat < /dev/ttyS0
最初の例は、シリアル ポートを開いて、そこから読み取った内容を (コンソールに) 中継するアプリです。2 つ目の例は、任意のアプリにシリアル ポート トラフィックを誘導するシェルです。この特定のアプリは、そのトラフィックを にstdout
中継するだけです。stdin
stdout
トラフィックの可視性を高めるには、16 進ダンプを使用することをお勧めします。
od -x < /dev/ttyS0
答え2
私は次のように Arduino Uno の出力を監視しています:
screen /dev/ttyUSB0 9600