KDocs 研发资料库
  • 视频技术应用资料与文档入口汇总
  • Window下使用Makefile编译代码教程
  • AC52系列PWM使用说明文档
  • AC57系列PWM使用说明文档
  • 52 系列_串口外设的使用说明
  • 57 系列_串口外设的使用说明
  • AC52系列SPI使用说明文档
  • AC57系列SPI使用说明文档
  • AC52系列外部中断使用说明文档
  • AC57系列外部中断使用说明文档
  • AC54&56外部中断使用说明文档
  • AC52 红外捕获中断demo使用说明文档
  • 视频系列SDK汇总及获取方法
  • AC52系列软件典型问题整理文档获取
  • AC791N开发-入门到进阶开发指导文档(完善ing)
  • AC792N开发-入门到进阶开发指导文档(完善ing)
  • 792 littlefs文件系统配置
  • 792N系列 U盘单备份升级说明
  • 792x串口uart升级说明参考

792x串口uart升级说明参考

📎 原始文档:https://www.kdocs.cn/l/chWiBQbeJudQ

792x串口uart升级参考说明文档

简介

792系列增加串口uart升级功能,提供相应补丁。

背景应用

部分客户由于有自己的上位机集成升级需求,想增加串口升级功能,有些方案不带wifi以及tf 卡不方便TF 卡以及网络升级.

调试环境

硬件环境:
两个AC7926开发板 分别做串口主从机。
sdk 软件环境:
sdk 版本AC792N_SDK_RELEASE_V2.2.2_2025-04-22,AC792N_WIFI_CAMERA.cbp工程

附件获取说明:
【金山文档 | WPS云文档】 金山文档插入的附件获取步骤说明
https://kdocs.cn/l/cq8dpKXi7WO5



补丁配置

文档提供的补丁,串口主从机均需打入。

1、sdk中添加uart_update文件夹到codeblock工程:

 EMBED Package 
image 
image

其中uart_update.c 对应792设备端的uart 从机, uart_update_master.c对应792串口主机端。

注意:假如主机端uart 为其他设备,则主机端需要按照uart_update_master.c 协议逻辑实现。


2、app_config.h头增加如下定义

01
02
03
04
05
06
07
08
09
10
11
#define UART_UPDATE_SLAVE 0
#define UART_UPDATE_MASTER 1
#define UART_UPDATE_BAUD_TEST (500000)//9600
#define TCFG_UPDATE_UART_IO_EN 1
#if TCFG_UPDATE_UART_IO_EN
#define TCFG_UPDATE_UART_DEV "uart3" //普通IO串口升级选择串口号
#define TCFG_UART_UPDATE_TX_PIN IO_PORTC_01 // TX_IO选择
#define TCFG_UART_UPDTAE_RX_PIN IO_PORTC_02 // RX_IO选择
//#define CHANGE_CUR_BAUDRATE //使能 则升级时会先用9600波特率,后面跳到500K进行升级, 关闭该宏则固定500k升级波特率
#define TCFG_UPDATE_UART_ROLE UART_UPDATE_SLAVE //从机端宏使能
//#define TCFG_UPDATE_UART_ROLE UART_UPDATE_MASTER//主机端宏使能
01
02
03
04
05
06
07
08
09
10
11 #define UART_UPDATE_SLAVE 0
#define UART_UPDATE_MASTER 1
#define UART_UPDATE_BAUD_TEST (500000)//9600
#define TCFG_UPDATE_UART_IO_EN 1
#if TCFG_UPDATE_UART_IO_EN
#define TCFG_UPDATE_UART_DEV "uart3" //普通IO串口升级选择串口号
#define TCFG_UART_UPDATE_TX_PIN IO_PORTC_01 // TX_IO选择
#define TCFG_UART_UPDTAE_RX_PIN IO_PORTC_02 // RX_IO选择
//#define CHANGE_CUR_BAUDRATE //使能 则升级时会先用9600波特率,后面跳到500K进行升级, 关闭该宏则固定500k升级波特率
#define TCFG_UPDATE_UART_ROLE UART_UPDATE_SLAVE //从机端宏使能
//#define TCFG_UPDATE_UART_ROLE UART_UPDATE_MASTER//主机端宏使能

注意:主从机角色切换自行配置角色宏(二选一)
TCFG_UPDATE_UART_ROLE UART_UPDATE_SLAVE、
TCFG_UPDATE_UART_ROLE UART_UPDATE_MASTER
image



3、主从机板级串口配置参考:

注意实际测试串口TX RX要交叉接线
image

image



4、串口业务逻辑的线程初始化请参考如下

792串口主机:
image

792串口从机:
image

5、更换ota.bin

更换sdk\cpu\wl83\tools\目录下的ota.bin 文件

 EMBED Package 
image 
升级过程应用层会先加载ota.bin, 再由loader完成主从机串口通信,最终完成升级。

注意:
如果升级期间无升级UI,请参照如下文档链接添加当前使用的屏驱,重新制作ota.bin等相关依赖文件。
【金山文档 | WPS云文档】 AC792系列_卡升级使用说明v1.2
 HYPERLINK "https://kdocs.cn/l/clIVbx987Ftb" https://kdocs.cn/l/clIVbx987Ftb

otaloader工程版本要求:
image



卡升级文件制作

制作升级文件用如下sdk中自带的批处理,目前测试选择用的单备份方式升级
image

最终生成 update.ufw文件
image

在基于主从机加入串口升级代码的前提下,该文件拷贝到主机TF 卡根目录,从机先上电,再上电主机,主机792从tf 卡里面读取数据通过串口发给从机792 进行升级。


常见问题

1、主机卡里面放卡升级文件,主机自己跑了卡升级流程,没跑串口升级。
解决:
image



  1. 从机串口升级进度被卡住 image

主机发送线程被阻断,比如主机正在制作vflist文件就会打断主机读串口文件,导致从机接收失败。
解决:
自行做逻辑处理,执行卡升级不要跑如下线程:
image

杰理科技
2025年07月09日

本文档包含以下子页面

  • 金山文档插入的附件获取步骤说明
Prev
792N系列 U盘单备份升级说明