打印
[STM32F1]

STM32的Bootloader升级咋搞?

[复制链接]
楼主: Clyde011
手机看帖
扫描二维码
随时随地手机跟帖
41
擦除操作通常是以页或扇区为单位进行的。

使用特权

评论回复
42
xiaoyaodz| | 2025-3-20 13:58 | 只看该作者
如果校验成功,Bootloader将更新参数区的标志位,表示升级成功。
Bootloader跳转到新的APP程序,开始运行新的应用程序。
如果校验失败,Bootloader可以尝试重新启动或恢复到之前的版本。

使用特权

评论回复
43
51xlf| | 2025-3-20 14:19 | 只看该作者
每次升级前备份 Flash。              

使用特权

评论回复
44
uytyu| | 2025-3-20 14:30 | 只看该作者
考虑到设备可能会在升级过程中掉电或传输中断,需要设计相应的恢复机制。

使用特权

评论回复
45
EmmaTT| | 2025-3-20 14:40 | 只看该作者
网上有很多教程的吧

使用特权

评论回复
46
pixhw| | 2025-3-20 14:44 | 只看该作者
Bootloader开始接收上位机发送的新版本APP的升级文件(通常为bin文件)。
接收过程中,可能需要进行数据校验以确保传输的正确性和完整性(如使用BCC校验)。
接收完成后,Bootloader将新版本APP写入到应用程序备份区。

使用特权

评论回复
47
earlmax| | 2025-3-20 14:57 | 只看该作者
使用官方提供的 Bootloader 版本

使用特权

评论回复
48
cashrwood| | 2025-3-20 15:08 | 只看该作者
参考STM32官方文档和开发指南,了解特定型号的Bootloader升级流程和注意事项。

使用特权

评论回复
49
i1mcu| | 2025-3-20 16:06 | 只看该作者
使用串口、USB等通信接口将新的固件映像文件传输到STM32设备上。
Bootloader会接收数据,并将其存储在指定的内存区域中。

使用特权

评论回复
50
mollylawrence| | 2025-3-20 16:18 | 只看该作者
在升级过程中,如果遇到任何错误(如传输失败、校验错误等),Bootloader需要能够正确地处理这些错误。
可以设置相应的错误标志位,并通知上位机进行相应的处理。

使用特权

评论回复
51
10299823| | 2025-3-20 16:36 | 只看该作者
STM32的Bootloader升级过程需要仔细规划Flash空间、正确接收并写入新版本APP、进行必要的数据校验和程序跳转等操作。

使用特权

评论回复
52
minzisc| | 2025-3-20 16:52 | 只看该作者
在对Flash进行写入操作之前,必须先进行擦除操作。

使用特权

评论回复
53
adolphcocker| | 2025-3-20 17:07 | 只看该作者
如果参数区的标志位指示需要进行升级,Bootloader将进入等待接收升级数据的状态。

使用特权

评论回复
54
cashrwood| | 2025-3-20 17:22 | 只看该作者
在升级过程中,应有完善的异常处理机制

使用特权

评论回复
55
wangdezhi| | 2025-3-20 17:44 | 只看该作者
合理规划Bootloader和应用程序的存储区域,防止相互干扰。

使用特权

评论回复
56
vivilyly| | 2025-3-21 14:03 | 只看该作者
如果APP的起始地址发生变化,需要相应地修改中断向量表的偏移地址(通过VTOR寄存器设置)。
否则,在中断发生时可能会出现错误的中断处理流程。

使用特权

评论回复
57
1988020566| | 2025-3-21 14:18 | 只看该作者
升级后,应设置写保护,防止固件被意外修改。

使用特权

评论回复
58
kkzz| | 2025-3-21 14:33 | 只看该作者
写入操作前需要确保目标区域已被擦除,且写入的数据格式正确。

使用特权

评论回复
59
modesty3jonah| | 2025-3-21 14:50 | 只看该作者
在Flash中预先划分好空间,通常包括Bootloader区、应用程序(APP)区、应用程序备份(APP backup)区以及可能的状态标志位区等。

使用特权

评论回复
60
nomomy| | 2025-3-21 15:12 | 只看该作者
相较于 USB DFU,SWD 更稳定,适合大文件传输。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则