stm32f10x学习二 存储器组织

来源:互联网 发布:建筑建模软件 编辑:程序博客网 时间:2024/06/03 13:18

1、程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB(32位)的线性地址空间内

2、数据字节以小端格式存放在存储器中。一个字里的最低地址字节被认为是该字的最低有效字节,而最高地址字节是最高有效字节。

3、可访问的存储器空间被分成8个主要块,每个块为512M




a、block0--SRAM(64K) 地址:0x2000 0000-0x2000 FFFF(别名地址) 。可以以字节、半字(16位)或全字(32位)访问

b、位段:外设寄存器和SRAM都被映射到一个位段区里,这允许执行单一的位段的写和读操作。

下面的映射公式给出了别名区中的每个字是如何对应位带区的相应位的:

  • bit_word_addr = bit_band_base + (byte_offset×32) + (bit_number×4) 
  • bit_word_addr是别名存储器区中字的地址,它映射到某个目标位
  • bit_band_base是别名区的起始地址。 byte_offset是包含目标位的字节在位段里的序号 bit_number是目标位所在位置(0-31)

下面的例子说明如何映射别名区中SRAM地址为0x20000300的字节中的位2: 

0x22006008 = 0x22000000 +(0x300×32) + (2×4). 

对0x22006008地址的写操作与对SRAM中地址0x20000300字节的位2执行读-改-写操作有着相同的效果。

c、嵌入式闪存。地址:0x0800 0000-0x0807 FFFF(512*1024=512k)


0 0
原创粉丝点击