STM32将IAP和APP一次性下载进MCU的方法

一、Keil编译生成bin文件
  1.在Keil界面点击魔法棒按键(Options for traget)
  2.点击User选项卡。
  3.将After Build/Rebuild 下的 Run #1打钩,后面写入 fromelf.exe --bin -o "[email protected]" "#L" 
  4.重新编译工程,在输出的文件夹里将有一个和工程名字相同的.bin文件。

二、合并.bin文件
  1.将IAP和APP程序分别找出。打开 二进制文件合并工具。
  2.先将IAP产生的.bin文件拖入界面中,此时源文件后面应显示此.bin文件的路径,然后点击添加,该文件被添加到上面的列表中。
  3.再将APP产生的.bin文件拖入界面中,看到路径正确之后,更改偏移量(视情况而定,一般为0x00004000),在“插入”前面打钩,然后点击确定,再点击添加。此时上方的列表中应有两个文件的索引,且偏移地址正确。
  4.选取一个目标文件生成的路径,并为目标文件设置名字。点击合并,即可将两个.bin文件合并。

三、烧录合并后的.bin文件(使用J-Link SWD模式,BOOT0 = BOOT1 = 0)
  1.无法使用FlyMcu.exe烧录.bin文件,可能因为Keil转换后的.bin文件格式与FlyMcu.exe所支持的不同。
  2.使用 SEGGER J-Flash.exe 下载。
  3.设置好串口,波特率设置为115200(不超出MCU规定的范围即可)
  4.点击 file—> Open data file,将合并后的.bin文件添加进来。此时会弹出设置开始地址的对话框,填入8000000。点击OK。
  5.点击Target—> Manual Programming—>Erase Chip 将芯片擦除。
  6.点击Target—> Production Programming 进行下载。
  7.完成。

附:二进制文件合并工具下载地址:链接: https://pan.baidu.com/s/1D7D-cZ2wj_MU4mJ2hL9PWQ 密码: qtx4
 

你可能感兴趣的:(stm32)