Minicom 串口調試利器

介紹

Minicom 是 Linux 下一款常用的命令行串口調試工具。其功能與 Windows 下的超級終端相似,可以通過串口控制外部的硬件設備,通常用於對嵌入式設備進行管理。

在 Ubuntu 環境下,使用如下命令安裝:

sudo apt-get install minicom

第一次使用會出現下面的提示:warnning:minicom configuration file not found, using defaults

爲方便使用,建議根據實際使用情況進行配置。

配置

使用前需要進行配置,執行 sudo minicom -s,即可打開 minicom 並進入配置模式,使用方向鍵,選擇需要配置的項目。

在這裏插入圖片描述

常用配置

使用 minicom 最常用的配置項是 Serial port setup ,回車進入配置,可以看到多個配置項,此時光標在最下方。

  +-----------------------------------------------------------------------+
  | A -    Serial Device      : /dev/ttyUSB0                              |
  | B - Lockfile Location     : /var/lock                                 |
  | C -   Callin Program      :                                           |
  | D -  Callout Program      :                                           |
  | E -    Bps/Par/Bits       : 115200 8N1                                |
  | F - Hardware Flow Control : No                                        |
  | G - Software Flow Control : No                                        |
  |                                                                       |
  |    Change which setting?                                              |
  +-----------------------------------------------------------------------+

需要修改某個配置,則輸入對應的字母,光標即會跳轉到對應的項,編輯後,回車確認,光標再次回到最下方。

一般而言,需要修改:

  • A 配置項,指定串口設備。一般 USB 轉串口會生成設備 /dev/ttyUSBx,Arduino 和 ST-Link 則是 /dev/ttyACMx,x 是數字序號。可以執行以下命令確認下:

    ls -l /dev/tty*
    
  • E 配置項,根據實際情況,指定波特率等參數。

  • F 配置項,硬件流控,要看你的設備是否有。如果沒有,或者你不確定的話,可以先關掉,將默認的 Yes 切換爲 No。

修改好之後,回車退到上一個界面,此時記得往下,選擇 Save setup as dfl 將剛剛的修改保存爲默認配置,避免下次使用還需要再次配置。

注意:選擇 Exit 會退出配置界面,並使用該配置打開 minicom;選擇 Exit from Minicom 則會直接退出 minicom。

保存配置

如果針對某些串口設備有特殊的配置,可以選擇 Save setup as… 將其配置保存下來,然後輸入想要保存的名稱。比如輸入 test,則會在 /etc/minicom 目錄下生成一個 minirc.test 文件。以後可以直接執行以下命令:

sudo minicom test

配置權限

minicom 本身不需要 root 權限,但因爲要打開串口設備 /dev/tty* ,所以一般會需要使用 sudo 來啓動 minicom。

當然我們可以直接修改下串口設備的權限,比如 sudo chmod 666 /dev/ttyUSB0,這樣以後就不用加 sudo 了。但這種方式太生硬了,因此推薦通過配置 udev 規則的方式來達到此目的。

  • 修改配置文件,比如

    sudo vim /etc/udev/rules.d/70-ttyusb.rules
    
  • 增加一行

    KERNEL=="ttyUSB[0-9]*", MODE="0666"
    
  • 修改後,需要重新插拔設備,以重新生成設備節點。

常見問題

1. minicom 如何操作

minicom 使用前綴按鍵 Ctrl-A,即執行特殊操作時,都需要先按 Ctrl+A,再按某個按鍵使用對應的功能。

比如:

  • 查看幫助:Ctrl+A,再按 Z 鍵。
  • 退出窗口:Ctrl+A,再按 X 或 Q 鍵。

2. 如何換行顯示

按 CTRL-A Z 進入設置頁,找到 “lineWrap on/off” 項,按 W 鍵即可打開或關閉換行功能。

在這裏插入圖片描述

3. 串口無法輸入

串口有輸出,但無法輸入,通常是由於開啓了硬件流控導致的。

按 CTRL-A Z 進入設置頁,按 O 鍵選擇 “cOnfigure Minicom”項,再選擇“Serial port setup”項,按 F 鍵關閉 Hardware Flow Control。

在這裏插入圖片描述

4. 如何打開指定設備

如果日常只用一個設備,設備名固定是 /dev/ttyUSB0,那每次直接打開 minicom 即可。但是如果你需要打開多個串口設備,問題就來了。通常需要先查看下設備名,再用 -D 選項指定串口設備,例如:

minicom -D /dev/ttyUSB1

5. 如何保存調試記錄

想要保存 minicom 的調試記錄,可以使用 -C 參數指定保存 log 文件,例如:

minicom -C /tmp/minicom.log

6. 如何暫停輸出

有時候窗口打印數據較多,我們需要暫停輸出,以便於查看。按 Ctrl+A 即可暫停輸出。

Ctrl+A 是 mimicom 的特殊功能前綴按鍵,但還有另一個很實用的作用,就是暫停屏幕輸出。

7. 如何顯示時間戳

按 Ctrl+A,再按 N,即可激活時間戳,minicom 將每行 log 前添加當前系統的時間戳。

8. 如何發送和接收文件

如果設備端支持的話,按下 Ctrl+A,再按 S,即可向設備端發送文件;按 Ctrl+A,再按 R,可接收文件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章