我有一個微控制器設備,它通過 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
我花了很長時間,但我終於來了!我必須下載 minicom 原始碼才能了解如何避免不斷按Ctrl+的麻煩Z,U...就是這樣。
minicom
將其參數儲存在設定檔中,預設為$HOME/.minirc.dfl
.輸入以下行,不折不扣:
pu addcarreturn Yes
現在minicom
在所有傳入線路中新增回車符。我不知道為什麼它不首先保存該選項及其配置文件,但是,哎呀,我現在不在乎!
請注意,之後的每個選項都pu
必須採取正好 16字符,右側用空格填充。
答案2
答:
在小型計算機按Ctrl+A Z
。這將顯示菜單。然後按U
(“加回車符”),然後小型計算機會自動將CR
符號新增到每個LF
符號中。
您可能需要再次執行此操作以關閉此功能。
解決方法:"\r\n"
嘗試從微控制器 發送以 結尾的線路。
\r
意味著回車符(ASCII 代碼 13 或 0xd)
\n
表示換行或者新隊(ASCII 碼 10 或 0xa)