1.文件类型与STM32中Flash大小、SRAM大小、Hex文件大小、Bin文件大小的关系
axf文件、hex文件和bin文件都可以运行在stm32上,并且都存储了编译器根据源代码存储的机器码,在不同的应用场合中有区别;
- axf文件:包含调试信息,编译默认生成的文件,不仅包含数据代码还包含调试信息,在MDK进行Debug就是这个文件;
- hex文件:包含地址信息;
- bin文件:最直接的代码映像;
- Flash大小与Hex文件大小没有关系;
一般串口烧录时,直接烧录的是Hex文件,所以可能误以为Flash大小和Hex文件大小有关系,实际完全没有关系,真正烧进去的是二进制文件,就是在Hex文件中包含的Bin文件数据
- Hex文件大小和Bin文件大小没有决定性的关系
Hex文件内容很多,其中包含Bin文件的二进制内容,很多软件都能把Hex直接转换成Bin文件,实际烧进去的是一堆Bin文件,而不是Hex
- Flash大小和Bin文件大小相关
Bin文件就是完全的程序文件了,也就是最直接的代码映像,可以说Bin文件大小就是Flash大小,ST-Link连接进去查看的Flash程序内容就是 和 PC用WinHex打开的内容一样