- 打卡等级:以坛为家II
- 打卡总天数:465
- 最近打卡:2026-03-05 08:52:40
已绑定手机
荣誉版主
无情的代码机器
- 积分
- 9087
|
相较于官网【STC-official-user-CAN-ISP-bootloader-demo-STC32G12K128-series】例程修改点:
1.ROM布局:ISP+A+B+EEPROM区,用户ISP扩容至8K,A\B皆是56K,EEPROM区8K末尾扇区存放OTA参数
这里B区主要用于下载缓存新固件
A区用于实际运行用户APP
PS:为什么不在B区直接激活运行?需要维护两套APP工程,代码地址映射及中断映射。
2.用户ISP升级下载过程擦除只擦B区,确保升级流程中断也可重启正常开机进入A区
3.升级下载流程结束后,将固件校验和及长度写入OTA参数区,
重启后用户ISP检测该参数,合法则搬运B区代码到A区,搬运完成则清除参数。
4.原有示例工具及TOOL工程删除,替换为更通用的CDC2CAN工具。上位机使用 Python代码示例。
硬件连接示意:
操作说明:
1.工具板下载USB-CDC_to_CAN工程
2.准备APP固件,使用py/appHex2bin.py,将hex转为bin文件,会自动裁剪LDR_SIZE,并把前三字节拷贝至APP起始处
3.下载用户ISP工程,下载时EEPROM选择128K
4.打开py/main.py,更改工具板CDC串口号及bin文件路径,保存执行。
升级过程日志示例:
STC-official-user-CAN-ISP-bootloader-demo-STC32G12K128-series_V2026012603.zip
(546.67 KB, 下载次数: 6)
相关链接:
CAN总线在线升级例程发布,视频演示,车规 - CAN/Lin/最便宜的车规MCU, AEC-Q100 Grade1(-40 ~ +125度) 国芯人工智能技术交流网站 - AI32位8051交流社区
CAN视频教学, USB 转 2组CAN, AiCube-ISP, 【CAN助手】收发测试 - CAN/Lin/最便宜的车规MCU, AEC-Q100 Grade1(-40 ~ +125度) 国芯人工智能技术交流网站 - AI32位8051交流社区
一种简单合并ISP和APP程序文件的方法 - ISP下载/做自己的ISP 国芯人工智能技术交流网站 - AI32位8051交流社区
一种USER_ISP和USER_APP共用中断方法 - ISP下载/做自己的ISP 国芯人工智能技术交流网站 - AI32位8051交流社区
|
1
喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
-
+1
楼主威武~
|