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所示:
通过这一步设置,我们就可以在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升级。