After Buid/Rebuid  选项下的Run#1 打上勾,在后一格添加一行代码,此代码的功能为将Objects下的project.axf文件转换为project.bin文件输出至Objects文件夹下。其中.axf文件为keil编译过程产生的文件。

fromelf --bin --output Objects\project.bin Objects\project.axf

fromelf 是keil安装目录下\Keil_v5\ARM\ARMCC\bin 的文件

点击编译接着文件就自动生成

尝试让自动运行 .bat文件,  探索中········

killl.bat  放在

这个路径下面,用于删除不用的多余的文件,只留下 hex文件

killl.bat   文件内容:

del *.O /s
del *.d /s
del *.dep /s
del *.htm /s
del *.txt /s
::del *.opt /s  ::不允许删除JLINK的设置
del *.axf /s
del *.lnp /s
del *.dep /s
del JLinkLog.txt /s
del *.iex /s
del *.sct /s
del *.crf /s
exit

Command.bat   转二进制文件,  和打包脚本内容:

cd /d D:\DA14580\program\OTAhex2bin -e bin A.hex
hex2bin -e bin secondary_bootloader.hex
mkimage.exe single A.bin version.h A.img
mkimage.exe multi spi secondary_bootloader.bin A.img 0x8000 A.img 0x13000 0x1f000 OTA.bin
exit

方案二:  用 .Bat 脚本,编译完后自动运行用户自定义程序

需求: 在每次工程编译后,在工程目录下的out文件夹下会生产 A .hex文件。

用2个脚本分实现:

第1个脚本:Copy_hex.bat

第一步,将编译后生成的 A.hex文件 copy出来到另一个目录

copy /y D:\program\Projects\WP_LEARN\JC_M10_v1.1\projects\target_apps\ble_examples\ble_app_ota\Keil_5\out_580\A.hex D:\program\Projects\WP_LEARN\JC_M10_v1.1\hex2bin\
exit

第2个脚本:Command_hex2bin.bat

cd /d D:\program\Projects\WP_LEARN\JC_M10_v1.1\hex2binhex2bin -e bin A.hexhex2bin -e bin secondary_bootloader.hexmkimage.exe single A.bin version.h A.imgmkimage.exe multi spi secondary_bootloader.bin A.img 0x8000 A.img 0x13000 0x1f000 OTA.bin
exit

第二步: 在这个目录里,利用copy出来的.hex文件,转换为 .bin文件。

将转换后的 .bin文件 和一个secondary_bootloader.hex 合并, 生产一个A.hex,

然后将此 A.hex 转换成 A.img,  然后设置引导位置后,生产OTA文件。

这里:

Run#1 中填的为: D:\program\Projects\WP_LEARN\JC_M10_v1.1\hex2bin\Copy_hex.bat

Run#2 中填的为:D:\program\Projects\WP_LEARN\JC_M10_v1.1\hex2bin\Command_hex2bin.bat

bat目录

编译前:

编译后:

A.hex 为 脚本复制过来的。

A.hex,A.bin,A.img,A_OTA.bin 均为后来生成的(其中A.hex被重新生成覆盖一次)。

注意:以上 .bat脚本运行时,均需要按实际目录更改目录路径。

.bat 文件:https://download.csdn.net/download/jiangchao3392/11196483

注意:工程目录被移动或是copy后导致工程的路径改变,需要响应的更改下面的地方:

1,keil你们的bat文件路径对应要更改。

2, 2个脚本文件内的内容路径要更改:

3,确认Hex的生成路径及名称:

参考:

https://blog.csdn.net/weixin_42108004/article/details/82533085

http://gk969.com/keil-mdk-user-program/

https://blog.csdn.net/ybhuangfugui/article/details/51655502

.bat参考:

http://www.openedv.com/posts/list/600.htm

http://www.openedv.com/posts/list/598.htm?fromAll=0

https://www.jb51.net/article/18981.htm

https://gk969.com/keil-mdk-user-program/

Keil 编译前后 自动将 hex 转 bin相关推荐

  1. KEIL的hex与bin文件自动生成到指定目录

    由于每次生成查找HEX BIN文件不方便,借鉴网上的文章拼出了下面的BAT文件,分享一下 使用方法见注释 :: @File Name: HEXBIN.bat :: @Version : 1.0 :: ...

  2. hex文件格式剖析,以及hex与bin文件互相转换

    大家好,我是学电子的小白白. 熟悉单片机开发的朋友,应该经常见到*.hex后缀的文件,它是单片机和嵌入式工程编译输出的一种常见的目标文件格式(比如keil就能编译输出hex文件),通过烧写工具把它下载 ...

  3. IAR工程下.eww、.ewp、.ewd、.map、.hex、.bin、.browse、.ewt、.o文件的作用!

    1.eww:工作空间文件(不可删除) 这个文件是多个工程的索引文件,也是我们打开IAR工程的文件. 2.ewp:工程文件(不可删除) 新建工程之后产生的文件,在同一个工作空间下建立多个工程,就会有多个 ...

  4. HEX和BIN文件的区别

    上一篇文章中演示的是裸板开发过程中可能遇到的两个问题的解决办法. 1,是在keil中编写程序并编译连接成可以下载到开发板的  .hex 文件,然后用jlink仿真器下载:2,是在ubuntu中编写编译 ...

  5. Hex、bin、axf、elf格式文件小结

    一.HEX Hex文件,一般是指Intel标准的十六进制文件.Intelhex 文件常用来保存单片机或其他处理器的目标程序代码.它保存物理程序存储区中的目标代码映象.一般编程器均支持生成此种格式文件. ...

  6. HEX转BIN 小技巧分享

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.STC-ISP工具 前言 提示:这里可以添加本文要记录的大概内容: HEX是一般的编译工具生成的烧写文件.正常使用 ...

  7. .s19 文件转换为 .hex 和 .bin文件的方法

    使用STVD开发时,编译后产生的是 .s19 文件,与Keil 和 IAR常见的.hex .bin文件不同,那么如何将.s19文件转换为常见的文件格式呢? 一.获取工具 burner         ...

  8. Hex和Bin的区别

    转自:http://blog.csdn.net/spdian/article/details/52963467 HEX文件和BIN文件是我们经常碰到的2种文件格式.因为自己也是新手,所以一直对这两个文 ...

  9. MDK中hex转BIN文件生成

    MDK开发的技巧: 1.使用fromelf.exe程序,将.hex或者.axf转化为.bin文件. 2.利用.bat批处理文件,将.bin和.hex拷贝到需要的文件夹下. 例如:E685工装中 Run ...

最新文章

  1. python输入函数后无法运行_python - 如何在函数运行期间忽略所有用户输入?_python_酷徒编程知识库...
  2. Mask_RCNN训练自己的模型(练习)
  3. python中的浮点数用法_如何利用Python在运算后得到浮点数值的方法详解
  4. 必读干货 | 如何做好向上管理,分享我实践多年的完整方法论
  5. mysql遇到时区问题的坑(Java解决方案)
  6. python性能解决_我们如何发现并解决Python代码中性能下降的问题
  7. 作者:滕飞(1984-),女,博士,西南交通大学信息科学与技术学院讲师,CCF和ACM会员。...
  8. 信息学奥赛一本通(1313:【例3.5】位数问题)
  9. 系统学习深度学习(二十九)--模型压缩
  10. perl判断变量是数值_Perl学习12之defined undef使用
  11. 实现一个闹钟_iOS 14 闹钟:为啥这么难用?
  12. r语言 html 变为ppt,如何用R来定制个性化PPT
  13. 2020-11-19学习记录(keer‘s bug与gdb bug)
  14. 算法- C语言实现侏儒(地精)排序(Gnome_sort)
  15. [Web安全]信息收集
  16. 苹果cms用宝塔定时采集+添加百度推送教程
  17. 自考本科有用吗?对职业发展有多大用处
  18. 模型描边(二)—— three.js着色器法线延伸
  19. Android Transformations分析
  20. 聋校计算机教学工作总结,2014年年上半年聋校七年级数学教学工作总结

热门文章

  1. 中国2001-2019年各省风险投资数据VC
  2. SPSS多元线性回归残差分析的基本方法
  3. htop 进程管理工具
  4. MATLAB计算信号短时平均过零率
  5. SpringBoot+MyBatis(动态数据源/分布式事务XA(Atomikos))
  6. Kaggle所有量化金融竞赛汇总。
  7. python列表输出学生姓名学号链表_建立一个链表,记录学生的姓名,学号和成绩,
  8. android短信拦截与发送,有效拦截苹果iMessage垃圾短信的几个方法
  9. PYTHON 编写程序实现以下功能:计算beg到end之间的所有水仙花数并输出。如果beg到end之间不存在水仙花数,则输出“not found”。
  10. 经济与金融大数据挖掘——知识点总结回顾