STM32程序占用的内存容量计算

MKD编译完成后查看以下数据的大小:

Code:表示程序所占用 FLASH 的大小( FLASH)。
RO-data:即 Read Only-data, 表示程序定义的常量,如 const 类型( FLASH)。
RW-data:即 Read Write-data, 表示已被初始化的全局变量( SRAM)
ZI-data:即 Zero Init-data, 表示未被初始化的全局变量(SRAM)
 

占用的Flash=Code + RO Data + RW Data;

运行消耗的最大RAM= RW-data+ZI-data;

可以计算出占用的FLASH = 23204+1428+380=24.42kB,占用的RAM=380+1836=2.16kB 

STM32F103芯片的内存资源如下:

从这个表里可以看到ROM SIZE里包含了Code RO-data RW-data,但是没有zi-data。是因为zi-data的值没有在程序里进行初始化,所以上电运行后会直接被赋值为0,所以这个值也就没有必要保存的ROM空间里了。 

程序空间大小计算:

7828byte=0x1E94byte;

那么数据存储从0x800 0000+0x1E94=0x800 1E94开始都是安全的。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值