STM32 Flash 扇区分布学习

一、STM32F4 Flash 硬件扇区原生结构(1MB Flash)

STM32F40x/41x 系列 1MB Flash 的扇区划分是芯片硬件固定设计,并非均匀分割,其核心特点为前小后大,兼顾小容量引导程序存储与大容量应用代码存放:

  • Sector 0~3:均为 16 KB 小扇区,适合存放中断向量、小容量配置参数;
  • Sector 4:独立 64 KB 扇区,承接前半部分空间;
  • Sector 5~11:均为 128 KB 大扇区,总计 896 KB,专门用于存放主应用程序。
扇区编号 地址范围 扇区大小 累计空间
Sector 0 0x08000000 ~ 0x08003FFF 16 KB 16 KB
Sector 1 0x08004000 ~ 0x08007FFF 16 KB 32 KB
Sector 2 0x08008000 ~ 0x0800BFFF 16 KB 48 KB
Sector 3 0x0800C000 ~ 0x0800FFFF 16 KB 64 KB
Sector 4 0x08010000 ~ 0x0801FFFF 64 KB 128 KB
Sector 5 0x08020000 ~ 0x0803FFFF 128 KB 256 KB
Sector 6 0x08040000 ~ 0x0805FFFF 128 KB 384 KB
Sector 7 0x08060000 ~ 0x0807FFFF 128 KB 512 KB
Sector 8 0x08080000 ~ 0x0809FFFF 128 KB 640 KB
Sector 9 0x080A0000 ~ 0x080BFFFF 128 KB 768 KB
Sector10 0x080C0000 ~ 0x080DFFFF 128 KB 896 KB
Sector11 0x080E0000 ~ 0x080FFFFF 128 KB 1024 KB

二、注意事项

  • 扇区大小不可自定义STM32F4 的 Flash 扇区大小是硬件固化规则,无法通过软件修改,分区与擦除必须严格遵循官方地址映射,否则会导致擦除失败、程序跑飞。

  • 区分宏定义与实际地址 stm32f4xx_flash.h 中的 FLASH_Sector_x 是库内部枚举值,仅用于代码调用,不能直接用于地址计算,实际空间规划必须参考物理地址范围。

  • 擦除范围必须完整覆盖应用程序,若遗漏扇区会导致旧程序残留,引发固件升级异常。

地址 偏移 ÷0x10000(64k) ×8 块编号
0x08020000 0x20000 0x2 0x20 0x20
0x08040000 0x40000 0x4 0x28 0x28
0x08060000 0x60000 0x6 0x30 0x30
0x08080000 0x80000 0x8 0x38 0x38

三、大容量芯片(≥2MB)双 Bank 架构

  • 主存储区(0x08000000 起始):标准只有 12 个扇区(Sector 0~11),对应 0x0000~0x0058。
  • Sector 12~23(0x0080~0x00D8) :仅存在于 2MB 双 Bank 芯片 (如 STM32F429/439),对应 Bank 2 的 12 个扇区,基地址为 0x08100000
  • 地址映射
    • Bank 1(主存储):0x08000000 ~ 0x080FFFFF(1MB)
    • Bank 2(扩展存储):0x08100000 ~ 0x081FFFFF(1MB)
    • 每个 Bank 内部均包含 12 个扇区(0~11),共 24 个扇区编号(0~23)。

参考文章:

STM32命名,Flash分布,扇区

相关推荐
kdxiaojie4 小时前
Linux USB驱动阅读笔记(1)
linux·笔记·学习·usb
呼噜想睡觉4 小时前
Bootstrap3完成从导航到页脚完整页面开发
学习
千秋岁rr5 小时前
5.0 TIM
单片机·嵌入式硬件
小僧景贤5 小时前
STM32 startup.s 启动文件与 .map 映射文件深度技术解析(md/hd 版本差异化对比)
stm32·内存映射·startup.s·map 文件·单片机启动流程
深蓝海拓7 小时前
基于QtPy (PySide6) 的PLC-HMI工程项目(十五)后续完善和改进:PLC端数据解析的防粘包、残包、废包、拆包
笔记·学习·plc
小黄蚁7 小时前
LVGL学习笔记(六)
笔记·学习
2601_966799047 小时前
CH398 技术解析:USB 3.0转千兆以太网单芯片方案与内置电源设计要点
单片机·嵌入式硬件
zyf1044167 小时前
暑期实践日志 Day33:整体复盘核查视频,完善剪辑成果
学习·计算机网络·剪辑·暑期实践·课题任务
01_ice8 小时前
前端学习css
前端·css·学习
zlinear数据采集卡8 小时前
数据采集卡从入门到精通(38):上位机开发实战——Python/QT/LabVIEW的技术选型与分层架构
python·单片机·嵌入式硬件·qt·fpga开发·开源·labview