minicom是一個串口通信工具,就像Windows下的超級終端。可用來與串口設備通信,如調試交換機和Modem等,它的使用完全依靠鍵盤的操作。
一、安裝:
Linux各發行版因軟件管理方式不同而不同,先通過軟件管理從自己的軟件倉庫進行搜索安裝。
二、查看串口設備及文件權限
1、linux下一切皆是文件,用戶的所有操作都是對文件的操作,對串口設備操作也是如此,我們應該先確認自己對該文件有沒有讀寫權限。
openSUSE:~ # ll /dev/tty* #查看權限
linux下的usb串口命名為ttyUSB*,運行上面命令,可以知道我們的串口設備是/dev/ttyUSB0 這個。
再用lsusb命令查看:
Bus 003 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port正是我們用的usb轉串口線纜,使用的芯片是PL2303。
但是正如上面顯示,ttyUSB0這個設備是root所有的,所以,我們以普通用戶身份打開minicom是沒法訪問該文件的,使用Putty程序也是一樣那,必須以root身份運行Putty程序才能使用這個ttyUSB0設備。
三、配置
1 、安裝完畢后通過命令 “minicom” 運行軟件,命令行輸入命令回車,如下
2、minicom 使用經常遇到三個鍵的組合操作,如 “CTRL-A Z”,這表示先同時按下 CTRL 和 “A”(不區分大寫),然后松開此二鍵再按下 “Z”。按照此方法,打開幫助說明,如下圖:
3、可以看到有很多功能,這里只進行初步演示,按下 “O” 進入配置頁,也可以直接在命令行運行 "minicom -s"命令直接進入配置頁如下:
4、選擇 “Serial port setup” 選項,然后按回車進入串口設置頁,根據系統中的實際串口設備名更改成以下設置,串口COM1對應ttyS0,COM2對應ttyS1,如果直接用usb轉串口則對應ttyUSB0。
進入串口配置
輸入A配置串口驅動為/dev/ttyUSB0
輸入F將 Hardware Flow Control 設 為 NO
輸入G將 Software Flow Control 設 為 NO
輸入E配置速率和停止位,輸入C設置速率為9600 輸入Q設置停止位為8N1
回車 退出:
由於我們使用minicom作為超級終端控制路由器等設備, 而不是控制modem, 所以需要修改Modem and dialing, 將Init string, Reset string, Hang-up string設置為空. 設置完成后選擇Save setup as dfl將當前設置保存為默認設置.
5、設置好以后返回到上一級,選擇 “Save setup as dfl” 進行保存即可,然后 Exit。
6、然后重啟minicom(即直接在shell下執行minicom命令就可以進入minicom的控制台)使剛才的配置生效。
7、有時串口輸出一行信息比較多,一行顯示不下,這個時候,我們可以用minicom的本身組合鍵設置,超過一行時自動卷起。
組合鍵的用法是:先按Ctrl+A組合鍵,然后松開這兩個鍵,再按Z鍵。另外還有一些常用的組合鍵。
(1)S鍵:發送文件到目標系統中;
(2)W鍵:自動卷屏。當顯示的內容超過一行之后,自動將后面的內容換行。這個功能在查看內核的啟動信息時很有用。
(3)C鍵:清除屏幕的顯示內容;
(4)B鍵:瀏覽minicom的歷史顯示;
(5)X鍵:退出mInicom,會提示確認退出。
四、配置文件所在目錄
通過命令“minicom -s”進入配置界面,選擇Filenames and paths 選項
1、按A鍵輸入下載文件的存放位置(串口設備 ---> PC)
串口設備上的文件將被傳輸到PC機上的指定文件夾。
2、按B鍵輸入讀取上傳的文件的位置(PC ---> 串口設備)
PC機向串口設備發送文件,需要發送的文件在指定目錄下(PC機上的目錄)。做了此項配置后,每次向串口設備發送文件時,只需輸入文件名即可,無需輸入文件所在目錄的絕對路徑。
五、Linux下使用USB轉串口設備注意事項。
對沒有串口的筆記本使用者來說,在調試串口設備如交換機,路由器等經常為沒有串口而煩惱,不過現在有了USB轉串口設備。但是新的問題又出現了,比如說對於minicom下的PC機和目標機通信還是存在着一些配置問題,下面就說一下linux下USB轉串口的具體配置和問題:
注意:默認情況下很多linux發行版已經安裝了USB轉串口驅動(pl2303)。
1、openSUSE:~ # lsmod | grep usbserial
如果有usbserial,說明系統支持USB轉串口。
2、插上USB轉串口,在終端輸入命令#dmesg | grep ttyUSB0,如果出現連接成功信息,則說明Linux發行版已經識別該設備了。