1.在工程中添加构建后步骤(post-build)
如图在IDE这里进行指令添加
注意这里添加指令要使用“&”,如下
这里我使用上篇说到的hex2bin.exe 用法,使用批处理文件将 hex 文件转为 bin 文件的bat文件测试下。
我在工程中添加了tools文件夹
“前面的指令” & cmd /c "..\tools\test-hex2bin.bat"
这里其实我已经通过设置实现了编译生成hex、bin文件了,手动添加个批处理文件的指令测试下
${cross_prefix}${cross_objcopy}${cross_suffix} -O ihex "${ProjName}.elf" "${ProjName}.hex" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O binary "${ProjName}.elf" "${ProjName}.bin" && cmd /c "${ProjName}\tools\hex2bin" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O ihex "${ProjName}.elf" "${ProjName}.hex" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O binary "${ProjName}.elf" "${ProjName}.bin" && cmd /c "${ProjName}\tools\test-hex2bin" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O ihex "${ProjName}.elf" "${ProjName}.hex" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O binary "${ProjName}.elf" "${ProjName}.bin" && cmd /c "${workspace_loc:/${ProjName}/tools/test-hex2bin.bat}" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O ihex "${ProjName}.elf" "${ProjName}.hex" && ${cross_prefix}${cross_objcopy}${cross_suffix} -O binary "${ProjName}.elf" "${ProjName}.bin" & cmd /c "..\tools\test-hex2bin.bat"
扩展:MRS可以在这里设置生成hex、bin
2. 测试
可以看到默认是在当前工程的obj文件夹下执行的bat指令,所以test-hex2bin.bat中的内容需要修改下:
copy *.hex ..\tools\output.hex
..\tools\hex2bin -b -c ..\tools\output.hex
这样就简单实现了MounRiver Studio在编译后执行bat批处理文件