简介
Linux下的Minicom的功能与Windows下的超级终端功能相似,可以通过串口控制外部的硬件设备.适于在linux通过超级终端对嵌入式设备行管理.同样也可以使用minicom对外置Modem 进行控制.
Minicom的配置
第一次 启动时: 需对minicom进行配置: 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 |
+--------------------------+
选serial port setup
进入串口配置
输入A配置串口驱动为/dev/ttyUSB0(说明/dev/ttyUSB0 对应为你连接开发板的端口,因为我是笔记本电脑的,所以用了USB转串口工具,至于连接到哪个设备,可以通过 ls -l /dev/ttyUSB*查看)
mystery@lcw:/var/lock$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Apr 4 14:49 /dev/ttyUSB0
输入E配置速率为115200 8N1
输入F将 Hardware Flow Control 设 为 NO(这一步很重要,不然可能连接不上)
回车 退出
+-----------------------------------------------------------------------+
| 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? |
+-----------------------------------------------------------------------+
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
| Exit from Minicom |
+--------------------------+
由于我们使用minicom作为超级终端控制路由器等设备, 而不是控制modem, 所以需要修改Modem and dialing, 将Init string, Reset string, Hang-up string设置为空.
+--------------------[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) |
+----------------------------------------------------------------------------+
设置完成后选择Save setup as dfl将当前设置保存为默认设置.
在配置菜单 选Save setup as df1保存(一定要记得这一步)
选Exit退出
+-----[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 |
+--------------------------+
下次在输入minicon 即可直接进入。
命令minicom是进入串口超级终端画面,而minicom -s为配置minicom。
Welcome to minicom 2.5
OPTIONS: I18n
Compiled on May 2 2011, 00:39:27.
Port /dev/ttyUSB0
Press CTRL-A Z for help on special keys
c5
Please select function :
0 : USB download file
1 : Uart download file
2 : Write Nand flash with download file
3 : Load Pragram from Nand flash and run
4 : Erase Nand flash regions
5 : Write NOR flash with download file
6 : Set boot params
7 : Set AutoBoot parameter,1:linux 2:wince
8 : Set Lcd Display,1:DH3.5' 2:DH4.3' 3:QC7.0' 4:QC8.0' 5:VGA
注意:非正常关闭minicom,会在/var/lock下创建几个文件LCK*,这几个文件阻止了minicom的运行,将它们删除后即可恢复
mystery@lcw:/var/lock$ ls
LCK..tty8 whoopsie
mystery@lcw:/var/lock$ sudo rm LCK..tty8
[sudo] password for mystery:
mystery@lcw:/var/lock$ ls
whoopsie
------------------------------------------------------------
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时状态行出现。
下面按字母顺序列出可用的命令:
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屏幕。
------------------------------------------------------------
Minicom的测试
现在来测试下吧,前面测试了非操作系统的外围资源,这里就简单测试下NAND FLASH里面的linux系统吧,嘿嘿
1.10M 网络接口测试
首先,当然是用交叉网线将PC的网络接口与FS2410的10M网线接口(T1)连接起来啦
然后启动NAND FLASH里面的linux系统
查看一下开发板中linux的IP地址
[root@(none) /]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:02:50:10:08
inet addr:192.168.2.223 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:53 Base address:0x300
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
[root@(none) /]#
如上所示,开发板的IP地址是:inet addr:192.168.2.223
注意,开发板的IP地址要与PC的IP地址设置为同一网段,所以这里我把PC机的内网IP地址设置为192.168.2.100
IP地址配置好后,就可以通过ping命令来测试网络了,如图所示
linux下的ping命令默认是一直发送数据包,所以这里需要自己按键Ctrl+C(即发送中止信号给内核,以结束进程)
和期待中的一样,这里发送了9个数据包,收到9个数据包,0%的丢包率,嘿嘿!
2.USB HOST测试
将U盘插入USB HOST接口J17,linux将检测U盘,检测到后,自动给U盘分配一个设备结点,如下所示
[root@(none) tmp]# mkdir /tmp/usb
<vfat /dev/scsi/host0/bus0/target0/lun0/part1 /tmp/usb/
[root@(none) tmp]# cd /tmp/usb/
[root@(none) usb]# ls
README.diskdefines install
Uni-USB-Installer-Copying.txt ldlinux.sys
Uni-USB-Installer-Readme.txt license.txt
autorun.inf md5sum.txt
boot pics
casper pool
dists preseed
extundelete-0.2.0 syslinux
extundelete-0.2.0.tar.bz2 wubi.exe
[root@(none) usb]#
插ls下面就是我的8G的U盘中放的东西哈,这个U盘是一个ubuntu12.04的启动盘,另外还放了一个支持ext3和ext4文件格式的linux文件恢复工具。 如图所示
可以看到,U盘的大小是8G的,,嘿嘿
下面就是测试时的设备图了
OK,现在准备工作已经作好了,打开交叉环境,可以慢慢调试文件系统了,从PC到嵌入式的平台过渡,还算顺利哈,这些笔记应该能帮助像我一样完全自学的人(我也啥都不懂,所以尽量写得详细点),相信自己,早日进军嵌入式驱动!
本文出自 “成鹏致远” 博客,请务必保留此出处http://infohacker.blog.51cto.com/6751239/1171106