如何查看MDK编译后程序所占用的Flash和SRAM资源的大小?
另外在.s启动文件中堆和栈的大小又该如何分配?
编译之后再MDK的编译结果那里会有显示
其中Code为代码体积,放在flash区
RO-Data为只读变量,就是用const enum那些定义的,放在flash区
RW-Data表示已初始化的全局变量,RAM和flash都要占用(flash保存初始化的值)
ZI-Data表示未初始化的全局变量
因此flash空间就是前面三个加起来,RAM是后面两个加起来,单位都是Byte
flash = Code + RO-data + RW-data
ram = RW-data + ZI-data
flash = Code + RO-data + RW-data = 29864 + 123592 + 60 = 153516 bytes
sram = RW-data + ZI-data = 60+ 3900= 3960bytes