• STM32合并烧录IAP+APP


    STM32合并烧录IAP+APP 通过查找相关资料 

    有以下几种合并方法

    第一种直接将二进制文件用记事本合并

    而要合并的就是就将IAP最后的一行删除,然后将APP程序追加在后面。

    (修改前)

    把APP的.hex 全部内容拷贝复制到 刚才删掉结束语句的 IAP的.hex后面

    (修改后)

    第二种使用二进制合并工具 

    二、合并.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

                                版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                            
    原文链接:https://blog.csdn.net/hb69222/article/details/80538749

    第三种  使用 J-FLASH 进行合并

    合并操作步骤

    在这里插入图片描述

    图2

    在这里插入图片描述

    图3

    在这里插入图片描述

    打开IAP程序BOOTLoader文件

    在这里插入图片描述

    添加BOOTLoader

    在这里插入图片描述

    下一步添加APP程序

    在这里插入图片描述

    图7

    在这里插入图片描述

    保存合并 工程文件

    在这里插入图片描述

    图10

    在这里插入图片描述

     

    IAP+APP拼接方法
    用于产品量产,烧录的程序文件,一般是hex,或bin文件。不管是hex文件,还是bin文件,我们都需要通过烧录软件 + 烧录(编程)工具实现。烧录软件针对不同MCU,一般有不同的烧录软件。

    针对STM32,一般建议使用官方提供的STVP、ST-LINK Utility和STM32CubeProg 这三种编程软件。

    拼接说明
    1、拼接IAP+APP两段程序,一般简单方法就是:将两个程序分别烧录进去,再统一读取出来,保存成一个量产文件。
    2、IAP 和 APP程序的起始地址是不同的,因此烧录进芯片,是存储在两片区域的。烧录程序的时候,特别是烧录bin文件(没有地址)时,要注意设置好起始地址。hex文件有地址地址,不用自己设置地址。读取“合并”程序的时候,同样要注意起始地址,还有读取大小,保证读取全部程序。

    比如通过ST-LINK Utility读取STM32程序:

    通过STM32CubeProg读取STM32程序:

    再次提示:
    烧录bin文件时,设置好起始地址;
    读取时,设置起始地址,读取大小;
    保存可选择hex,还是bin文件;

    bin、hex文件互相转换
    在某些情况下需要使用特定格式的文件,比如我们远程升级,要求通过bin文件实现。通过上面的介绍,其实你会发现,使用编程软件ST-LINK Utility,或STM32CubeProg,就能直接另存为hex,或bin文件格式。

    ST-LINK Utility另存为:

    STM32CubeProg另存为:

    参考MDK-ARM如何生产Bin文件
    ————————————————

                                版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                            
    原文链接:https://blog.csdn.net/weixin_45905650/article/details/108010156

  • 相关阅读:
    【.NET Core】深入理解IO之File类
    [Java]前中后序遍历二叉树/递归与非递归
    八大排序(二)快速排序
    Vue3.0种中新增的teleport和suspence标签
    【英语语法】 for
    70.qt quick-QQmlListProperty详解
    海思万能平台搭建:颜色空间转换YUV2RGB
    Linux 基础-文件及目录管理
    单元测试,集成测试,系统测试的区别是什么?
    改进YOLOv5系列:27.YOLOv5 结合 Swin Transformer V2结构,Swin Transformer V2:通向视觉大模型之路
  • 原文地址:https://blog.csdn.net/qq_36958104/article/details/136388166