分享

MDK5(KEIL5)中生成bin文件

 眼镜蛇图书馆zh 2019-07-15

大家都知道MDK中默认可以生成hex文件,但是笔者最近在调试IAP在线升级程序时,需要用到bin文件来使用,那么在MDK中如何生成bin文件呢?

笔者胡乱搜索一通,到是找到了有很多方法可以生成bin文件,比如说借助外部的hex2bin软件,但是笔者实验之后发现生成的bin文件还是无法使用,并且文件体积也比较大。

通过比较,发现MDK内部自带有 fromelf.exe 工具,可以很方便的生成bin文件,并且生成的bin文件亲测可用。

该工具的语法为:fromelf [options] input_file

关于 [options] 的语法格式,这里就不啰嗦了,感兴趣的可以参考这篇文章
Keil如何生成bin文件

1、首先,打开现有的工程;
2、打开 Option for Target标签(即打开魔术棒);

在这里插入图片描述

3、选择Output标签页,写入需要生成的文件名称。

例如图中的PWM,并且记录生成文件的路径

在这里插入图片描述

4、选择User标签页,并且填入如下信息,在最前面Run,选择一下

在这里插入图片描述

D:\keil5\ARM\ARMCC\bin\fromelf.exe --bin --output ../OBJ/PWM.bin ../OBJ/PWM.axf

例如我自定义的一次生成的指令是:

C:\Keil_v5\ARM\ARMCC\bin\fromelf.exe   --bin -o ../../Output/sthex.bin ../../Output/sthex.axf

说明:
fromelf: D:\keil5\ARM\ARMCC\bin\fromelf.exe
MDK自带工具路径,笔者的路径如上所示,请修改为自己的路径(或者点击右边的文件夹小图标,找到该工具)。
[options]: --bin --output ../OBJ/PWM.bin
生成bin文件命令,想把生成的bin文件放在什么地方.记住路径最前面是 ../(两个点)
input_file: ../OBJ/PWM.axf
输入文件,这里是用axf格式的文件转换为bin文件,找到你工程里的axf文件所在位置,填上去就可以了。

这里填入的axf文件名,要和Output标签下的文件名一样,axf文件的路径也可以在这边看到。

其实这里如果不确定路径怎么写,就从Output中查看,可以设置为axf,bin文件在同一个路径下,这样最简单。

5、点击 OK,大功告成,再次编译,就可以在你想要的路径下,看到bin文件啦。
编译结果
bin文件

可能遇到的问题:

1、编译运行出错,找不到axf文件路径。
确认一下,路径是否和工程的axf文件路径一致,一定注意最前面是 …/,是两个点。

2、找不到bin文件。
确认一下,output输出路径,再次强调,一定注意最前面是 ../,是两个点。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多