最近在做一个项目,开发板的网口不能使用,只好研究通过串口向开发板传送文件。
发现了lrzsz这个软件,配合TeraTerm串口工具,成功满足了我的需求。
1、交叉编译出目标板运行的lrzsz程序
交叉编译出目标板运行的lrzsz程序、预先放入开发板的SD卡或者eMMC中。
解压并进入到软件包目录
tar xf lrzsz-0.12.20.tar.gz
cd lrzsz-0.12.20.tar
把交叉编译工具链加入到PATH环境变量
export PATH=/opt/gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu:${PATH}
执行configure
这里需要注意的是,网上的教程都表示,通过–host的方式不能指定目标平台的交叉编译器,我自己的测试结果也是这样的;
只能通过下面的方式指定,注意./configure必须放在后面,否则无法识别到交叉编译工具。
CC=aarch64-linux-gnu-gcc CFLAGS=-O2 ./configure
2、配合串口工具进行文件传输
本次使用的串口工具是Tera Term,感人感觉不错。
lrzse分成lrz和lsz,顾名思义,lrz是接收、lsz是发送。
如果向从PC向开发板传送文件,那么对于开发板就是接收,所以运行lrz。
在板子侧运行lrz
./lrz
从Tear Term选择:文件->传输->ZMODEM->发送
串口传输的速度比较慢,大约10K/S
参考资料
http://blog.csdn.net/coding__madman/article/details/51084711
https://wenku.baidu.com/view/5f94787103d8ce2f00662395.html