hex文件合并

本文介绍了合并hex文件的三种方法。一是手动合并法,删除boot文件最后一行,将APP代码内容拷贝到boot文件末尾;二是使用J - Flash工具,通过选择文件、合并文件、保存文件完成操作;三是利用开源小工具,添加boot和app的hex文件后点击合并生成新文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

合并hex文件的几种方法

1、手动合并法

打开我们的hex文件,就以BOOT和APP代码为例,用记事本或者其他的软件(notepad++等)打开
在这里插入图片描述
hex文件最后一行是代表文件的结束,那么我们只需要删除boot文件的最后一行代码,然后把APP的代码的全部内容直接拷贝过来,接到boot文件的最后一行。
(关于hex文件的格式可以参考:hex文件格式详解

先删除boot文件的最后一行代码:
在这里插入图片描述
然后把APP的代码的全部内容直接拷贝过来,接到boot文件的最后一行:
在这里插入图片描述
上面图示的情况是BOOT占用0x08000000到0x0x08003FFF的空间,APP占用0x0x08004000开始后面剩余的空间。

保存后我们就得到了最终的hex文件,直接烧录进去MCU即可。

2、J-Flash工具合并

jlink说我们必不可少的烧录调试工具之一,一起来看看怎么使用jlink自带的J-Flash工具软件合并

打开J-Flash,首先选择我们的第一个BOOT文件,file->open data file然后选择文件即可
在这里插入图片描述
打开之后,可以看到地址是从8000000开始的,也即是我们的MCU flash的基地址
在这里插入图片描述
然后再点击file->merge data file
在这里插入图片描述
选择我们的第二个APP文件,选择打开之后,第二个hex文件就拼接到了BOOT文件之后了

在这里插入图片描述

然后再点击file->save data file as…保存文件即可,建议另存为我们需要的文件名,默认为我们打开的第一个文件。注意文件后缀名。
在这里插入图片描述

3、开源小工具

这个方法和上面J-Flash的方法类似,网上有很多热心网友开发的小工具,这里我推荐一个开源项目:https://github.com/SmartElec/STM32-IAP-HEX-Merge

工程下载下来里面有源码,感兴趣的就看看,不感兴趣的就直接用即可,在STM32-IAP-HEX-Merge-master\Hex文件合并\bin\Release文件夹内
在这里插入图片描述
点击选择文件,分别添加boot和app的hex文件,选择输出目录,设置输出文件名称,点击合并即可生成到设置的目录下。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾爱技术圈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值