之前我们介绍了bin、hex、axf和elf文件格式,其中axf是一种可执行程序文件,与bin和hex相比,它包含更多的调试信息。
默认情况下,Keil MDK并不会生成bin文件,但是如果需要生成bin文件,可以使用fromelf工具将axf文件转换为bin文件。
另外,在Keil MDK中,默认的输出选项只有hex文件格式。
Project ->Options for Target -> Output 勾选上“Create HEX File”(如下图)
其实在IAR中,工程配置就有选择bin还是hex的选项,Project -> Optinos -> Output Converter:
axf 转 bin 配置
虽然hex转bin的方法有很多,但是可通过Keil MDK自带的 fromelf 工具实现axf转bin文件。
1.确定 fromelf 工具所在位置(目录)
Keil MDK V4版本默认位于:C:\Keil/ARM/BIN40
Keil MDK V5版本默认位于:C:\Keil_v5\ARM\ARMCLANG\bin
如果你安装时修改了路径,就需要使用对应的路径。
2.配置Keil工程选项
Project -> Options for Target -> User -> After Build/Rebuild 添加指令:
C:\Keil_v5\ARM\ARMCLANG\bin\fromelf.exe --bin --output ./Objects/Demo.bin ./Objects/Demo.axf
其中:
-
C:\Keil_v5:是你对应的安装路径(工具所在路径); -
Objects:为输入输出位置;
3.格式说明
基本格式为:
fromelf [options] output_file input_file
其中:
-
[options]:选项字 -
output_file:输出文件 -
input_file:输入文件
结合上面例子你会发现:
-
选项字为:–bin –output -
输出文件:./Objects/Demo.bin -
输入文件:./Objects/Demo.axf
可能你会看见不同的实现方式,比如:
C:\Keil_v5\ARM\ARMCLANG\bin\fromelf.exe --bin -o ./Objects/Demo.bin ./Objects/Demo.axf
C:\Keil_v5\ARM\ARMCLANG\bin\fromelf.exe --bin --output=./Objects/Demo.bin ./Objects/Demo.axf
-o:是以前老版本工具的缩写命令。
这里可参看:
https://www.keil.com/support/man/docs/armutil/armutil_pge1362128885938.htm
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !