我正在使用Cortex-M4 MCU,并且正在使用Jlink对其进行闪烁。
对于此项目,我的.bin文件约为18k
,而我的.elf文件约为1.8M
。我知道整个.elf不会被刷新到MCU上,但是有多少呢?只是闪烁的.bin大小,还是还有一些额外的调试信息?
有没有一种方法可以确定实际闪存到MCU上的数据量?
。bin的大小可能是闪存到MCU上的大小。 (我之所以说“可能”,是因为.bin文件有可能根据其创建方式被填充一些空白空间。)
研究链接器生成的.map文件。 .map文件描述了内存中所有内容的地址和大小。 .text和.rodata节通常位于flash中。 .data和.bss部分通常位于RAM中。如果您知道存储器的地址范围,那么将很容易确定哪个部分位于哪个存储器中以及每个存储器中使用的范围。