YTM32B1HA01 UDS OTA (A/B SWAP) Demo
-
F Frankie 在 中 引用了 这个主题
-
Z zyq 在 中 引用了 这个主题
-
请参考下面的工程:
以下是一个基于YTM32B1HA01 使用UDS升级的硬件swap OTA示例工程:
uds_ota_demo.zip工程目录
其中:- APP A面(uds_can_ota_app_a)代码是一个打印信息功能的工程
- APP B面(uds_can_ota_app_b)代码是一个基于FreeRtos操作系统的工程
- 上位机uds_pc_tool_write_a工程用来下载uds_can_ota_app_a代码
- 上位机uds_pc_tool_write_b工程用来下载uds_can_ota_app_b代码
使用步骤:
- 编译uds_can_ota_app_a或uds_can_ota_app_b APP工程代码
- 将编译好的代码下载YTM32B1HA01-EVB评估版
- 使用Type-C线连接EVB板和PC,并通过串口工具打开COM口,设置波特率为115200,可以看到打印的信息。
若下载的代码为uds_can_ota_app_a,打印的信息为“Hello! APP A is running! Countx”;
若下载的代码为uds_can_ota_app_b,打印的信息为“Hello! APP B Freertos demo is running! Countx”; - 使用USB-CAN设备连接PC和板子的CAN0通道。
- 使用YCT打开uds上位机工程uds_pc_tool_write_a或uds_pc_tool_write_b
- 编译上位机工程脚本,如图
- 运行OTA流程
- 运行完毕手动复位即可跳转至更新的APP代码,可通过串口打印信息查看是否升级成功。
OTA 更新流程
- 切换至扩展会话模式。(10 03)
- 切换至编程会话模式。(10 02)
- 请求安全访问种子以进行身份验证。(27 01)
- 发送密钥以通过安全验证。(27 02)
- 将Flash驱动程序加载到RAM中。(34、36、37)
- 对Flash驱动程序进行CRC校验,确保其完整性。(31 01 F0 00)
- 通知MCU Flash Driver已下载完成。(31 01 F0 01)
- 清除目标Flash区域(PFLASH1)的现有数据。(31 01 FF 00)
- 将新固件文件写入PFLASH1区域。(34、36、37)
- CRC校验写入的固件文件,确保数据完整。(31 01 F0 00)
- 触发Boot Swap操作,切换至新固件。(31 01 F0 02)
- 清除RAM中的Flash驱动程序,释放资源。(31 01 F0 03)
其他具体信息也可查看ReadMe、工程配置、工程描述等信息。
示例演示视频
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...