Linux串口調(diào)試工具--minicom

因?yàn)楝F(xiàn)在電腦基本不配備串行接口舷暮,所以励两,usb轉(zhuǎn)串口成為硬件調(diào)試時(shí)的必然選擇。目前知道的地消,CH340,PL2303的驅(qū)動(dòng)是有的炉峰,在dev下的名稱是ttyUSB*。
Minicom脉执,是Linux下應(yīng)用比較廣泛的串口軟件疼阔,這里簡(jiǎn)單介紹minicom使用。

minicom配置:

安裝完成后半夷,請(qǐng)不要著急打開軟件婆廊。需先進(jìn)行配置。具體步驟如下:
查看串口設(shè)備及文件權(quán)限
linux下的所有操作面向用戶的都是文件操作巫橄,在對(duì)串口操作之前淘邻,我們應(yīng)該先確認(rèn)自己對(duì)該文件有沒有讀寫權(quán)限。

ls -l /dev/ttyUSB*

linux下的usb串口命名為ttyUSB*湘换,運(yùn)行上面命令宾舅,可以看到有幾個(gè)設(shè)備掛載。
我們這里是:

crw-rw---- 1 root dialout 188, 0 Apr 10 17:10 /dev/ttyUSB0

只有ttuUSB0.再用lsusb查看:

lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 046d:c05a Logitech, Inc. Optical Mouse M90
Bus 007 Device 002: ID 046d:c31d Logitech, Inc.
Bus 004 Device 009: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port

usb 004正是我們掛上去的usb轉(zhuǎn)串口線纜彩倚,使用的芯片是PL2303筹我。
但是正如上面顯示,ttyUSB0這個(gè)設(shè)備是root所有的帆离,所以崎溃,我們以普通用戶身份打開minicom是沒法訪問該文件的。

配置minicom的參數(shù)

運(yùn)行sudo minicom -s便進(jìn)入了minicom的配置界面盯质,使用上下鍵選擇Serial port setup,回車概而。此時(shí)光標(biāo)在“change which setting”后面停留呼巷,它的上面有如下菜單:

Serial port setup [Enter]

+-------------------------------------------------------------+

| A - Serial Device : /dev/ttyUSB0 |

| B - Lockfile Location : /var/lock |

| C - Callin Program : |

| D - Callout Program -: |

| E - Bps/Par/Bits : 9600 8N1 |

| F - Hardware Flow Control : No |

| G - Software Flow Control : No |

| |

| Change which setting? |

+-------------------------------------------------------------+

我們只需輸入上面對(duì)應(yīng)的字母,就可以進(jìn)如相應(yīng)的菜單進(jìn)行設(shè)置赎瑰。設(shè)置完成王悍,回車,光標(biāo)會(huì)回到“change which setting”后面餐曼,如此重復(fù)压储。完成按回車返回主菜單即可。
返回主菜單后源譬,選擇“Save setup as df1”集惋,將其保存為默認(rèn)設(shè)置,然后選擇 Exit退出踩娘。需退出后重新打開minicom刮刑,軟件才會(huì)使用上述參數(shù)進(jìn)行初始化。

注意:如果沒有使用USB轉(zhuǎn)串口,而是直接使用串口雷绢,那么Serial Device要配置為/dev/ttyS0泛烙。

如果上面設(shè)置順利,打開minicom

sudo minicom

重新給設(shè)備上電后翘紊,此時(shí)蔽氨,窗口里就有信息打印出來了。

minicom基本操作如下:

1)需使用Ctrl+a 進(jìn)入設(shè)置狀態(tài)

2)按z進(jìn)入設(shè)置菜單

(1)O鍵:打開配置選項(xiàng)帆疟;

(2)W鍵:自動(dòng)卷屏鹉究。當(dāng)顯示的內(nèi)容超過一行之後,自動(dòng)將後面的內(nèi)容換行鸯匹。這個(gè)功能在查看內(nèi)核的啓動(dòng)信息時(shí)很有用坊饶。

(3)C鍵:清除屏幕的顯示內(nèi)容;

(4)B鍵:瀏覽minicom的歷史顯示殴蓬;

(5)X鍵:退出minicom匿级,會(huì)提示確認(rèn)退出。

配置選項(xiàng)目錄

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/wonux |

| B - Upload directory : /tmp |

| C - Script directory : /root/minicom |

| D - Script program : runscript or /bin/bash |

| E - Kermit program : |

| F - Logging options |

| |

| Change which setting? |

+-----------------------------------------------------------------------+

  • C - Script文件的存放位置:
    <C-a> g運(yùn)行腳本時(shí)的路徑 染厅。
  • D - 選擇腳本程序:
    默認(rèn)runscript,也可以選擇bash腳本格式痘绎。

minicom使用

命令行啟動(dòng)minicom的參數(shù)

更多的參數(shù),參見"man minicom"的輸出肖粮。

-s 
設(shè)置孤页。 root 使用此選項(xiàng)在/etc/minirc.dfl中編輯系統(tǒng)范圍的缺省值。使用此參數(shù)后涩馆,minicom 將不進(jìn)行初始化行施,而是直接進(jìn)入配置菜單。如果因?yàn)槟愕南到y(tǒng)被改變魂那,或者第一次運(yùn)行minicom時(shí)蛾号,minicom不能啟動(dòng),這個(gè)參數(shù)就會(huì)很有用涯雅。對(duì)于多數(shù)系統(tǒng)鲜结,已經(jīng)內(nèi)定了比較合適的缺省值。 
-o 
不進(jìn)行初始化活逆。minicom 將跳過初始化代碼精刷。如果你未復(fù)位(reset)就退出了minicom,又想重啟一次會(huì)話(session)蔗候,那么用這個(gè)選項(xiàng)就比較爽(不會(huì)再有錯(cuò)誤提示:modem is locked ---- 注)怒允。但是也有潛在的危險(xiǎn):由于未對(duì)lock文件等進(jìn)行檢查,因此一般用戶可能會(huì)與uucp之類的東東發(fā)生沖突......也許以后這個(gè)參數(shù)會(huì)被去掉⌒庖#現(xiàn)在姑且假定误算,使用modem的用戶對(duì)自己的行為足夠負(fù)責(zé)仰美。 
-m 
用Meta或Alt鍵重載命令鍵。在1.80版中這是缺省值儿礼,也可以在minicom 菜單中配置這個(gè)選項(xiàng)咖杂。不過若你一直使用不同的終端,其中有些沒有Meta或Alt鍵蚊夫,那么方便的做法還是把缺省的命令鍵設(shè)置為Ctrl-A诉字,當(dāng)你有了支持 Meta或Alt鍵的鍵盤時(shí)再使用此選項(xiàng)。Minicom假定你的Meta鍵發(fā)送ESC前綴知纷,而不是設(shè)置字符最高位的那一種(見下)壤圃。 
-M 
跟“-m”一樣,但是假定你的Meta鍵設(shè)置字符高端的第八位(發(fā)送128+字符代碼)琅轧。 
-z 
使用終端狀態(tài)行伍绳。僅當(dāng)終端支持,并且在其termcap或terminfo數(shù)據(jù)庫(kù)入口中有相關(guān)信息時(shí)才可用乍桂。 
-l 
逐字翻譯 高位被置位的字符冲杀。使用此標(biāo)志, minicom將不再嘗試將IBM行字符翻譯為ASCII碼睹酌,而是將其直接傳送权谁。許多PC-Unix克隆不經(jīng)翻譯也能正確顯示它們(Linux使用專門的模式:Coherent和Sco)。 
-w 
在啟動(dòng)的時(shí)候就自動(dòng)換行憋沿,這樣啟動(dòng)之后不用運(yùn)行<C-a> w進(jìn)行設(shè)置了旺芽,詳細(xì)參考后面。 
-a 
特性使用辐啄。 有些終端采章,特別是televideo終端, 有個(gè)很討厭的特性處理(串行而非并行)壶辜。minicom缺省使用‘-a on’悯舟,但若你在用這樣的終端,你就可以(必須!)加上選項(xiàng)‘-a off’士复。尾字‘on’或‘off’需要加上。 
-t 
終端類型翩活。使用此標(biāo)志阱洪, 你可以重載環(huán)境變量TERM, 這在環(huán)境變量MINICOM 中使用很方便菠镇; 你可以創(chuàng)建一個(gè)專門的 termcap 入口以備minicom 在控制臺(tái)上使用冗荸,它將屏幕初始化為raw模式, 這樣利耍,連同‘-l’標(biāo)志一起蚌本,就可以不經(jīng)翻譯而顯示IBM行字符盔粹。 
-c 
顏色使用。些終端(如Linux控制臺(tái))支持標(biāo)準(zhǔn)ANSI轉(zhuǎn)義序列色彩程癌。由于termcap顯然沒有對(duì)于色彩的支持舷嗡,因而minicom 硬性內(nèi)置了這些轉(zhuǎn)義序列的代碼。所以此選項(xiàng)缺省為off嵌莉。使用‘-c on’可以打開此項(xiàng)进萄。把這個(gè)標(biāo)志,還有‘-m’放入MINICOM環(huán)境變量中是個(gè)不錯(cuò)的選擇锐峭。 
-S 
腳本中鼠。 啟動(dòng)時(shí)執(zhí)行給定名字的腳本。到目前為止沿癞,還不支持將用戶名和口令傳送給啟動(dòng)腳本援雇。如果你還使用了‘-d’選項(xiàng),以在啟動(dòng)時(shí)開始撥號(hào)椎扬,此腳本將在撥號(hào)之前運(yùn)行惫搏,撥號(hào)項(xiàng)目入口由‘-d’指明。 
-p 
要使用的偽終端盗舰。 它超載配置文件中定義的終端端口晶府,但僅當(dāng)其為偽tty設(shè)備。提供的文件名必須采用這樣的形式:(/dev/)tty[p-z][0-f] 
-C 
文件名钻趋。 啟動(dòng)時(shí)打開捕獲輸出到文件川陆。 
-8 
不經(jīng)修改地傳送8位字符÷唬“連續(xù)”意指未對(duì)地點(diǎn)/特性進(jìn)行真正改變较沪,就不插入地點(diǎn)/特性控制序列。此模式用于顯示8位多字節(jié)字符失仁,比如日本字(TMD尸曼!應(yīng)該是中國(guó)字!!)。不是8位字符的語言都需要(例如顯示芬蘭文字就不需要這個(gè))萄焦。 

命令行參數(shù)使用舉例

  • -w: 啟動(dòng)minicom的時(shí)候控轿,開啟自動(dòng)換行:

如果不加這個(gè)項(xiàng),那么在minicom和pc交互的時(shí)候中鍵入命令超過一行時(shí)候會(huì)被截?cái)喾鞣猓ㄟ@時(shí)候可以通過<C-a> w來開和關(guān)切換截?cái)嘈泄δ埽?

  • -c on: 啟動(dòng)minicom的時(shí)候茬射,顯示顏色:

這樣,啟動(dòng)之后我們會(huì)發(fā)現(xiàn)顯示的內(nèi)容不是黑白的了冒签。

  • -C <filename>: 啟動(dòng)minicom的時(shí)候在抛,自動(dòng)創(chuàng)建日志捕捉文件<filename>:

這樣,啟動(dòng)之后萧恕,所在minicom的輸出都會(huì)在<filename>中保留一份,如果原來文件存在刚梭,則追加肠阱,不存在則創(chuàng)建一個(gè)。

  • -m: 啟動(dòng)minicom的時(shí)候朴读,將命令鍵修改成Meta鍵(<C-a>變成[Alt]或者[ESC]等):

這樣屹徘,我們可以取代用<C-a> *發(fā)送命令的方式,將<C-a>替換成[Alt]或者[ESC].

  • -S <filename>: 啟動(dòng)minicom的時(shí)候磨德,指定運(yùn)行的腳本:

這里缘回,<filename>是你的腳本文件的名字,應(yīng)該指定絕對(duì)路徑典挑,否則就會(huì)在你啟動(dòng)minicom的路徑下尋找酥宴。

minicom的交互使用

Minicom是基于窗口的。要彈出所需功能的窗口您觉,可按下Ctrl-A (以下使用C-A來表示Ctrl-A),然后再按各功能鍵(a-z或A-Z)拙寡。先按C-A,再按'z'琳水,將出現(xiàn)一個(gè)幫助窗口肆糕,提供了所有命令的簡(jiǎn)述。配置 minicom(-s 選項(xiàng)在孝,或者C-A诚啃、O)時(shí),可以改變這個(gè)轉(zhuǎn)義鍵私沮,不過現(xiàn)在我們還是用Ctrl-A吧始赎。
這里,只給出很少的命令仔燕,更多的交互命令參見"<C-a> z"的幫助輸出造垛。

  • ==查看幫助==:<C-a> z.
    這樣會(huì)顯示所命令列表,便于查找晰搀。
  • ==配置選項(xiàng)==:<C-a> o.
  • 回到shell: <C-a> j.
    這樣minicom會(huì)在后臺(tái)stop,直到fg將它調(diào)到前臺(tái)五辽。
  • ==開/關(guān)捕捉minicom輸出到文件==:<C-a> l.
    這樣會(huì)打開/關(guān)閉捕捉輸出功能,捕捉的輸出會(huì)存放在一個(gè)你選擇的文件中外恕。
  • ==運(yùn)行腳本==:<C-a> g:
  • 退出minicom:<C-a> x.
    這樣會(huì)退出minicom.

常用配置總結(jié):

minicom -s 或啟動(dòng)minicom之后運(yùn)行<C-a> o來進(jìn)行配置杆逗。

  • 選擇Serial port setup
    配置其中的如下配置項(xiàng):
A - Serial Device : /dev/ttyUSB0 
E - Bps/Par/Bits : 115200 8N1 
F - Hardware Flow Control : No 
G - Software Flow Control : No 

  • 選擇Filenames and paths
    配置其中的如下配置項(xiàng):
C - Script directory : /root/minicom
D - Script program : /bin/bash

C:腳本文件的存放位置: <C-a> g運(yùn)行腳本時(shí)的路徑 。
D:選擇腳本程序: 默認(rèn)runscript,也可以選擇bash腳本格式鳞疲。

關(guān)于minicom的腳本:

可以參考man手冊(cè)man runscript.交互命令中可以運(yùn)行"<C-a> G"來運(yùn)行腳本罪郊。

  • 注釋是'#'開始的。
  • send命令中的字符串建丧,有\(zhòng)c就不會(huì)發(fā)送默認(rèn)的\r了排龄。例:send "ls \c"就不會(huì)自動(dòng)回車波势,這里'\c'也可以在前面翎朱。
    目前發(fā)現(xiàn)橄维,腳本功能比較弱。在minicom原代碼中有簡(jiǎn)單的例子:scriptdemo和unixlogin,可以直接在linux運(yùn)行runscript.
  • 可以指定minicom的腳本運(yùn)行程序:
    作為腳本解釋器的程序拴曲。缺省是“runscript”争舞,也可用其它的東東(如: /bin/sh 或 "expect",這樣就可以用shell或者其他的腳本了_)澈灼。Stdin和Stdout連接到modem竞川,Stderr連接到屏幕。

參考資料

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末叁熔,一起剝皮案震驚了整個(gè)濱河市委乌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌荣回,老刑警劉巖遭贸,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異心软,居然都是意外死亡壕吹,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門删铃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來耳贬,“玉大人,你說我怎么就攤上這事猎唁≈渚ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵胖秒,是天一觀的道長(zhǎng)缎患。 經(jīng)常有香客問我,道長(zhǎng)阎肝,這世上最難降的妖魔是什么挤渔? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮风题,結(jié)果婚禮上判导,老公的妹妹穿的比我還像新娘。我一直安慰自己沛硅,他們只是感情好眼刃,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著摇肌,像睡著了一般擂红。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上围小,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天昵骤,我揣著相機(jī)與錄音树碱,去河邊找鬼。 笑死变秦,一個(gè)胖子當(dāng)著我的面吹牛成榜,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蹦玫,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼赎婚,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了樱溉?” 一聲冷哼從身側(cè)響起挣输,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎福贞,沒想到半個(gè)月后歧焦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡肚医,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年绢馍,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片肠套。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡舰涌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出你稚,到底是詐尸還是另有隱情瓷耙,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布刁赖,位于F島的核電站搁痛,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏宇弛。R本人自食惡果不足惜鸡典,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望枪芒。 院中可真熱鬧彻况,春花似錦、人聲如沸舅踪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)抽碌。三九已至悍赢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背左权。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工瞒斩, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人涮总。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像祷舀,于是被迫代替她去往敵國(guó)和親瀑梗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 一裳扯、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 5,746評(píng)論 0 10
  • [toc] 因?yàn)楝F(xiàn)在電腦基本不配備串行接口抛丽,所以,usb轉(zhuǎn)串口成為硬件調(diào)試時(shí)的必然選擇饰豺。目前知道的亿鲜,PL2303的...
    孤逐王閱讀 8,520評(píng)論 0 7
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,383評(píng)論 0 5
  • 第一章 1.Linux是一套免費(fèi)使用和自由傳播的類UNIX操作系統(tǒng),它可以基于Intel x86系列處理器以及Cy...
    yansicing閱讀 5,435評(píng)論 0 9
  • [TOC] ##Assoc 顯示或修改文件擴(kuò)展名關(guān)聯(lián) Assoc [.Ext[=[Filetype]]] .Ex...
    btijjj閱讀 345評(píng)論 0 1