USB 接続のシリアル ポートを介して改行文字で終了する文字列を送信するマイクロ コントローラ デバイスがあり、(今のところ)minicom
バージョン 2.6 を使用して読み取りを行っ/dev/ttyACM0
ています。行の折り返し用にターミナル アプリケーションを設定しましたが、シリアル デバイスから改行文字を受信したときに次の行の先頭に移動するようにしたいと思います。minicom
これは可能ですか (また、どのように実行しますか)?
編集stty /dev/ttyACM0 ...,inlcr
: また、やなどの私が知っている方法も試してみましたscreen /dev/ttyACM0 ...,inlcr
が、これらには、入力された改行を復帰+改行 (CR+LF) に変換するオプションがあることはわかっていますが、これらもどれも機能しません。他のオプションも試しましたが (ocrnl
私のロジックが間違っている場合に備えて、nl
やなど-nl
)、どれも機能せず、その理由もわかりません。
ああ、私は Manjaro 16.06-rc1 を実行しています。
答え1
Ctrlかなり時間がかかりましたが、ようやくここにたどり着きました。 + を何度も押す手間を省くために何をすればよいかを知るために、minicom のソース コードをダウンロードする必要がありましたZ...Uここにそれがあります。
minicom
はパラメータを設定ファイルに保存します$HOME/.minirc.dfl
。デフォルトでは です。次の行を追加します。手紙に:
pu addcarreturn Yes
そして、minicom
すべての受信行に改行が追加されます。 最初にそのオプションを構成ファイルと一緒に保存しなかった理由はわかりませんが、今は気にしません。
以降のオプションはすべてpu
実行する必要があることに注意してくださいちょうど16文字数に応じて右側にスペースが埋め込まれます。
答え2
答え:
でミニコムを押しますCtrl+A Z
。メニューが表示されます。次にU
("Add Carriage Ret") を押し、ミニコムCR
各シンボルにシンボルが自動的に追加されますLF
。
この機能をオフにするには、もう一度これを行う必要があります。
回避策:"\r\n"
マイクロコントローラから で終わる行を送信してみてください
\r
。キャリッジリターン(ASCIIコード13または0xd)は
\n
、改行または改行(ASCIIコード10または0xa)