关于Stm芯片,keil编译后输出的信息,查看程序所占用的Flash、RAM空间大小

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42174355/article/details/86541684
 

关于Stm芯片,keil编译后输出的信息,查看程序所占用的Flash、RAM空间大小

 

 

根据keil编译输出的信息

code:表示程序代码部分

RO_data:表示程序已经定义的常量(如用const修饰的变量......)

RW_data :表示已经初始化的全局变量(已初始化的和未初始化的全局变量存储在不同的空间里)

ZI_data:表示未初始化或者初始化未0的全局变量

程序占用的flash大小:code+RO_data

运行是程序占用的RAM大小:RW_data+ZI_data

烧写程序占用的falsh大小:code+RO_data+RW_data

烧写到stm32上的bin文件或hex文件称为映象文件image,包含了3部分:code,RO_data,RW_data,因为ZI_data的数据为0,所以只需要将ZI对应的区域(在RAM中)清零即可

stm32上电后cpu会根据BOOT0和BOOT1来决定从falsh启动还是从RAM启动,默认flash启动;启动后搬运RW_data到RAM中但不搬运code,CPU执行代码是从flash里面一条一条读取而不是在RAM中

 
 ———————————————— 
版权声明:本文为CSDN博主「洱东陈」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42174355/article/details/86541684

上一篇:java封装中使用set方法去访问私有属性


下一篇:java语言基础之关键字2(abstract、interface、implements、instanceof)