当前位置: 首页 > article >正文

STM32-程序占用内存大小计算

STM32中程序占用内存容量
Keil MDK下Code, RO-data,RW-data,ZI-data这几个段:

Code存储程序代码。
RO-data存储const常量和指令。
RW-data存储初始化值不为0的全局变量。
ZI-data存储未初始化的全局变量或初始化值为0的全局变量。
占用的Flash=Code + RO Data + RW Data;

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

这个是MDK编译之后能够得到的每个段的大小,例如下图Program Size 中的Code R0 RW ZI
在这里插入图片描述

可以计算出占用的FLASH = 34456+456+172=34.26kB,占用的RAM=172+18908=18.63kB

STM32F103芯片的内存资源如下:
在这里插入图片描述

那么堆栈是如何分配的呢,堆栈的内存占用就是在上面RAM分配给RW-data+ZI-data之后的地址开始分配。


http://www.kler.cn/a/105507.html

相关文章:

  • maven 本地jar打包到镜像仓库
  • 从JavaScript到Rust的三年时间小结
  • STM32 中断NVIC详解,配置及示例
  • Prompt设计与大语言模型微调
  • 酒类商城小程序怎么做
  • Openssl数据安全传输平台011:base64的使用
  • mysql4
  • 单目3D目标检测 方法综述——直接回归方法、基于深度信息方法、基于点云信息方法
  • Windows下安装Anaconda、Pycharm以及iflycode插件图解
  • 系列二、Spring的优缺点是什么
  • ThreadLocal 是什么?它的实现原理呢?
  • Table-GPT:让大语言模型理解表格数据
  • Android Studio 下载地址
  • Spring Cloud之API网关(Gateway)
  • 给新手程序员的建议
  • centos部署tomcat
  • 云计算模式的区域LIS系统源码,基于ASP.NET+JQuery、EasyUI+MVC技术架构开发
  • webpack 解决:TypeError: merge is not a function 的问题
  • HTML5和HTML的区别
  • MySQL多表关联on和where速度对比实测谁更快