共計 8610 個字符,預計需要花費 22 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章主要介紹 Linux 下怎么使用 minicom USB 串口,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Linux 下查看串口信息
查看串口是否可用,可以對串口發送數據比如對 com1 口,echo helloworld /dev/ttyS0
查看串口名稱使用 ls -l /dev/ttyS* 一般情況下串口的名稱全部在 dev 下面,如果你沒有外插串口卡的話默認是 dev 下的 ttyS*, 一般 ttyS0 對應 com1,ttyS1 對應 com2,當然也不一定是必然的;
查看 usb 設備 lsusb
查看串口驅動:cat /proc/tty/drivers/serial
[root@dy root]# cat /proc/tty/driver/* serinfo:1.0 driver revision: 0: uart:MPC52xx PSC mmio:0x80011300 irq:40 tx:10 rx:129 CTS|DSR|CD usbserinfo:1.0 driver:2.0
例如,在終端輸入:dmesg | grep tty 顯示從系統啟動到現在串口插入拔出的信息,讓后我在電腦上插入一個 usb 轉 rs232 線,再在終端輸入:dmesg | grep tty,會顯示:usb 2-2.1:pl2303 converter now attached to ttyUSB0; 可以通過此法確定我新插入的串口線對應的串口號。
minicom 是 linux 下串口通信的軟件,它的使用完全依靠鍵盤的操作,雖然沒有“超級終端”那么易用,但是使用習慣之后讀者將會體會到它的高效與便利,下面將講解 minicom 的安裝和配置。
一、安裝 minicom:
使用以下命令:
# sudo apt-get install minicom
以下為安裝的詳細信息:
# sudo apt-get install minicom
正在讀取軟件包列表 … 完成
正在分析軟件包的依賴關系樹
正在讀取狀態信息 … 完成
將會安裝下列額外的軟件包:
lrzsz
下列【新】軟件包將被安裝:
lrzsz minicom
共升級了 0 個軟件包,新安裝了 2 個軟件包,要卸載 0 個軟件包,有 2 個軟件未被升級。
需要下載 270kB 的軟件包。
解壓縮后會消耗掉 1389kB 的額外空間。
您希望繼續執行嗎?[Y/n]y
獲取:1 http://ubuntu.uestc.edu.cn hardy/universe lrzsz 0.12.21-4.1 [97.0kB]
獲取:2 http://ubuntu.uestc.edu.cn hardy/main minicom 2.3~rc1-2 [173kB]
下載 270kB,耗時 1s (184kB/s)
選中了曾被取消選擇的軟件包 lrzsz。
(正在讀取數據庫 … 系統當前總共安裝有 101203 個文件和目錄。)
正在解壓縮 lrzsz (從 …/lrzsz_0.12.21-4.1_i386.deb) …
選中了曾被取消選擇的軟件包 minicom。
正在解壓縮 minicom (從 …/minicom_2.3~rc1-2_i386.deb) …
正在處理用于 man-db 的觸發器 …
正在設置 lrzsz (0.12.21-4.1) …
正在設置 minicom (2.3~rc1-2) …
PS:ubuntu 現在做的真是沒話說,相當的實用和智能啊,把相關的依賴包 (lrzsz) 都相互關聯并且安裝上去了。但是如果使用 ubuntu 8.10 以前的版本可能就要單獨安裝 lrzsz 軟件包了(lrzsz 包括了 x /y/zmodem 協議)。也就是說,在通過串口用 xmodem 協議燒寫內核 時會提示沒有 xmodem 協議,所以這時就要安裝 lrzsz 軟件包了:
# sudo apt-get install lrzsz
然后就可以正常地使用 minicom 通過串口燒寫內核了。
二、配置 minicom:
1、在使用 minicom 之前,首先要保證你對串口有讀 / 寫的權限。我們知道,Linux 的設備對應于 /dev/ 目錄中的某個文件,串口 COM1 對應 ttyS0,COM2 對應 ttyS1,使用以下命令來查看你對 COM1 的權限:
$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 2009-08-01 11:05 /dev/ttyS0
可以看到,它的屬主是 root。
2、正如在 Windows 中要配置超級終端一樣,在使用 minicom 之前,先要對串口進行配置。
運行
# sudo minicom
-s
選擇 Serial port setup,此時所示光標在 Change which setting 上,鍵入 A,此時光標移到第 A 項對應處:串口 COM1 對應 ttyS0,COM2 對應 ttyS1(注意選擇)。
然后對波特率,數據位和停止位進行配置,鍵入 E,波特率選為 115200 8N1(數據位 8,奇偶校驗無,停止位 1),硬 / 軟件流控制分別鍵入 F 和 G,并且都選 No。在確認配置正確之后,可鍵入回車返回上級配置界面,并 將其保存為默認配置(即 save setup as dfl)。***,選擇 Exit from Minicom 命令退出。
注意:非正常關閉 minicom,會在 /var/lock 下創建幾個文件 LCK*,這幾個文件阻止了 minicom 的運行,將它們刪除后即可恢復
具體的配置信息如下所示:
Serial port setup [Enter]
+-------------------------------------------------------------+ | 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? | +-------------------------------------------------------------+
注意:如果沒有使用 USB 轉串口,而是直接使用串口,那么 Serial Device 要配置為 /dev/ttyS0。
然后重啟 minicom(即直接在 shell 下執行 minicom 命令就可以進入 minicom 的控制臺)使剛才的配置生效,再連上開發板的串口線后,就可以在 minicom 中打印出正確的串口信息了。在控制臺下通過組合鍵 Ctrl+A Z 可以進入 minicom 菜單。
組合鍵的用法是:先按 Ctrl+ A 組合鍵,然后松開這兩個鍵,再按 Z 鍵。另外還有一些常用的組合鍵。
(1)S 鍵:發送文件到目標系統中;
(2)W 鍵:自動卷屏。當顯示的內容超過一行之后,自動將后面的內容換行。這個功能在查看內核的啟動信息時很有用。
(3)C 鍵:清除屏幕的顯示內容;
(4)B 鍵:瀏覽 minicom 的歷史顯示;
(5)X 鍵:退出 mInicom,會提示確認退出。
3、配置文件所在目錄
Ctrl + A — O
+-----[configuration]------+ | Filenames and paths | | File transfer protocols -| | Serial port setup | | Modem and dialing | | Screen and keyboard | | Save setup as dfl | | Save setup as.. | | Exit | +--------------------------+
選擇 Filenames and paths
+-----------------------------------------------------------------------+ | A - Download directory : /home/crliu | | B - Upload directory : /tmp | | C - Script directory : | | D - Script program : runscript | | E - Kermit program : | | F - Logging options | | | | Change which setting? | +-----------------------------------------------------------------------+
(1)A – download 下載文件的存放位置(開發板 — PC)
開發板上的文件將被傳輸到 PC 機上的 /home/crliu 目錄下。
(2)B – upload 從此處讀取上傳的文件(PC — 開發板)
PC 機向開發板發送文件,需要發送的文件在 /tmp 目錄下(PC 機上的目錄)。做了此項配置后,每次向開發板發送文件時,只需輸入文件名即可,無需輸入文件所在目錄的絕對路徑。
三、Linux 下如何使用 USB 轉串口設備
對沒有串口的筆記本持有者來說,做硬件開發經常為沒有串口而煩惱,不過現在有了 USB 轉串口設備。但是新的問題又出現了,比如說對于 Minicom 下的 PC 機和目標機通信還是存在著一些配置問題,下面就說一下 linux 下 USB 轉串口的具體配置和問題:
注意:默認情況下 ubuntu 已經安裝了 USB 轉串口驅動(pl2303)。
1、# lsmod | grep usbserial
如果有 usbserial,說明系統支持 USB 轉串口。
2、插上 USB 轉串口,在終端輸入命令 #dmesg | grep ttyUSB0,如果出現連接成功信息,則說明 ubuntu 系統已經識別該設備了。
注意:虛擬機環境下的 ubuntu 默認情況下是不能自動識別的,需要在虛擬機窗口右下角點擊 Prolific USB-Serial Controller,然后選擇 Connect (Disconnect from Host),這樣才能被 ubuntu 系統識別。
3、在上面 minicom 的配置中設置 Serial Device: /dev/ttyUSB0,重啟開發板,這樣基本上就可以正常使用 minicom 來打印串口信息了。
4、問題
如果經過上面的步驟 minicom 還是不能正常工作,出現如下錯誤提示:
# sudo minicom
minicom: cannot open /dev/ttyUSB0: 沒有該文件或目錄
這時可以嘗試換一個 USB 口,然后再次操作以上流程。如果還是提示這個錯誤,那么可以使用下面的方法來解決。
這種方法是在硬件里添加串口設備,將 window 下的設備添加到虛擬機里。也就是 說,要在 window 獲得焦點的時 候加入 usb 轉串口,然后再到虛擬機下將這個設備添加進去,這時就可以在 ubuntu 下查看添加的這個設備的設備文件,一般是 /dev/tty0 或者 /dev/ttyS0。
這種方法其實是將 window 的 usb 轉串口作為虛擬機的串口,所以就是 tty0 或者 ttyS0 了,而不是真正在 ubuntu 下加載的。
具體步驟如下:
(1)打開虛擬機環境,然后選擇 VM– Settings(Ctrl+D)。
(2)點 Add,進入添加硬件向導,選擇 Serial Port,點 Next。
(3)選擇 *** 項 Use physical port on the host,點 Next。
(4)選擇 Physical serial port 方式為 Auto detect,勾選 Connect at power on,點 Finish 完成。
(5)然后在上面 minicom 的配置中設置 Serial Device: /dev/tty0 或者 Serial Device: /dev/ttyS0,重啟開發板,這樣就可以正常運行 minicom 了。
Linux 下如何使用 USB 轉串口設備
對沒有串口的筆記本持有者來說,做硬件開發經常為沒有串口而煩惱,不過現在有了 USB 轉串口設備。但是新的問題又出現了,比如說對于 Minicom 下的 PC 機和目標機通信還是存在著一些配置問題,下面就說一下 linux 下 USB 轉串口的具體配置和問題:
注意:默認情況下 ubuntu 已經安裝了 USB 轉串口驅動(pl2303)。
1、# lsmod | grep usbserial
如果有 usbserial,說明系統支持 USB 轉串口。
2、插上 USB 轉串口,在終端輸入命令 #dmesg | grep ttyUSB0,如果出現連接成功信息,則說明 ubuntu 系統已經識別該設備了。
注意:虛擬機環境下的 ubuntu 默認情況下是不能自動識別的,需要在虛擬機窗口右下角點擊 Prolific USB-Serial Controller,然后選擇 Connect (Disconnect from Host),這樣才能被 ubuntu 系統識別。
3、在上面 minicom 的配置中設置 Serial Device: /dev/ttyUSB0,重啟開發板,這樣基本上就可以正常使用 minicom 來打印串口信息了。
4、問題
如果經過上面的步驟 minicom 還是不能正常工作,出現如下錯誤提示:
# sudo minicom
minicom: cannot open /dev/ttyUSB0: 沒有該文件或目錄
這時可以嘗試換一個 USB 口,然后再次操作以上流程。如果還是提示這個錯誤,那么可以使用下面的方法來解決。
這種方法是在硬件里添加串口設備,將 window 下的設備添加到虛擬機里。也就 是說,要在 window 獲得焦點的時 候加入 usb 轉串口,然后再到虛擬機下將這個設備添加進去,這時就可以在 ubuntu 下查看添加的這個設備的設備文件,一般是 /dev/tty0 或者 /dev/ttyS0。
這種方法其實是將 window 的 usb 轉串口作為虛擬機的串口,所以就是 tty0 或者 ttyS0 了,而不是真正在 ubuntu 下加載的。
具體步驟如下:
(1)打開虛擬機環境,然后選擇 VM– Settings(Ctrl+D)。
(2)點 Add,進入添加硬件向導,選擇 Serial Port,點 Next。
(3)選擇 *** 項 Use physical port on the host,點 Next。
(4)選擇 Physical serial port 方式為 Auto detect,勾選 Connect at power on,點 Finish 完成。
(5)然后在上面 minicom 的配置中設置 Serial Device: /dev/tty0 或者 Serial Device: /dev/ttyS0,重啟開發板,這樣就可以正常運行 minicom 了。
————————
使用
Minicom 是基于窗口的。要彈出所需功能的窗口,可按下 Ctrl-A (以下
使用 C - A 來表示 Ctrl-A), 然后再按各功能鍵(a- z 或 A -Z)。先按 C -A,再
按 z,將出現一個幫助窗口,提供了所有命令的簡述。配置 minicom
(-s 選項,或者 C -A、O)時,可以改變這個轉義鍵,不過現在我們還
是用 Ctrl- A 吧。
以下鍵在所有菜單中都可用:
UP arrow-up 或 k
DOWN arrow-down 或 j
LEFT arrow-left 或 h
RIGHT arrow-right 或 l
CHOOSE Enter
CANCEL ESCape.
屏幕分為兩部分:上部 24 行為終端模擬器的屏幕。ANSI 或 VT100 轉義
序列在此窗口中被解釋。若底部還剩有一行,那么狀態行就放在這兒;
否則,每次按 C - A 時狀態行出現。在那些有專門狀態行的終端上將會
使用這一行,如果 termcap 信息完整且加了 - k 標志的話。
下面按字母順序列出可用的命令:
C-A 兩次按下 C - A 將發送一個 C - A 命令到遠程系統。如果你把 轉義字符
換成了 C - A 以外的什么字符,則對該字符的工作方式也類似。
A 切換 Add Linefeed 為 on/off。若為 on,則每上回車鍵在屏幕上
顯示之前,都要加上一個 linefeed。
B 為你提供一個回卷 (scroll back) 的緩沖區。可以按 u 上卷,按 d 下卷,
按 b 上翻一頁,按 f 下翻一頁。也可用箭頭鍵和翻頁鍵。可用 s 或 S 鍵
(大小寫敏感)在緩沖區中查找文字串,按 N 鍵查找該串的下一次出現。
按 c 進入引用模式,出現文字光標,你就可以按 Enter 鍵指定起始行。
然后回卷模式將會結束,帶有前綴 的內容將被發送。
C 清屏。
D 撥一個號,或轉向撥號目錄。
E 切換本地回顯為 on/off (若你的 minicom 版本支持)。
F 將 break 信號送 modem。
G 運行腳本(Go)。運行一個登錄腳本。
H 掛斷。
I 切換光標鍵在普通和應用模式間發送的轉義序列的類型(另參下面
關于狀態行的注釋)。
J 跳至 shell。返回時,整個屏幕將被刷新(redrawn)。
K 清屏,運行 kermit, 返回時刷新屏幕。
L 文件捕獲開關。打開時,所有到屏幕的輸出也將被捕獲到文件中。
M 發送 modem 初始化串。若你 online,且 DCD 線設為 on,則 modem 被初始化
前將要求你進行確認。
O 配置 minicom。轉到配置菜單。
P 通信參數。允許你改變 bps 速率,奇偶校驗和位數。
Q 不復位 modem 就退出 minicom。如果改變了 macros,而且未存盤,
會提供你一個 save 的機會。
R 接收文件。從各種協議 (外部) 中進行選擇。若 filename 選擇窗口和下
載目錄提示可用,會出現一個要求選擇下載目錄的窗口。否則將使用
Filenames and Paths 菜單中定義的下載目錄。
S 發送文件。選擇你在接收命令中使用的協議。如果你未使文件名選擇
窗口可用(在 File Transfer Protocols 菜單中設置),你將只能在一
個對話框窗口中寫文件名。若將其設為可用,將彈出一個窗口,顯示
你的上傳目錄中的文件名。可用空格鍵為文件名加上或取消標記,用
光標鍵或 j / k 鍵上下移動光標。被選的文件名將高亮顯示。目錄名在
方括號中顯示,兩次按下空格鍵可以在目錄樹中上下移動。***,按
Enter 發送文件,或按 ESC 鍵退出。
T 選擇終端模擬:ANSI(彩色)或 VT100。此處還可改變退格鍵,打開或
關閉狀態行。
W 切換 linewrap 為 on/off。
X 退出 minicom,復位 modem。如果改變了 macros,而且未存盤,會提供
你一個 save 的機會。
Z 彈出 help 屏幕。
2.1 修改 在終端輸入如下指令
[plain] view plaincopyprint?
sudo nano /boot/cmdline.txt
[plain] view plain copy
print?
sudo nano /boot/cmdline.txt
打開后將紅色部分刪除
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
刪除后,變成如下結果保存退出
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
2.2 修改 /etc/inittab
在終端輸入如下指令
$sudo nano /etc/inittab
打開后將 *** 一行注釋掉 在前面加上一個 #號即可
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
3. 修改完畢后,需要在樹莓派上安裝一個 minicom,這里的 minicom 是 Linux 平臺的串口調試工具,相當于 Windows 上的串口調試助手
3.1 安裝 minicom,輸入以下命令
$ sudo apt-get install minicon
3.2 安裝完畢后需要對 minicom 進行配置,此處配置文件需要 root 權限,不然無法保存配置的參數,那么在命令行中輸入如下命令
$ sudo passwd root
執行此命令后系統會提示輸入兩遍的 root 密碼,輸入你想設的密碼即可,然后在執行
$ sudo passwd --unlock
這樣就解鎖了 root 賬戶
3.3 切換到 root 賬戶,再次打開命令行,輸入 minicom 參數配置命令
$ minicom -s
在主菜單的第三項 Serial Port Setup, 進入下一級菜單,根據菜單項的提示字母選擇,按 A 將串口設備修改為 /dev/ttyAMA0
, 按 E 將波特率修改為 9600 或者自己需要的數值,設置好以后返回主菜單,選擇 Save Setup as Dfl
然后選擇 Exit,此時如果正常的話就可以進行串口收發了,這里我的樹莓派是連接到一臺 PC 上去的,我利用 PC 的串口調試軟件成功進行了收發
tips: 按 CTRL+A, 接著按 Z 可以查看 minicom 的幫助
以上是“Linux 下怎么使用 minicom USB 串口”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注丸趣 TV 行業資訊頻道!
向 AI 問一下細節
丸趣 TV 網 – 提供最優質的資源集合!