以下以STM32F103F1C8T6为例介绍存储映射。
该系列芯片将寄存器、输入输出端口、程序存储器、数据存储器映射在4GB的空间当中(0x0000 0000 - 0xFFFF FFFF)2^32Bytes
顺序如下:
0x0000 0000 --- 0x0800 0000 根据Boot引脚配置映射到Flash /Sysmem/SRAM 当中 128MB 空间
0x0800 0000 --- 0x0801 FFFF Flash Memory 闪存存储空间 128KB 空间
0x1FFF F800 --- 0x1FFF F7FE System Memory 系统存储空间 2KB 空间
0x2000 0000 --- up SRAM 存储区
0x4000 0000 --- up Peripherials外设映射段每个外设约获得1KB
0xE000 0000 --- 0xe01 0000 Cotex-M3 Internal Peripherial Contex内部外设1MB 空间
接着说Boot 启动引导配置,下图是手册截图,一目了然,其中主Flash闪存启动常用,当然也可以加载到SRAM中执行,从而避免过多次的刷新Flash,但是令人不解的是系统存储器System Memory部分,可以在存储映射中看到其占有2KB空间,但是使用该启动方式有何作用最初不得求解。
后来在手册里边发现了解释,原来这是一块ROM ,固化存储出厂时的Bootloader,供USART 等方式下载程序。