【MCU实战经验】基于STM32F103C8T6的hart总线调试器设计
求教STM32F103进入STOP模式后用外部中断唤醒的问题
基于STM32F103RCT6的无源蜂鸣器音乐播放(生日快乐歌)
STM32F103c8t6有没有DAC 功能?
STM32F103x中文数据手册
新手求教,为何在我电脑上找不到STM32F1Xx.h文件
金龙107例程汇总(STM32F107)
万利STM32F107VC 原理图
STM32F103 ADC多通道检测必须要DMA吗?
【官方例程】STM32F107以太网官方例程
主程序需要升级时 设定标记并重启
评分
查看全部评分
自己写BOOT,上电先运行BOOT,检查升级标志位,如果升级标志存在说明已经升级成功就跳转到APP,如果升级标志被清,说明升级失败,就在BOOT中运行,等待升级指令,直至升级成功后再跳转到APP。
当在APP中运行时,收到升级指令后把升级标志清掉,再跳转到BOOT。
你需要做一套升级的协议,比如查询版本号、升级状态,写数据、跳转、固件CRC校验,校验结果查询等等。考虑好升级失败后怎么处理,哪些情况会导致错误(比如固件CRC校验失败,固件大小超过了你的FLash大小,某一包失败时重传还是重新从第一包开始传等等)画个自己的升级流程图慢慢实现。
另外,是外挂Flah还是就用MCU的flash都要考虑清楚,机制差不多,只是详细步骤差一点点。有问题我们可以再探讨,祝你成功。
BOOT做的尽量简洁,只负责搬固件数据。
评分
查看全部评分
评分
查看全部评分