MDK默认生成的文件是.hex文件,并不方便我们用作IAP更新,我们
希望生成的文件是.bin文件,这样可以方便进行IAP升级。这里我们通过MDK自
带的格式转换工具fromelf.exe,来实现.axf文件到.bin文件的转换。该工具在
MDK的安装目录\ARM\BIN40文件夹里面。
本章,我们通过在MDK点击OptionsforTargetà User选项卡,在Run
User Programs After Build/Rebuild栏,勾选Run#1和DOS16,并写入:C:\Keil\ARM\BIN40\fromelf.exe --bin -o
.\Bin\CarLocator.bin
.\output\CarLocator.axf(这里或者可能是
C:\Keil\ARM\BIN40\fromelf.exe --bin -o ..\Bin\CarLocator.bin ..\output\CarLocator.axf,这是根据工程的文件夹路径结构决定的
)
,如图1所示:
![keil mdk 下bin文件生成 keil mdk 下bin文件生成](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0RvdkwySXpPREF1Y0dodmRHOHVjM1J2Y21VdWNYRXVZMjl0TDNCellqOHZWakV4VERoaWNEWXdjMWxFVG5BdlkwTkhNa3hETjFoT2FURTBjR3AwWVc5cVNXRjVVSEl3VWxZM1FrNTJORnBMYkZWRlkzcHlka3BpZHlFdllpOWtUSFZNYUdWTWVVNW5RVUVtWldzOU1TWnJjRDB4Sm5CMFBUQW1ZbTg5WkdkTVYwRllXVU14WjBWRVFVTlZJU1p6ZFQweE56ZzBNVGMyT1RjbWMyTmxQVEF0TVRJdE1USW1jbVk5TWkwNQ%3D%3D.jpg?w=700&webp=1)
通过这一步设置,我们就可以在MDK编译成功之后,调用fromelf.exe
(注意,我的MDK是安装在
C:\Keil\ARM
文件夹下,如果你是安装在其他目录,
请根据你自己的目录修改fromelf.exe的路径),根据当前工程的CarLocator
.axf(这个文件在OutPut选项卡中成,“Select Folder for Objects...”选择路径,这里是“output”,在"Name of Executable:"处写上要生成的Hex文件的名字,这里是
CarLocator,编译工程后,则在output文件夹中生成了
CarLocator
.axf。
如
果是其他的名字,请记住修改,这个文件存放在output目录下面,格式为
xxx.axf),生成一个
CarLocator
.bin的文件。并存放在自己建立的工程下面的Bin文件目录
里面。在得到.bin文件之后,我们只需要将这个bin文件传送给
单片机,即可执行IAP升级。
![keil mdk 下bin文件生成 keil mdk 下bin文件生成](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0RvdkwySXpOemt1Y0dodmRHOHVjM1J2Y21VdWNYRXVZMjl0TDNCellqOHZWakV4VERoaWNEWXdjMWxFVG5BdlRHeHZhV3hrZFZCb2VYYzVRbkpWYkRWc1NGZHRXR3hMY0VWRGJVUkVjRlo0TmtNMVJGbFFWVlpEV1NFdllpOWtSMk5OT0U5R2NFeEJRVUVtWldzOU1TWnJjRDB4Sm5CMFBUQW1ZbTg5WkdkTVYwRllXVU14WjBWRVFVTlZJU1p6ZFQweE9UUXdPVGc1TWprbWMyTmxQVEF0TVRJdE1USW1jbVk5TWkwNQ%3D%3D.jpg?w=700&webp=1)