周五见| 快速传输文件到板端验证的方法来了!

Comake Online


作者| veahow、shaojun.ke、eason.chen


本文适用于SSD22X/SSD21X/SSC9211 Linux开发。


01

场景描述

客户设计的板子无网口,也没有SDIO接口来接SD卡,只有USB口或者Debug板,想要快速验证用户层程序功能较为麻烦,不想要每次编译打包文件再烧录到板子上,希望能有快速传输文件到板端验证的方法来减少开发的时间。


02

实现方法


方法一:NFS

通过USB接口模拟RNDIS实现网络连接的功能,并在PC端建立网络共享文件夹,在板端利用mount指令直接挂载PC的共享文件夹即可直接与PC文件夹交互。


1. 搭建RNDIS


可参考该FAQ中关于RNDIS的搭建方法和网络配置:如何搭建USB RNDIS并使用RTSP出流


2. mount命令


在保证PC上设置了网络共享文件夹后,板端上使用如下命令:



其中,//xxx需要填写PC端的IP地址,username和password填写PC的用户名和密码。可以在“控制面板-网络和Internet-网络连接”找到出现的“远程NDIS兼容设备”,设置其中的IP地址和子网掩码来与板端适配(或者板端适配PC),保证在同一网段即可。挂载上无报错即可直接在/mnt目录下实现板端与PC的文件交互。


方法二:ADB


如何搭建板端adbd环境


请参考附件:adb资料_comake.zip


方法三:UART


通过Debug调试小板实现文件交互


可以使用lsz/lrz工具进行传输,lrz,lsz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具,windows端需要支持ZModem的telnet/ssh客户端(比如SecureCRT)。


运行命令lrz,即是接收文件,SecureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录。


运行命令lsz file1 file2就是发文件到windows上(保存的目录是可以配置)比ftp命令方便多了,而且服务器不用再开FTP服务了。


lrs/lsz的编译

首先下载最新版的lrzsz,地址:https://ohse.de/uwe/software/lrzsz.html。下面以 0.12.20 版本为例,下载源码包为:lrzsz-0.12.20.tar.gz。
$ mkdir ~/lrzsz
$ cp lrzsz-0.12.20.tar.gz ~/lrzsz
$ cd ~/lrzsz
$ tar zxvf lrzsz-0.12.20.tar.gz

编译配置
$ cd lrzsz-0.12.20/
$ CC=arm-linux-gnueabihf-gcc CFLAGS=-O2 ./configure
$ make
make完成之后,会在当前目录 src/ 下生成 lrz 和 lsz 两个文件。


如果您对相关技术感兴趣,欢迎您在 Comake社区开发论坛中反馈问题、交流经验。PC端地址:https://dev.comake.online





进入开发论坛

原厂答疑|产品选型|官方资源


点击“阅读原文”,与作者互动

X 提交 下一题

查看更多