合并bootloader和application方式小结
文章目录
- 合并bootloader和application方式小结
- 1. 前言
- 2. IAR编译bootloader配置
- 3. IAR编译application配置
- 4. IAR合并application和bootloader
- 5. JFlash合并
- 6. 最后
1. 前言
目前发现两种合并application和bootloader比较方便的方式,没有使用网上说的比较多的UBIN软件和自己写脚本的方式,使用了J-Flash和IAR两种软件测试了一下,J-Flash比较方便合并bin文件,IAR都可以,自带合并工具CombineBootloaderAndApplication.exe,这里简单做下总结说明iar生成bin、hex,编译bootloader、application和合并的过程。
2. IAR编译bootloader配置
可配置生成hex、bin等:
添加编译需要的文件所在目录:
3. IAR编译application配置
和编译bootloader类似:
4. IAR合并application和bootloader
在application编译时设置即可,参考IAR的使用手册,使用CombineBootloaderAndApplication.exe即可合并hex和bin等:
命令一般为:
$PROJ_DIR$\..\Tool\CombineBootloaderAndApplication.exe $PROJ_DIR$\..\bootloader\Debug\Exe\bootloader.hex $PROJ_DIR$\Seed_STM32L471RE\Exe\application.hex $PROJ_DIR$\Seed_STM32L471RE\Exe\TOUCH-H1&H2&H3-V200_BTEA.hex
…\Tool\CombineBootloaderAndApplication.exe
…\bootloader\Debug\Exe\bootloader.hex
\Seed_STM32L471RE\Exe\application.hex
\Seed_STM32L471RE\Exe\TOUCH-H1&H2&H3-V200_BTEA.hex
CombineBootloaderAndApplication.exe、bootloader.hex、application.hex就是合并工具和app、boot对应生成的hex程序,最后的BEAT.hex就是合并后的hex。
5. JFlash合并
还可以使用JLink的F-Flash进行bin、hex文件合并。
下载JLink:https://www.segger.com/products/debug-probes/j-link/tools/j-flash/about-j-flash/
安装之后打开JFlash:
然后File->Open Data File:
输入起始地址:
Merge data File:
再次输入开始地址:
注:这两个起始地址分别对应你boot、app的起始地址。
这两个起始地址可以使用stlink的工具连接后查看:
6. 最后
至于CLION搭建的环境也可以使用Combine类似的工具来合并生成的程序,当然,对于hex文件可以使用notepad++等文件或者shell脚本等合并文件,hex相较bin文件虽然大小会大一些,但是合并起来会方便一些。