stm32内存分析和RTOS任务切换分析
stm32的寻址范围
- 寻址范围的地址线
stm32是一个32位的单片机,因此它有32根地址线,每个地址线有两种状态:导通或不导通。 - 单片机内存地址访问存储单元是按字节编址的。
字节编址定义:一个内存地址对应1字节(8位)的存储空间。
根据地址线数量和字节编址方式,可知:
- stm32的寻址内存大小为:2^32(字节) = 4G(字节)
- stm32的地址范围为:0x0000 0000~0xFFFF FFFF
详细如下图:
STM32内存结构简介
stm32微控制器采用哈佛架构,内存分为Flash(程序存储)、SRAM(数据存储)和可选的外部扩展内存。具体模块包括:
- Flash存储器: 存放程序代码(.code段)和常量(.rodata段和.rwdata段),读写速度较慢,但非易失性。
- SRAM: 运行时的数据存储,速度快但易失性(断电不保存),通常分为多块(如主SRAM、CCM RAM)
- EEPROM(部分型号):用于数据存储,支持多次擦写。
- 外部存储器接口(FSMC/FMC):支持扩展NOR Flash、SRAM等。
STM32存储器图
- 存储器分配区( F4的存储器为例)
下图