在开发阶段,一般使用ISP或者JTAG将bootloader烧录进单片机,然后再通过bootloader下载APP的方法烧录两个hex。
现在想将讲个hex合并为一个,直接用ISP一次性烧录。方便,省事儿。
试了百度上的很多方法:
1.掐头去尾,手动合并hex,删除bootloader的结束语,然后拷贝app.hex到bootloader.hex的结尾,另存后直接烧录。
2.将两个hex通过开发阶段的方法烧录后读出hex,在使用该hex去烧录其他芯片。
以上,两种方法实验过,都不行。不知道这些方法是不是不适用于nxp的单片机?!
在此请教各路大神,是怎么解决这个问题的。
小弟先谢过!
此帖出自
小平头技术问答
可以参考下面这篇文章:
KEIL生成的bin文件如何通过代码有效性检测?
1. 楼主“删除bootloader的结束语”里面,有没有校验码之类的信息啊。
2. 合并后的文件,工具能认识吗。
在其他平台上,客户要求把几个合并成1个,方便管理,搞过。
hex就是地址和数据,合并后,只要上游工具和下游硬件支持,就可以。
5525:
你好,hex文件的结束语句都是一样的。合并后的文件也是hex:使用bootloader.hex的头,和结束语,将APP的头尾去掉直接插入到bootloader的结束语句前。
使用了一些合并hex的工具(STM32F1xx上可用),合并后的hex和手动合并的一样。就是掐头去尾的做法。烧录后均不能正常工作。
一周热门 更多>