STM32存储架构

 

也算一个STM32的初学者,看了一段时间的相关资料,将自已了解的知识写出来,以求备忘。在此文中若有错误之处,请指出,将不胜感激。

 

STM32F103ZET6Cortex-M3内核的ARM类型的单片机,它属于STM32的大密度器件,对于STM32的存储架构是差不多的

STM32的程序存储区,数据存储区,寄存器统一编制,最大为4G的空间。使用的是小端存储模式。

整个4G的空间被分成8main blocks,每一块是512MB,现在把对应的地址空间列出

0x0000 0000  ~  0x2000 0000

根据启动引脚的状态决定哪个存储空间被映射到此处。

片内系统存储区起始地址:

0x1fff  0000(2K字节的空间)

引脚状态

存储空间名

地址

X0

Main Flash memory

0x8000 0000

01

System memory

0x1fff  0000

11

Embedded SRAM

0x2000 0000

0x2000 0000  ~  0x4000 0000

SRAM区,64K

0x2001 0000

位带别名区首地址为:

0x2200 0000

0x4000 0000  ~  0x6000 0000

用于片内外设

外设寄存器的别名区首地址:

0x4200 0000

0x6000 0000  ~  0x8000 0000

0x8000 0000  ~  0xa000 0000

片上flash存储区512M

0xa000 0000  ~  0xc000 0000

0xc000 0000  ~  0xe000 0000

0xe000 0000  ~  0xffff ffff

在系统存储区有嵌入的bootloader,bootloader在芯片出场时已经了启动代码,也可以对系统存储区进行编程。要对系统存储区进行编程你需要使用UART1接口来下载启动代码。

备注:在这4G的可寻址区中有很多地址空间是预留的,使用的时候要注意

你可能感兴趣的:(STM32存储器架构,STM32的存储器架构)