假设有一种开发环境,一块板子,除了串口,没有任何外部出入输出设备,没有sd卡,没有网线,这个时候如果你想跟这块板子传输交互文件,要怎么办?

根据modem所采用的文件传输协议:xmodem,ymodem,zmodem将其分类

xmodem:简单通用,传输信息单位是“包=128B”,传输速度慢,适合电话线路质量差的情况下用  
ymodem:由XMODEM演变来,效率可靠性高,包=128*8B;一次传输可发送或接受几个文件

zmodem:于上两种不同,已连续的数据流发送数据,效率更高

在ubuntu主机中可以直接使用rz或者sz命令与secureCRT交互文件

在开发板中busybox提供rx命令可直接Xmodem下载文件到开发板,但是没有找到上传命令

命令:

rz 下载Zmodem

xz 上传Zmodem

rx 下载Zmodem

如果想在开发板中上传文件的话可以移植完整版的lrzsz到开发板,完整使用其功能

一,移植lrzsz到开发板中

lrzsz工具在配合secureCRT相当实用,现把其移植到arm-linux下

交代下环境:

pc ubuntu12.4

cross-compile arm-linux-gcc

--1--获取源码

http://www.ohse.de/uwe/software/lrzsz.html

获取lrzsz-0.12.20.tar.gz

--2--解压源码

tar -xzf lrzsz-0.12.20.tar.gz

--3--生成cache文件

./configure --host=arm-linux --cache-file=./arm-linux.cache

这个时候目录中应该生成了./arm-linux.cache文件

--4--修改配置

vi arm-linux.cache

ac_cv_prog_CC=${ac_cv_prog_CC='gcc'}

改成

ac_cv_prog_CC=${ac_cv_prog_CC='arm-linux-gcc'}

--5--使用cache文件配置源码

./configure --host=arm-linux --cache-file=./arm-linux.cache

--6--编译源码

make

注:可能出现的问题:zglobal.h:188:22: error: libintl.h: No such file or directory

注:可能出现的问题:warning: incompatible implicit declaration of built-in function 'gettext'

解决方法:

vi config.h

修改/* Define to 1 if NLS is requested.  */
#define ENABLE_NLS 1

#define ENABLE_NLS 0

--6--得到工具

在src/文件夹下的lrz和lsz工具即是交叉编译成功的lrzsz工具了

--7--实用

将lrz和lsz复制到板子/bin下,即可使用,当然要配合secureCRT

一,利用lrzsz通过串口与secureCRT传输文件

--1--secureCRT设置,在串口的情况下需要打开XON/XOFF流控机制

会话选项->串行->流控->XON/XOFF 打钩,然后重启会话

会话选项->终端->X/Y/Zmodem->目录 选择要存放的目录(我选择的是桌面)

--2--上传文件

终端输入lrz命令后自动弹出选择文件对话框,选择之后开始传输

$ ./lrz

--2--下载文件

终端中输入lsz+文件名

$
./lsz <文件名>

--3--通过BusyBox中的rx简单下载文件

如果根本完全没有任何外部接口,连lrzsz都灌不进去。或者只想下载传输文件,不需要上传的情况,可以使用Busybox中的rx命令简单下载文件

终端中输入rx+要保存的名称,比如$rx redmin.txt

然后在终端中发送文件 菜单->传输->发送Xmodem->选择redmin.txt文件发送数据

版权声明:本文为博主原创文章,未经博主允许不得转载。

串口传输文件 lrzsz的更多相关文章

  1. ARM 开发板嵌入式linux系统与主机PC通过串口传输文件

    本文转载自http://useless20.blog.163.com/blog/static/237409982010227127576/ 嵌入式linux系统与主机通过串口传输文件 我想如果要从PC ...

  2. 使用sz/rz基于串口传输文件

    关键词:lrzsz.minicom.ZMODEM.MD5sum等. 在环境受限的嵌入式系统上,往往只有串口可以使用. 此时如果需要传输文件,需要借助rz/sz工具,可以使用的传输协议有ZMODEM.Y ...

  3. linux传输文件lrzsz

    linux传输文件

  4. 怎样在超级终端和PC之间通过串口传输文件

    Windows环境下,通过SecureCRT软件,用串口向ARM开发板发送文件: 输入命令 rz,可以看到如下图所示: 选择路径点击上传即可. 如果是想从Arm开发板中把文件Down下来,则可以按照下 ...

  5. blfs(systemd版本)学习笔记-安装lrzsz软件包实现ssh远程传输文件到lfs系统

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 安装lrzsz软件包实现ssh远程传输文件到lfs系统 这个软件包在lfs系列的书中没有,这里是参照lrzsz官网的说明进行编译 ...

  6. 在Mac机器上给ITerm2配置lrzsz,便捷的传输文件到远程服务器上

    可直接参考文档:http://danqingdani.blog.163.com/blog/static/18609419520141201215750 需要使用到的github脚本:https://g ...

  7. 如何通过XShell传输文件

    转载孟光孟叔的博客:  https://learndevops.cn/index.php/2016/06/14/how-to-transfer-file-using-xshell xshell目前最好 ...

  8. SecureCRT连接开发板 串口传输、tftp传输

    1.串口传输 使用命令:rx  r是service, x是X-model模式 ①.rx 文件名 再按Enter键 ②.将需要传到板子上的文件 拖到SecureCRT里面,选择发送X-model选项 注 ...

  9. 用rz、sz命令在Xshell传输文件

    用rz.sz命令在Xshell传输文件 2014-03-27 14:38:17 标签:用rz.sz命令在Xshell传输文件 Xshell很好用,然后有时候想在windows和linux之间上传或下载 ...

随机推荐

  1. JOSN学习总结<二> JSON的格式与语法

    今晚又下班早!!嘿嘿,继续JOSN的总结吧!!!!有人说这么简单还有必要写吗???我觉得“眼里过十遍不如手里过一遍”!!有错误之处请指正!!共同学习下!!!!废话不说了,进入今晚的正题: <二& ...

  2. PHP之APC缓存详细介绍

    1.APC缓存简介 APC,全称是Alternative PHP Cache,官方翻译叫"可选PHP缓存".它为我们提供了缓存和优化PHP的中间代码的框架. APC的缓存分两部分: ...

  3. 两种隐藏元素方式【display: none】和【visibility: hidden】的区别及由此引出的问题

    此前看到一随笔(@任天缘 原文)讲了这个问题,并总结了: [display: none]:隐藏元素及元素内的所有内容,并且该元素的位置.宽高等其他属性值一并“消失”: [visibility: hid ...

  4. jquery值ajaxForm

    参考 http://www.360doc.com/content/13/1001/17/1542811_318406421.shtml

  5. Azure cache 的配置与应用

    最近公司的项目要是用cloud Service 所以研究了下 Azure cache 的配置与使用. 首先创建项目 第二步 配置 cache worker role (1) 点击 cache work ...

  6. Powershell profile.ps1 cannot be loaded because its operation is blocked by software restriction policies

    Powershell profile.ps1 cannot be loaded because its operation is blocked by software restriction pol ...

  7. ios专题 - OCUnit

    OCUnit是集成在Xcode开发环境的单元测试框架:OCUnit运行必须包含SenTestingKit.framework这个库: 针对需要测试的类,每个类写出自己的TestCase,独立组织一个文 ...

  8. Linux Bash环境下单引(')、双引号(")、反引号(`)、反斜杠(\)的小结

    在bash中,$.*.?.[.].’.”.`.\.有特殊的含义.类似于编译器的预编译过程,bash在扫描命令行的过程中,会在文本层次上,优先解释所有的特殊字符,之后对转换完成的新命令行,进行内核的系统 ...

  9. thinkphp使用问题

    下面总结一些,我在使用中遇到的问题,以后遇到了再补充 一.<a>标签的跳转问题 问题:我在控制器Home/Index/index里面使用了Public里面的index.html模板,ind ...

  10. ASP.NET MVC轻教程 Step By Step 5——初识表单

    上一节我们将留言列表显示在Index视图里了,现在该添加一个留言的表单,好让用户自己添加留言. 首先在HomeController中添加一个名为“Write”的动作方法. public ActionR ...