使用RVCT的fromelf.exe工具进行转换。也就是说首先将源文件编译链接成*.axf的文件,然后使用fromelf.exe工具将*.axf格式的文件转换成*.bin格式的文件。
假设工程文件的名字为Axf_To_Bin, 下面将具体说明这个操作步骤:
1. 打开Axf_To_Bin文件中的Axf_To_Bin.uv2工程文件;
2. 打开Options for Target ‘Axf_To_Bin’对话框,选择User标签页;
3. 构选Run User Programs After Build/Rebuild框中的Run #1多选框,在后边的文本框中输入C:/Keil/ARM/BIN31/fromelf.exe --bin -o ./output/Axf_To_Bin.bin ./output/Axf_To_Bin.axf命令行;
4. 重新编译文件,在./output/文件夹下生成了Axf_To_Bin.bin文件。
在上面的步骤中,有几点值得注意的是:
1. C:/Keil/ARM/BIN31/表示RV MDK的安装目录;
2. fromelf.exe命令的具体语法格式如下:
命令的格式为:fromelf [options] input_file
命令选项如下:
--help 显示帮助信息
--vsn 显示版本信息
--output file 输出文件(默认的输出为文本格式)
--nodebug 在生成的映象中不包含调试信息
--nolinkview 在生成的映象中不包含段的信息
二进制输出格式:
--bin 生成Plain Binary格式的文件
--m32 生成Motorola 32位十六进制格式的文件
--i32 生成Intel 32位十六进制格式的文件
--vhx 面向字节的位十六进制格式的文件t
--base addr 设置m32,i32格式文件的基地址
--text 显示文本信息
文本信息的标志
-v 打印详细信息
-a 打印数据地址(针对带调试信息的映象)
-d 打印数据段的内容
-e 打印表达式表print exception tables
-f 打印消除虚函数的信息
-g 打印调试表print debug tables
-r 打印重定位信息
-s 打印字符表
-t 打印字符串表
-y 打印动态段的内容
-z 打印代码和数据大小的信息