因为minicom是一个很方便的嵌入式远程控制程序,它和putty终端软件结合能够完美的控制linux-arm系统。这里就我用的过程中出现的问题做了些积累,平时已有问题我都会解决,并且增加到博客里面。
一、首先要在linux虚拟机下安装minicom软件包,这里我下载的是方便的rpm包,安装很方便。听说tar包安装很麻烦,安装tar包的minicom之前还需要安装它依赖的其他的包。
下面是我安装的步骤:
[root@sheryuan ~]# rpm -qa|grep minicom (查找是否已经有安装的minicom残留文件)
minicom-2.1-3.i386
[root@sheryuan ~]# rpm -e --nodeps minicom-2.1-3.i386 (如果有最好将他们卸载干净)
[root@sheryuan local]# rpm -ivh minicom-2.00.0-7.i386.rpm (安装minicom)
这样minicom就安装完成了。简单吧,比tar包简单多了,不需要configure和make等就快速的完成了安装。
二、安装完了后需要配置,下面是我的配置过程
[root@sheryuan ~]# 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 ≠
≠ Exit from Minicom ≠
+--------------------------+
1、Serial port setup选项配置
选择配置项,这里我们主要配置Serial port setup选项,下面是基本配置
+-----------------------------------------------------------------------+
≠ 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? ≠
+-----------------------------------------------------------------------+
A选项Serial Device 根据我们的串口来,如果是COM1我们就选择ttyS0(不过后面说的出错也有例外),COM2口选择ttyS1等等
E选项Bps/Par/Bits串口波特率、数据位、奇偶校验未、停止位设置为115200 8N1
F选项一定要改为NO,不然终端只能打印从下位机发过来的信息,而不能接受键盘的输入
2、Modem and dialing选项配置
有些网上的资料都写到Modem and dialing的配置,不过这个可要可不要,因为不配置它和配置它没有感觉有啥区别,不过我每次都进行了配置。
下面是它的配置选项:
+--------------------[Modem and dialing parameter setup]---------------------+
≠ ≠
≠ A - Init string ......... ≠
≠ B - Reset string ........ ≠
≠ C - Dialing prefix #1.... ATDT ≠
≠ D - Dialing suffix #1.... ^M ≠
≠ E - Dialing prefix #2.... ATDP ≠
≠ F - Dialing suffix #2.... ^M ≠
≠ G - Dialing prefix #3.... ATX1DT ≠
≠ H - Dialing suffix #3.... ;X4D^M ≠
≠ I - Connect string ...... CONNECT ≠
≠ J - No connect strings .. NO CARRIER BUSY ≠
≠ NO DIALTONE VOICE ≠
≠ K - Hang-up string ...... ≠
≠ L - Dial cancel string .. ^M ≠
≠ ≠
≠ M - Dial time ........... 45 Q - Auto bps detect ..... No ≠
≠ N - Delay before redial . 2 R - Modem has DCD line .. Yes ≠
≠ O - Number of tries ..... 10 S - Status line shows ... DTE speed ≠
≠ P - DTR drop time (0=no). 1 T - Multi-line untag .... No ≠
≠ ≠
≠ Change which setting? (Return or Esc to exit) ≠
+----------------------------------------------------------------------------+
这里A、B、K三个选项后面开始本来都有相应的参数,我们需要将他们删除,设置为无参数
这样,我们的minicom就基本配置完成了
三、minicom使用过程中遇到的问题
安装和配置minicom都很简单,不过使用中途会出现一些问题,也许这些问题也是安装过程会出现的
问题1、执行minicom时locked
[root@sheryuan ~]# minicom
Device /dev/ttyS0 is locked. 或者出现 Device /dev/ttyS0 lock failed: Operation not permitted.
解决方法:这个问题一般是上次直接关闭putty,而没有关闭minicom,或者是putty死机的情况重新打开putty后会出现这种情况,相当于minicom还在后台执行,只是我们没有发觉而已,这里我们执行ps -aux 查看一下是否有minicom进程,获取minicom的进程号,kill -9命令结束后台的minicom,然后启动minicom就会解决问题了
如果遮掩不能解决问题,可能是因为系统自动在目录/var/lock中生成了lockfile而导致,我们只要进入/var/lock,删除lockfile,那么minicom又可以正常启动了。
问题2、minicom只能打印下位机信息不能接受键盘的输入
解决方法:这里是由于我们minicom配置没有配置好,重新minicom -s进行Serial port setup配置,Hardware Flow Control : No ,Software Flow Control : No,将软硬控制流都设置为NO。
问题3、不能打开串口设备
minicom: cannot open /dev/ttyUSB0
这个问题是我当时重装系统后用,再次用虚拟机时候进入minicom后出现的
解决方法:断开相应的串口然再次连接(虚拟机的右下角操作),然后进入minicom看是否有效。如果实在解决不了问题。我们最好重启一下虚拟机,然后就应该没问题了
问题4、minicom运行缓慢,甚至进不去,出现minicom: cannot open /dev/ttyUSB0: Connection timed out的打印信息。
因为我用的是USB转串口线,前段时间在虚拟中用可以不把该端口当USB口用而是当物理串口用,不过安装完系统后不能把其当物理串口,只能把该端口作为USB口用,在/dev下也出现ttyUSB0设备。不过开始在minicom中配置端口为ttyUSB0也可以连接进入arm环境,不过运行很慢,ls命令出来成列文件就有问题,而且经常出现打印的错误,重启了虚拟机几次,换了minicom的版本,还是不行,后来干脆进入不了minicom,出现minicom: cannot open /dev/ttyUSB0: Connection timed out的错误,感觉与问题3相似,但他们完全是两码事情。
解决方法:后来无意中重启物理windows系统,然后运行虚拟机后,发现串口设置中可以将USB串口设置为实际的物理串口,这样我们就不用ttyUSB0而是直接用ttyS0串口,这样下来进入minicom很顺利,而且运行很流畅。
这个问题我思考了一下,可能是我刚装物理机后,USB转串口驱动安装后,最好要重启一下系统。具体问题我现在也数不清楚。
问题5、minicom环境下黑白屏显示问题
也是我解决完问题4进入minicom出现的问题,当时感觉很郁闷,因为文件显示没有颜色区分,文件夹、文件、可执行文件等都是一种颜色,白字黑底色。这样当然不行,所以网上搜了很长时间。
进入mincom时采用这个命令minicom -c on代替minicom就可以进入彩色界面了
具体原因我也了解了网上的说法,不过配置里面没有找到相关的设置。
有些终端(如Linux控制台)支持标准ANSI转义序列色彩,minicom硬性内置了这些转义 序列的代码,但是此选项缺省为off,需要使用‘-c on’打开此项。
不过每次都输入minicom -c on 有点烦哦。使用环境变量吧,export minicom="minicom -c on" 以后想要打开对色彩的支持就输入minicom 即可
问题先就写这么多,你出现的问题与我一样,但是用我的方法不能解决也是不足为奇的。大家可以到多了解minicom的设置,到网上搜索别人的解决方法进行对比都是可行的。希望能够给予大家帮助,如果以后出现其他的问题,还会继续添加到后面。