本文主要讲述STM32启动模式中System memory的内容,以及围绕的相关内容。
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(系统存储器)启动模式,就会进入系统存储区执行自举程序。
有哪些串行接口呢?
F103只支持的UART:

F4支持多种串行接口:

不同型号MCU支持的串行接口不一样,具体请参看应用笔记 AN2606。
4自举程序中 USART 协议
通信就会牵涉到协议,这里也说一下自举程序中 USART 协议。
1.协议序列

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

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

其他命令流程这里就不一一讲述
5自举程序上位机
自举程序主要是针对STM32进行编程,说白了,自举程序上位机就是FLASH编程工具。
自举程序上位机工具大家都比较熟悉,这里简单说一下。
1.STMFlashLoader
这个工具是相对叫老的工具,好像现在没有维护更新了。


主要就是使用UART对STM32FLASH读写擦除等操作。
2.STM32CubeProgrammer
这个工具在2月底更新到了V2.0.0,新增OTA功能。

写到这里,相信大家都更加明白这个工具的用途了吧?
-
微控制器
+关注
关注
48文章
8260浏览量
162648 -
STM32
+关注
关注
2305文章
11124浏览量
371339 -
OTA
+关注
关注
7文章
624浏览量
37977
发布评论请先 登录
网络接口:数字世界的“门铃”,你了解多少?
Linux 下交叉编译实战:跑起来你的第一个 STM32 程序
实地架构降压恒压芯片H8012A 自举供电耐压100V120V140V降压12V 5V/2A恒压电源IC
科普|关于GPS和GNSS,你了解多少?
使用USB转TTL串口板和ST-LINK调试下载器给STM32单片机下载程序
充电接口你真的了解吗?
什么是超级电容?你对超级电容了解多少?
DC-DC电路设计中加的“自举电容”到底有何讲究?
采购GUTOR UPS备品备件,隐藏的“雷区” 你了解吗?
自举电路的电容大小该怎么选?
STM32C011开发(2)----nBOOT_SEL设置
STM32WB55RG开发(2)----STM32CubeProgrammer烧录

STM32工作的自举程序 你了解多少?
评论