Ubuntu10.04默认是没安装C-kermit工具的。无法使用kermit -c 命令
kermit
[功能]
一个串口传输工具。可以传送文件。
[描述]
C-kermit是一款集成了
网络通信、串口通信的工具,它有如下多种功能:
1.
支持kermit文件传输协议
2.自定义了一种脚本语言,它强大而易于使用,可用于自动化工作
3.无论是网络通信,还是串口通信,操作是一致的,并支持多种硬件、软件平台
4.有安全认证、加密功能
5.内建FTP、HTTP客户端功能及ssh接口
6.
支持字符集转换
[举例]
*安装
$sudo apt-get install ckermit
这样就安装了c-kermit
*配置
在$HOME主目录下,建立.kermrc配置文件
$vi $HOME/.kermrc
文件内容是:
set line /dev/ttyS0
//ubuntu10.04.1版本以上改为/dev/ttyS1 但是如果使用USB转串口线是/dev/ttyUSB0
set speed 115200
set carrier-watch off
set handshake none
set flow-control none
robust
set file type bin
set file name lit
set rec pack 1000
set send pack 1000
set window 5
这里,kermit在启动时会查找~/.kermrc文件,调用里面的命令来初始化kermit。
只要将需要的命令写到~/.kermrc文件里,启动后就不用手动敲这些命令配置了。
*运行kermit -c命令时报错
kermit ?SET SPEED has no effect without prior SET LINE
说明.kermrc配置文件中的设备名有问题,或者是ttyS0、ttyUSB0、ttyUSB1这个具体要看/dev下设备的名称,把串口插上,再拔掉,看里面那个文件在变化,就知道要设置哪个文件名。
*直接进入命令模式:
$kermit
这里没有-c就进入默认的命令模式了。
*直接进入非命令模式:
$kermit -c
这里,加上-c表示进入非命令模式,相当于在命令模式下面运行了connect或者c。在连接好了板子之后,就可以连接到串口上面了,当然不要忘记将设备打开,否则敲入命令的时候是没有反应的。
*从非命令模式进入命令模式:
1)输入"[Ctrl]\".
2)输入"c".
这样进入kermit的命令模式可以进行各种命令(支持TAB补全),例如HELP可以查看帮助,输入"?"列出所有命令。
*从命令模式退回非命令模式(如com终端):
输入"connect".
或输入"c".
这样又切换会了串口界面(例如在uboot下面)。
*在命令模式下查看当前主机目录文件:
输入"ls".
*在命令模式下查看当前路径:
输入"pwd".
*在命令模式下进入指定的主机目录/home/test:
输入"cd /home/test".
*在命令模式下传输文件file到板子的flash上面:
输入"send file".
这里,在命令行下的发送命令就是send。如果之前在Uboot下使用了loadb 0xc0008000进入的命令模式,那么发送的文件将会被放在了这个地址上面。
*在命令模式下退出串口程序:
输入"exit".
[其他]
*一个简单的完整例子:
启动板子uboot之后,想传一个文件/root/test.sh到地址0xc0008000
步骤如下:
1)$kermit -c
这样,就连接到串口上面了。
2)输入"loadb 0xc0008000"
3)输入"[Ctrl]\"
4)输入"c"
这样进入命令模式.
5)输入"send /root/test.sh"
6)输入"connect".
这样就传完了。ckermit好像只支持kermit协议。
*注意,在网上,据说:
mincom和ckermit均不带xmodem和zmodem之类的协议,所以需要安装lrzsz这个软件,否则就会遇到传输不了文件或者timeout之类的错误。
下载和解压lrzsz后,进入目录执行 ./configure --prefix=/usr/local/lrzsz ,然后make,make install 最后建立软链接。
这个说法使用的配置文件是:
set line /dev/ttyS0 //COM1
set speed 115200
set carrier-watch off
set handshake none
set flow-control none
robust
set file type bin
set file name lit
set rec pack 1000
set send pack 100000 //这里可以改大一点,方便下载内核
set window 5
set protocol xmodem //vivi use xmodem
set protocol zmodem //board Linux usually use rz/sz
PS:
如果不是在线安装的话,需要下载x.tar.gz或cku211.tar.gz
以cku211.tar.gz为例
$ make linux //生成wermit文件,执行时可使用./wermit命令
$ mv wermit /usr/local/bin/kermit //该命令将wermit复制到/usr/local/bin/目录下并重命名为kermit
当然使用软链接会好点,如下
$ make linux
$ cp -a wermit /usr/local/bin/
$ ln -s wermit kermit
这样就可以在终端上输入kermit就可运行了。