STM32自举程序原理和使用

关注+星标公众,不错过精彩内容

作者 | strongerHuang

微信公众号 | 嵌入式专栏

很很多单片机都有自举程序,像支持STC单片机使用串口下载,这种其实也是单片机内部集成了一段自举程序。

那你,你了解自举程序吗?下面结合STM32给大家分享一下关于自举程序的知识。

1关于自举程序

STM32中内嵌了一段自举程序,可能很多人不知道。

那段自举程序存放在System memory(系统存储器)中,我们通过配置启动,选择启动系统存储器就可以运行这段程序。

2STM32启动配置

STM32有三种启动模式:

  • Main Flash memory:主FLASH

  • System memory:系统存储器

  • Embedded SRAM:内置SRAM

三种模式是通过不同配置来实现,一般通过BOOT引脚和BOOT位来配置启动模式。

不同的芯片配置有差异,有些芯片没有BOOT1引脚,会结合BOOT位来实现。

F1启动配置:

F0启动配置:

复位后,在 SYSCLK 的第四个上升沿锁存 BOOT 引脚的值。复位后,用户可以通过设置BOOT1 和 BOOT0 引脚来选择需要的启动模式。

3内嵌的自举程序

STM32内嵌的自举程序存放在系统存储区,由ST在生产线上写入,用户不能修改。

我们选择System memory(系统存储器)启动模式,就会进入系统存储区执行自举程序。

内嵌的自举程序主要用于通过串行接口重新编程 Flash

有哪些串行接口呢?

UART、 I2C、 SPI、 CAN、 USB等。

F103只支持的UART:

F4支持多种串行接口:

不同型号MCU支持的串行接口不一样,具体请参看应用笔记 AN2606

4自举程序中 USART 协议

通信就会牵涉到协议,这里也说一下自举程序中 USART 协议

1.协议序列

当配置 STM32 微控制器为自举启动,系统将进入自举程序模式。

2.USART 自举程序命令集

3.命令流程

有命令就有相应命令执行流程,这里拿Get 命令流程为例:

其他命令流程这里就不一一讲述,请参看官方文档AN3155

5自举程序上位机

自举程序主要是针对STM32进行编程,说白了,自举程序上位机就是FLASH编程工具

自举程序上位机工具大家都比较熟悉,这里简单说一下。

1.STMFlashLoader

这个工具是相对叫老的工具,好像现在没有维护更新了。

主要就是使用UART对STM32FLASH读写擦除等操作。

2.STM32CubeProgrammer

这个工具在2月底更新到了V2.0.0,新增OTA功能。

写到这里,相信大家都更加明白这个工具的用途了吧?

------------ END ------------

后台回复『STM32』『ST工具』阅读更多相关文章。

欢迎关注我的公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。

欢迎关注我的视频号:

点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值