STM32的boot三种模式
出处:网络整理 发布于:2025-02-24 17:37:18
1. Boot from Flash (默认模式)
描述:这是STM32的默认启动模式。在此模式下,STM32会从内部Flash存储器(通常是程序存储区域)加载程序代码并执行。
特点:
从主Flash(例如:STM32的内置闪存)加载应用程序。
适用于正常应用开发,在开发过程中,通常会将代码烧写到Flash中。
一般在系统启动时,STM32会执行主程序中的初始化代码,并开始执行应用程序。
启动流程:系统上电或复位时,MCU默认启动并从Flash中加载执行代码。
2. Boot from System Memory (Bootloader模式)描述:在这个模式下,STM32会从系统内存加载并执行代码。系统内存通常指的是STM32芯片内的Bootloader(引导程序),这是一个预先存在的固件,用于实现代码的加载和更新。
特点:
该模式通常用于固件的更新或调试。STM32的Bootloader可以通过串口(USART)、USB、CAN等接口接收固件更新并写入Flash中。
通过Bootloader,可以通过外部设备(如PC)向芯片中烧写新的固件。
该模式在应用启动时,如果用户未指定其他启动方式,STM32会执行Bootloader,并且通常会检查是否有新的固件需要烧录。
启动流程:当系统检测到引导程序有效时,它会进入引导模式,接收新的程序并将其写入到Flash中。
3. Boot from Embedded SRAM (SRAM启动模式)描述:在此模式下,STM32将从内部SRAM(静态随机存取存储器)中加载代码并执行。通常,这种模式用于调试或启动小型程序。
特点:
适用于快速调试或运行仅存储在SRAM中的程序代码。
启动速度较快,因为不需要访问Flash,只需从SRAM读取代码。
常用于开发过程中,直接从外部设备(如JTAG或SWD接口)代码到SRAM并运行,便于调试。
启动流程:在复位后,STM32会检查是否有代码需要从SRAM执行。如果系统配置为从SRAM启动,它将直接执行存储在SRAM中的程序。
选择启动模式
STM32的启动模式通常是通过复位引脚的电平或特定的引脚(如BOOT0、BOOT1)设置的。通过配置这些引脚的状态,用户可以选择从Flash、System Memory或SRAM中启动程序。
BOOT0引脚:通过控制BOOT0引脚的状态,可以选择从哪一位置启动代码。
BOOT0 = 0:从Flash启动。
BOOT0 = 1:从System Memory启动(即Bootloader模式)。
版权与免责声明
凡本网注明“出处:老太阳集团tcy8722网站电子市场网”的所有作品,版权均属于老太阳集团tcy8722网站电子市场网,转载请必须注明老太阳集团tcy8722网站电子市场网,,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 一文了解车规级芯片认证标准2025/9/16 15:40:14
- 探究 MCU 芯片静电高但产品静电指标不佳的原因2025/9/4 16:12:23
- 138译码器的工作原理2025/8/29 17:04:49
- 什么是ESP8266,ESP8266的知识介绍2025/8/22 17:16:19
- U8726AHE 氮化镓电源 IC 集成高压 E - GaN 和启动电路优势2025/8/20 10:38:23