Linuxでシリアルポートを設定する最も簡単な方法は何ですか?

Linuxでシリアルポートを設定する最も簡単な方法は何ですか?

Windowsのコマンドプロンプトでシリアルポートを設定するには、次のようにします。

mode com1: 9600,n,8,1

または設定をお読みください。

mode com1:

Linuxにも同様のコマンドがありますか? Linuxでシリアルポートを見つけて設定する最も簡単な方法は何ですか?

答え1

sttyこのコマンドを使用して対応するパラメータを設定できます。

これにより、最初のシリアルポートのすべての設定が表示されます(ttyS0USBシリアルポートを使用している場合はこのポートと交換)。ttyUSB0

stty -F /dev/ttyS0 -a

これは転送速度を9600、8ビット、1ストップビット、パリティなしに設定します。

stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb

人々をしばしば混乱させる1つのことは、デバイスがオフになると、ほとんどのシリアルドライバが設定をデフォルト値にリセットすることです(つまり、デバイスの電源を入れるプロセスはありません)。したがって、上記のsttyコマンドは設定を指定し、完了するとドライバはその設定をリセットします。最初にPOSソフトウェアがデバイスの電源を入れて設定を実行するようにした場合は、sttyPOSソフトウェアがデバイスの電源を切るまで(シャットダウンなど)、その設定を維持する必要があります。

POSソフトウェアには、これらの設定を独自に設定する方法が必要です。プリンタを駆動するために独自のソフトウェアを作成する場合は、まずデバイスを開いてからコマンドを実行してくださいstty

opost出力後処理が行われるという意味など、他の設定を試すこともできます。opostonlcr両方が設定されている場合、onlcr改行(0xa)バイトを出力するときに、通常は階段印刷を防ぐために追加のキャリッジリターン(0xd)が追加されます。

This is a line
              This is the next line

これはあなたが望むものかもしれないし、そうでないかもしれません。プリンタの生の1対1の出力をオフにしたい場合opost(パラメータ-opostに追加stty

ハンドシェイク(フロー制御)も制御され、sttyプリンタについて詳しく知らないと設定が必要かどうかはわかりません。

stty詳しくはマンページをご覧ください。

関連情報