1.先给个 axf 文件 转编译bin文件的代码
2.解析下编译文件MAP
先给个编译提示
Code 是代码占用的空间
RO-data是 Read Only 只读常量的大小,如const型
RW-data是(Read Write) RW是可读可写变量,就是初始化时候就已经赋值了的,RW + ZI就是你的程序总共使用的RAM字节数。
ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小,就是程序中用到的变量并且被系统初始化为0的变量的字节数,keil编译器默认是把你没有初始化的变量都赋值一个0,这些变量在程序运行时是保存在RAM中的
其他的map 信息 主要就是 各个文件编译地址 函数分布地址(函数时0x2000xxx 对应运行栈地址 非 flash 的0x80xxxxx的存储地址)
编程人员一般注意 ram 不要大于单片机芯片的规定ram,比如下图的 不要大于64KB
程序代码不要大于flash的大小,这个一般不会超。