问题描述
大家都有过 反汇编 及 生成 bin 文件 的需求。
但是 keil 最多只支持两个命令,若再想使用工具对固件进行 签名、加密等操作就显然不够用了。
fromelf.exe --text -c -o "$L@L.asm" "#L"
fromelf.exe --bin -o "$L@L.bin" "#L"

问题分析
能自动化的东西绝不手动。Keil 调用 bat 脚本,脚本里执行多命令。
解决方法
为使命令更为简洁优雅,需要使用 keil 关键字给 bat 脚本传参,同时保证足够的灵活性。 keil 关键字详见参考资料。
keil 定义执行的用户命令
..firmware.bat "$J..in" "#L" "$L@L.asm" "$L@L.bin"

脚本内容
set compiler_path=%1
set axf_file=%2
set asm_file=%3
set bin_file=%4
:: 反汇编
%compiler_path%fromelf.exe --text -c -o %asm_file% %axf_file%
:: 生成 bin 文件
%compiler_path%fromelf.exe --bin -o %bin_file% %axf_file%
注:
keil没有提供编译器bin路径的关键字,只有编译器include路径,所以使用"$J..in"取代,一点小瑕疵,强迫症表明极其不舒服。
参考链接
- Key Sequence for Tool Parameters
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...