liszt123 4044aa497c add:新增8101的xmodem的demo和xxtea的demo 4 months ago
..
main.lua 4044aa497c add:新增8101的xmodem的demo和xxtea的demo 4 months ago
readme.md 43a88ba703 add:新增780EPM和780EHM的xmodem的demo 5 months ago
send.bin 43a88ba703 add:新增780EPM和780EHM的xmodem的demo 5 months ago
xmodem_demo.lua 43a88ba703 add:新增780EPM和780EHM的xmodem的demo 5 months ago

readme.md

演示功能概述

本demo演示的核心功能为: 使用Air780EHM核心板的UART1连接PC端的串口工具,通过xmodem协议接收文件。

演示硬件环境

1、Air780EHM核心板一块

2、TYPE-C USB数据线一根

3、USB转串口线数据线一根

4、Air780EHM核心板和数据线的硬件接线方式为

  • Air780EHM核心板通过TYPE-C USB口供电;

  • 如果测试发现软件频繁重启,重启原因值为:poweron reason 0,可能是供电不足,此时再通过直流稳压电源对核心板的vbat管脚进行4V供电,或者VIN管脚进行5V供电;

  • TYPE-C USB数据线直接插到核心板的TYPE-C USB座子,另外一端连接电脑USB口;

  • USB转串口数据线,一般来说,白线连接核心板的16/U1TX,绿线连接核心板的17/U1RX,黑线连接核心板的gnd,另外一端连接电脑USB口;

Air780EHM核心板 USB转串口数据线
UART1_TX UART_RX
UART1_RX UART_TX
GND GND

演示软件环境

1、Luatools下载调试工具

2、Air780EHM最新版本固件

3、PC端的串口工具,例如SSCOM、LLCOM等都可以;

演示核心步骤

1、搭建好演示硬件环境

2、不需要修改demo脚本代码

3、Luatools烧录内核固件和demo脚本代码

4、烧录成功后,自动开机运行

5、打开串口工具,连接上Air780EHM UATR1端口,Air780EHM等待接收到工具发送过来的字符'C',然后780EPM开始发送数据,工具端接收到数据返回0x06,0x06为xmodem协议的ack值表示正确接收,然后模块返回0x04,0x04为xmodem协议的​EOT​值,表示传输结束,然后对端发送0x06表示确认结束,Luatools的运行日志输出:

发送脚本区的文件,日志内容如下:

[2025-10-17 15:41:21.708][000000007.048] I/user.xmodem uart读取到数据: 430D0A 6
[2025-10-17 15:41:21.754][000000007.050] I/user.xmodem 发送第 1 包
[2025-10-17 15:41:21.762][000000007.107] D/mobile TIME_SYNC 0
[2025-10-17 15:41:31.029][000000016.785] I/user.xmodem uart读取到数据: 06 2
[2025-10-17 15:41:31.056][000000016.786] I/user.xmodem 文件到头了
[2025-10-17 15:41:31.067][000000016.787] I/user.Xmodem start
[2025-10-17 15:41:31.070][000000016.787] I/user.Xmodem send result true
[2025-10-17 15:41:31.073][000000016.787] I/user.Xmodem send success

HTTP下载到文件系统区的,再通过xmodem协议发送日志如下:

[2025-10-17 15:59:02.210][000000007.027] dns_run 676:airtest.openluat.com state 0 id 1 ipv6 0 use dns server2, try 0
[2025-10-17 15:59:02.216][000000007.050] D/mobile TIME_SYNC 0
[2025-10-17 15:59:02.231][000000007.070] dns_run 693:dns all done ,now stop
[2025-10-17 15:59:02.249][000000007.183] I/user.http success 200
[2025-10-17 15:59:02.261][000000007.183] I/user.HTTP receive ok 29
[2025-10-17 15:59:02.270][000000007.187] I/user.文件读取 路径:/send.bin 内容:AA BB CC DD 01 02 03 04 05 06
[2025-10-17 15:59:02.277][000000007.190] Uart_ChangeBR 1338:uart1, 115200 115203 26000000 3611
[2025-10-17 15:59:03.762][000000008.800] I/user.xmodem uart读取到数据: 430D0A 6
[2025-10-17 15:59:03.796][000000008.802] I/user.xmodem 发送第 1 包
[2025-10-17 15:59:09.955][000000014.991] I/user.xmodem uart读取到数据: 06 2
[2025-10-17 15:59:09.980][000000014.992] I/user.xmodem 文件到头了
[2025-10-17 15:59:09.990][000000014.993] I/user.Xmodem start
[2025-10-17 15:59:09.995][000000014.993] I/user.Xmodem send result true
[2025-10-17 15:59:10.006][000000014.993] I/user.Xmodem send success