加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

Keil MDK利用 fromelf 实现axf 转 bin 的方法

2021/01/28
641
阅读需 4 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

前面我们讲述了bin、hex、axf 和 elf文件格式,其中 axf 也算是一种可执行程序文件,只是相对 bin 和 hex 具有更多的调试信息。

Keil MDK 默认不会生成 bin 文件,如果需要 bin 文件,可通过 fromelf 工具实现 axf 转 bin 文件。

配置输出 hexKeil 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_v5ARMARMCLANGbin

如果你安装时修改了路径,就需要使用对应的路径。

2. 配置 Keil 工程选项

Project -> Options for Target ->  User -> After Build/Rebuild 添加指令:

C:Keil_v5ARMARMCLANGbinfromelf.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_v5ARMARMCLANGbinfromelf.exe --bin -o  ./Objects/Demo.bin ./Objects/Demo.axf
C:Keil_v5ARMARMCLANGbinfromelf.exe --bin --output=./Objects/Demo.bin ./Objects/Demo.axf

-o:是以前老版本工具的缩写命令。

这里可参看:

https://www.keil.com/support/man/docs/armutil/armutil_pge1362128885938.htm

相关推荐

电子产业图谱

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。