UV4生成bin文件注意事项

长平狐 发布于 2013/03/19 18:20
阅读 217
收藏 0

在使用UV4编译生成目标文件的时候,在选项里可以配置生成hex文件,如下图,在下图中勾上Create HEX File前的复选框即可.

但是我们的目标是生成bin文件,因此需要另外两行用户指令来完成(其实我们可以不生成hex文件,只不过hex文件是用来给flash magic之个工具来用的).

在User选项卡中,如下图:

在上面选项卡中设置编译完后运行两条用户指令:

d:/Program Files/Keil/ARM/BIN/ElfDwT.exe./Flash/Blinky.axf

d:/Program Files/Keil/ARM/BIN40/fromelf.exe--bin --output ./Flash/Blinky.bin ./Flash/Blinky.axf

 

DlfDwT.exe是一个校验axf文件的工具,它的输入文件是axf文件.

fromelf.exe是一个将axf文件转化为bin文件的工具.

 

以上两条用户指令都不能缺少,

若缺少第一条指令,则生成的bin文件内缺少校验码.即0x1c~0x1f这四个字节为校验和.

缺少第二条指令则不能生成bin文件.

 

 

注:

生成的bin文件从0x1c~0x1f为校验码,它和0x00~0x1b这7个字总共8个字的和应为0x100000000,若不成立,则不能正常运行.

 

 

这样看来,在编译时没有进行校验和运算,因此,需要一个外部工具来完成这样的工作.同样,使用CoIDE时也存在这样的问题.

CoIDE编译时会生成bin文件,但是同样编译时没有进行校验和运算, 所以生成的bin文件中这4个字节都是0x00。

要生成带校验和的bin文件,可以使用CoIDE中的post-build功能。但需要安装了自带checksum功能的工具,如lpcxpresso。

打开工程配置build.xml,在Run User Programs区域的After Build/Rebuild标签下添加命令并打勾。
命令格式为:"checksum.exe路径" -p 芯片名 "bin文件路径"
例如:"D:\nxp\lpcxpresso_3.6.3_317\bin\checksum.exe" -p LPC1114"D:\ProgramFiles\CooCox\CoIDE\workspace\LPC1114\Debug\bin\LPC1114.bin"



参考:http://www.coocox.org/Forum/topic.php?id=905



原文链接:http://blog.csdn.net/flydream0/article/details/7058980
加载中
返回顶部
顶部