STM32如何查看Flash和RAM使用空间以及如何压缩RAM的使用空间
2017-11-22 17:02
267 查看
KEIL编译完成后,在Build Output窗口会出现一下信息:
Code是代码占用的空间;
RO-data是 Read Only 只读常量的大小,如const型;
RW-data是(Read Write) 初始化了的可读写变量的大小;
ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化;
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data
程序运行的时候,芯片内部RAM使用的空间为: RW Data + ZI Data
我的代码中,Flash占用空间code =24586字节+RO-data=626字节,RAM占用空间为RW-data=220字节+ZI-data=8308字节
下面介绍如何压缩RAM空间,主要是一些全局变量的定义,大家可以打开自己工程文件夹下面的OBJ文件夹,找到一个后缀为.MAP的文件,可以找到
如图 可以看到不同变量占用RAM空间的大小及地址,可以根据这个删除不必要的变量或空间,可以节省RAM空间,选择小RAM的芯片,降低成本
Code是代码占用的空间;
RO-data是 Read Only 只读常量的大小,如const型;
RW-data是(Read Write) 初始化了的可读写变量的大小;
ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化;
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data
程序运行的时候,芯片内部RAM使用的空间为: RW Data + ZI Data
我的代码中,Flash占用空间code =24586字节+RO-data=626字节,RAM占用空间为RW-data=220字节+ZI-data=8308字节
下面介绍如何压缩RAM空间,主要是一些全局变量的定义,大家可以打开自己工程文件夹下面的OBJ文件夹,找到一个后缀为.MAP的文件,可以找到
如图 可以看到不同变量占用RAM空间的大小及地址,可以根据这个删除不必要的变量或空间,可以节省RAM空间,选择小RAM的芯片,降低成本
相关文章推荐
- cisco交换机如何查看CPU和内存使用情况,以及如何查看接口数据量
- Flex中如何通过创建新的XML命名空间(namespace),在MXML中使用flash.filters类
- 如何查看Win8安装应用以及在多设备帐户同步安装使用的方法介绍
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- 归纳STM32 FLASH 擦除(以及如何防止误擦除程序代码)、写入、读取方法
- 查看临时表空间使用情况,如何扩展表空间
- cisco交换机如何查看CPU和内存使用情况,以及如何查看接口数据量
- 问题9:如何查看当前是哪个用户使用了undo表空间,使用了多少?
- 如何查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件
- DB2如何查看日志使用空间
- 如何查看Activity任务栈以及dumpsys_activity命令的简要使用及介绍
- 如何查看ORACLE各个表空间的使用情况
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- 如何查看gpio 使用状态,以及被那些模块request
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- stm32--如何使用J-Flash 调试
- Oracle 查看表空间使用情况以及增加表空间
- 如何查看gpio 使用状态,以及被那些模块request
- Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书
- 如何查看表空间使用情况