minicom的使用 | 迟思堂工作室
A-A+

minicom的使用

2014-08-30 17:48 GNU/Linux系统 暂无评论 阅读 5,922 次

minicom最麻烦的便是它的使用方式,因为它与许多Windows平台下的串口工具不一样,人家只需在下拉列表中选择几个数据就OK了,它还要输入自己设置的命令,还要手动输入,麻烦!但是,在Linux下,它似乎成为唯一的串口工具了,在文本模式下它的作用尤其突出,事实上,本文正是使用ssh协议连接到Linux系统,在Secure CRT中操作的。当他习惯了minicom的使用方式,对于Linux下的许多工具的使用同样会很快熟悉(这里不讨论逻辑问题,仅作类比而已),比如make menuconfig等。
以root权限打开minicom,如果以普通用户来打开,则会提示权限不够。

# minicom

下面显示的是已经配置好的minicom。

                            +-----------------------+
|                             |
|  Initializing Modem |
|                             |
+-----------------------+

(正在初始化中)
初始化成功后,会显示如下信息:

Welcome to minicom 2.3
OPTIONS: I18n
Compiled on Mar 13 2008, 00:58:14.
Port /dev/ttyS0
Press CTRL-A Z for help on special keys

(正在运行界面,如接收到数据则会显示)
按CTRL-A Z显示操作界面,其实这个命令在显示界面中已经出现了,注意,minicom中命令不区别大小写。
可以按Enter或Esc键退出。此时按相应的键可以进行相应的配置,比如,清屏是c,配置minicom为o,等等。
在minicom运行过程中也可以按CTRL-A <char>,比如按CTRL-A O是配置minicom。
minicom所有的操作都是这种方式:Enter键确定,Esc键退出,按选项前面的字母进行相应的修改。

Welco+-------------------------------------------------------------------+
|                     Minicom Command Summary                       |
OPTIO|                                                                   |
Compi|          Commands can be called by CTRL-A <key>                   |
Port |                                                                   |
|               Main Functions                  Other Functions     |
|                                                                   |
| Dialing directory..D  run script (Go)....G | Clear Screen.......C |
| Send files.........S  Receive files......R | cOnfigure Minicom..O |
| comm Parameters....P  Add linefeed.......A | Suspend minicom....J |
| Capture on/off.....L Hangup.............H | eXit and reset.....X |
| send break.........F  initialize Modem...M | Quit with no reset.Q |
| Terminal settings..T  run Kermit.........K | Cursor key mode....I |
| lineWrap on/off....W local Echo on/off..E | Help screen........Z |
| Paste file.........Y                       | scroll Back........B |
|                                                                   |
|      Select function or press Enter for none.                     |
|                                                                   |
|             Written by Miquel van Smoorenburg 1991-1995           |
|             Some additions by Jukka Lahtinen 1997-2000            |
|             i18n by Arnaldo Carvalho de Melo 1998                 |
+-------------------------------------------------------------------+
CTRL-A Z for help |115200 8N1 | NOR | Minicom 2.3    | VT102 | Online 00:00

如果没有进行任何设置而启动minicom,则会提示如下信息:

# minicom
minicom: WARNING: configuration file not found, using defaults
Device /dev/modem access failed: 没有那个文件或目录.

因为默认是打开/dev/modem这个设备,而我的系统中是没有的。因此,需要在启动minicom的同时进行配置,使用minicom的-s选项,命令如下:

# minicom -s

下面配置的显示信息,这里选择第三个“串口设置”。

            +-----[configuration]------+
| Filenames and paths      |
| File transfer protocols  |
| Serial port setup        |
| Modem and dialing        |
| Screen and keyboard      |
| Save setup as dfl        |
| Save setup as..          |
| Exit                     |
+--------------------------+

回车,就可以看到许多的选项了,如下:

    +-----------------------------------------------------------------------+
| A -    Serial Device      : /dev/modem |
| B - Lockfile Location     : /var/lock |
| C -   Callin Program      :                                           |
| D -  Callout Program      :                                           |
| E -    Bps/Par/Bits : 115200 8N1 |
| F - Hardware Flow Control : Yes                                       |
| G - Software Flow Control : No                                        |
|                                                                       |
|    Change which setting?                                              |
+-----------------------------------------------------------------------+
| Screen and keyboard      |
| Save setup as dfl        |
| Save setup as..          |
| Exit                     |
| Exit from Minicom        |
+--------------------------+

                                                        (默认配置,未作修改)

每个选项前面都有一字母,输入该字母就可以改变这些选项了,比如,输入A,
就可以修改串口设备名称了(光标就会在/dev/modem后面闪烁,Backspace删除之,输入新的设备名称),回车,即完成这一项。
按F修改硬件流控制,我们按下F键,“Yes”便会变为“No”,——因为只有两个选择,就不用输入了,人家的设计,是如此人性化!
此外,也可以修改波特率、停止位等等。
修改后的界面是这样的:

    +-----------------------------------------------------------------------+
A -    Serial Device      : /dev/ttyS0 |
| 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?                                              |
+-----------------------------------------------------------------------+
| Screen and keyboard      |
| Save setup as dfl        |
| Save setup as..          |
| Exit                     |
| Exit from Minicom        |
+--------------------------+

(注意这里只修改了加粗字体部分)
回车,搞定。等等!还没保存呢!回到配置界面,我们选择倒数第4个“Save setup as dfl”,回车。

                                  +--------------------------+
|                                |
+-----[configura|  Configuration saved  |
| Filenames and |                                |
| File transfer    +--------------------------+
| Serial port setup            |
| Modem and dialing        |
| Screen and keyboard     |
| Save setup as dfl           |
| Save setup as..             |
| Exit                             |
| Exit from Minicom        |
+----------------------------+

它的配置文件保存在/etc目录中,如下:

# ls -l /etc/ | grep dfl
-rw-r--r--  1 root     root        121 01-18 11:07 minirc.dfl

看看它的内容:

# cat /etc/minirc.dfl
# Machine-generated file - use "minicom -s" to change parameters.
pu port             /dev/ttyS0
pu rtscts           No

下面是前几天写的程序的测试过程。
minicom接收数据:

Welcome to minicom 2.3
OPTIONS: I18n
Compiled on Mar 13 2008, 00:58:14.
Port /dev/ttyS0
Press CTRL-A Z for help on special keys
Are you going to die?
Are you going to die?
Are you going to die?
Are you going to die?
Are you going to die?
Are you going to die?
Are you going to die?
Are you going to die?

发送数据:

# ./a.out
Open the port success!
Setup the port OK!
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22
writing... write: 22

本文有些信息的格式显示得不理想,主要是由于网站的行间距产生的,在记事本或其它编辑器中是对齐的。大家将就着看吧。



如果本文对阁下有帮助,不妨赞助笔者以输出更多好文章,谢谢!
donate



标签:

给我留言