keil mdk 生成二进制.bin文件

三种文件的区别

.axf文件:

全称:Absolute and Executable Format,即绝对可执行格式文件。
内容:该文件不仅包含了程序的二进制代码,还包含了调试信息,如符号表、源代码行号等,有助于开发者在调试过程中快速定位问题。
用途:主要用于调试,因为它包含了丰富的调试信息,使得开发者可以在IDE中设置断点、查看变量值等。

.hex文件:

全称:Intel Hexadecimal Object File Format,即Intel十六进制对象文件格式。
内容:该文件主要包含了程序的二进制代码,以及用于指示程序在内存中位置的地址信息。
用途:主要用于程序的下载和烧录,因为它以一种简单的格式表示了程序的二进制内容和地址信息,便于烧录工具将其写入到微控制器的Flash中。
hex文件详解:https://blog.csdn.net/mftang/article/details/137568326

.bin文件:

全称:Binary File,即二进制文件。
内容:该文件是纯粹的二进制代码,不包含任何调试信息或地址信息,仅包含程序的实际执行代码。
用途:主要用于直接烧录到微控制器的Flash中,或者用于需要通过特定烧录工具进行程序下载的场景。由于它不包含调试信息,因此文件大小相对较小,适合在存储空间有限的环境中使用。

生成BIN文件

绝对路径

D:\Keil_v5\ARM\ARMCC\bin\fromelf.exe --bin -o .\Objects\RTX_.bin .\Objects\RTX_.axf 

相对路径

在工程移动的时候,相对路径不会随工程文件位置的改变而重新配置;

$K\ARM\ARMCC\bin\fromelf.exe --bin --output=@L.bin !L       //在xxx.uvprojx当前目录下,xxx.bin

将bin文件生成在指定目录下

$K\ARM\ARMCC\bin\fromelf.exe --bin --output=Objects\@L.bin !L    //在xxx.uvprojx当前目录下,可看到一个新生成的Objects文件夹,里面是xxx.bin

有环境变量的情况下,可以省去前面的内容

fromelf.exe --bin --output=Objects\@L.bin !L     //在xxx.uvprojx当前目录下,可看到一个新生成的Objects文件夹,里面是xxx.bin

posted @ 2025-03-19 08:51  小兜兜me  阅读(170)  评论(0)    收藏  举报