在一个项目应用中(MDK 平台开发),flash中包含3段:Boot,参数区及user App,分别加载到flash不同地址段,下载固件的时候需要分别下载Boot和User App ,操作耗时,在网上搜索到了一些hex资料:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka9903.html
http://en.wikipedia.org/wiki/Intel_HEX
仔细看了inter hex格式定义,hex 里面有3个关键“说明”:
1)“偏移地址”(hex文件第一行);
2)“跳转地址”(_main函数地址);
3)“结束行”;
只需要:
1) 删除user app的hex文件中“跳转地址”和“结束行”;
2)拷贝1)之后的user app固件插入到Boot“结束行”之前,合并两个Hex文件;
若Bin文件合并,由于flash段有参数保存区,所以在这个项目中无法使用Bin合并。