`
yidongkaifa
  • 浏览: 4038492 次
文章分类
社区版块
存档分类
最新评论

Ubuntu10.10下安装和使用lrzsz,实现串口传输文件&&minicom

 
阅读更多

一、安装配置minicom

1、安装minicom:sudo apt-get install minicom

2、配置minicom:sudo minicom -s

A.进入Serial port setup 选择相应的端口和频率。

(将选项A的值设置为/dev/ttyS0 表示是串口1,将选项E的值设置为115200,将选项F设置为NO(请根据实际情况配置))

B.进入Filenames and paths 选择相应的上传/下载目录。

| A - Download directory : /home/pinggle/download

| B - Upload directory : /home/pinggle/opt/upload
注意:开发板发送给pc的文件将保存在Download directory所设定的目录中,而pc要下载到开发板的文件保存在Upload directory所设定的目录中

C.设置完成后,选择Save setup as dfl, 保存为默认设置.

3、运行minicom:minicom.

按Ctrl-A,再按z,可以获取到minicom CTRL-A命令的帮助信息。

其中,我们用CTRL-A s来发送文件给开发板;而用CTRL-A r来接收开发板上的文件。

二、安装lrzsz

1、在PC上安装lrzsz: sudo apt-get install lrzsz

2、交叉编译lrzsz并下载到开发板上:

A.下载lrzsz源码包.

B.解压缩后,到解压目录中执行./configure (tar -zxf lrzsz-0.12.20.tar.gz ; cd lrzsz-0.12.20/; ./configure )

C.修改Makefile:

有三个Makefile需要修改,分别是lrzsz-0.12.20/Makefile, lrzsz-0.12.20/lib/Makefile, lrzsz-0.12.20/src/Makefile

将这三个Makefile中的所有gcc替代成你开发板所需要的交叉编译器,如mipsel-linux-gcc

(即:CC = gcc CPP = gcc -E 都改成CC = mipsel-linux-gcc CPP = mipsel-linux-gcc -E
D.编译:make
E.在lrzsz-0.12.20/src目录下会生成两个可执行文件lsz、lrz(或者sz、rz),把它们下载到开发板linux系统的/bin目录下。

三、使用lrzsz:
1、开发板-->PC机
在开发板上输入 lsz filename,然后会出现一个传输界面,传输完成后可以在你设置的默认下载目录Download directory里找到这个文件。

2、PC机-->开发板
在开发板上先进入/tmp 目录,然后输入lrz。
# cd /tmp
# lrz
?z waiting to receive.**B0100000023be50
按Ctrl-A,再按s,选择zmoden,会出现一个选择文件的界面,选择你要传输的文件(按一下空格键选择目录,按两下空格键进入目录),回车后出现一个传输界面,传输完成后,便可以在开发板的/tmp目录下找到这个文件了。

| Name Program Name U/D FullScr IO-Red. Multi |
| A zmodem /usr/bin/sz -vv -b Y U N Y Y |
| B ymodem /usr/bin/sb -vv Y U N Y Y |
| C xmodem /usr/bin/sx -vv Y U N Y N |
| D zmodem /usr/bin/rz -vv -b -E N D N Y Y |
| E ymodem /usr/bin/rb -vv N D N Y Y |
| F xmodem /usr/bin/rx -vv Y D N Y N |
| G kermit /usr/bin/kermit -i -l %l -b %b Y U Y N N |
| H kermit /usr/bin/kermit -i -l %l -b %b N D Y N N |
| I ascii /usr/bin/ascii-xfr -dsv Y U N Y N |

ubuntu下从PC机下载文件到开发板上:
1.在开发板的内核配置中,必须选上:openwrt->menuconfig->Base system-->busybox-->Miscellaneous Utilities-->rx
2.在mincom下,待开发板启动以后,运行: rx FILE 。##Receive a file using the xmodem protocol。
3.Ctrl+A, S ,选择xmodem,就会跳出一个选择传送文件的界面,选择好文件后,回车。
4.若提示:Transfer incomplete
READY: press any key to continue...
就表明文件已成功下载到开发板的当前目录。

报错:
root@BenNanoNote:/# rz
/bin/rz: line 1: syntax error: unexpected "("
解决方案:换成开发板上的编译工具编译。


minicom拓展

安装:
sudo apt-get install minicom

配置一:
配置使用命令:minicom -s
1.选择第三个菜单项,即"Serial port setup",根据目标板的串口通信参数设置.

如果没有使用USB转串口,而是直接使用串口,那么Serial Device要配置为/dev/ttyS0。
对波特率,数据位和停止位进行配置,键入“E”,波特率选为115200 8N1 (奇偶校验无, 停止位1),
硬/软件流控制分别键入“F”“G”并且都选NO.
在确认配置正确之后,可键入回车返回上级配置界面,并将其保存为默认配置。(即save setup as dfl),之后重启minicom是刚才配置生效,在连上开发板的串口线后,就可在minicom中打印正确的串口信息了。

配置二:
1 . 在终端中输入minicom以启动minicom;
2. 先按下Ctrl + a, 放开, 再按o, 出现配置菜单.

组合键的用法是:先按Ctrl+A组合键,然后松开这两个键,再按Z键。另外还有一些常用的组合键。
(1)S键:发送文件到目标系统中;
(2)W键:自动卷屏。当显示的内容超过一行之后,自动将后面的内容换行。这个功能在查看内核的启动信息时很有用。
(3)C键:清除屏幕的显示内容;
(4)B键:浏览minicom的历史显示;
(5)X键:退出mInicom,会提示确认退出。

这时候可以打印串口的信息了,但是在通过串口用xmodem协议烧写内核时会提示没有xmodem协议。
所以还必须安装软件包:lrzsz
sudo apt-get install lrzsz
这时候就可以正常地用minicom通过串口烧写内核了。

下次在输入minicon 即可直接进入。
命令minicom是进入串口超级终端画面,而minicom -s为配置minicom。
说明/dev/ttyS0 对应为串口0 为你连接开发板的端口。

编译lrzsz时报错:与libintl.h有关的。
解决方案:在src/zglobal.h中有libintl.h处修改:
#if 0
//ENABLE_NLS
# include <libintl.h>
# define _(Text) gettext (Text)
#else
#endif
# define bindtextdomain(Domain, Directory) /* empty */
# define textdomain(Domain) /* empty */
# define _(Text) Text
再make虽有警告,但不会报错,而且src目录下的lrz和lsz可以使用。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics