• H7-TOOL脱机烧录器功能开源发布,支持1拖4,支持MM32,STM32,STM8,外置Flash等混合烧录(2020-05-30)


    大家在使用中,有什么建议,欢迎反馈。

    脱机烧录视频效果展示:
    http://v.qq.com/x/page/p30628h2ou7.html

    多款STM8+STM32产品混合烧录展示:
    http://v.qq.com/x/page/o0932ppnuwx.html

    1拖4脱机烧录效果展示:
    https://v.qq.com/x/page/s0954t133ti.html

    V1.20版APP程序:
    h7_tool_app(V1.20).zip (480.91KB)
    H7-TOOL_STM32H7_App-master(V1.20).zip (21.73MB)

    上位机升级至V0.4:
    H7-TOOL PC机软件(V0.4).zip (2.07MB)
    H7-TOOL PC软件源代码(V0.4 2020-05-27).zip (25.79MB)

    eMMC中要存储的文件:
    存放到eMMC磁盘的文件V1.20a.zip (4.47MB)


    【支持型号】
    1、MM32:
    MM32F003,  MM32F031,  MM32F032,  MM32F103,  MM32L0xx,  MM32L3xx,   MM32SPIN0x,  MM32SPIN2x,  MM32W0xxB,  MM32W3xxB

    2、STM32:
    STM32F0xx,  STM32F10x,  STM32F2xx,  STM32F3xx,  STM32F4xx,  STM32F7xx,  STM32H7x,  STM32L0xx,  STM32L1xx, STM32L4xx,  STM32G0xx,  STM32G4xx

    3、STM8:
    STM8L151x6, STM8S003x3,STM8S105x6,STM8S208x8

    脱机编程器单路和四路的效率比较,效率极高

    测试烧录 H7-TOOL的固件:
    boot(46KB) + APP(685KB)+ QSPI Flash(2MB字库)
    情况1:
    CPU Flash和QSPI Flash内已有数据,烧录boot(46KB) + APP(685KB)+ QSPI Flash(2MB字库)
    单路 :21.3秒
    四路 :25.9秒 (等效 每个6.5秒)

    情况2:
    CPU Flash和QSPI Flash均为全FF状态,烧录boot(46KB) + APP(685KB)
    单路 :3.757秒
    四路 :5.01秒 (等效 每个1.25秒)


    【脱机烧录功能介绍】
    1、支持脱机烧录STM32。
    2、支持灵动微MM32。
    3、支持脱机烧录STM8芯片(STM8S和STM8L系列)。
    4、支持外置QSPI Flash烧录。
    5、支持1拖4脱机烧录。
    6、支持组合烧录,比如一键烧写H7-TOOL的boot、app和QSPI Flash。
    7、支持读、写保护状态识别,自动解除保护状态。
    8、支持多段bin写入。
    9、支持选择软件复位和硬件复位。
    10、支持option bytes编程,烧录完毕设置读保护。
    11、支持自动识别硬件烧录不同的程序(识别算法由lua指定)。
    12、FLM算法文件从KEIL MDK中复制出来,存放到emmc磁盘 H7-TOOLProgrammerFLM,按厂商分类。
    13、目标程序文件、编程脚本存放到:H7-TOOLProgrammerUser 文件夹。不限制目录级别和数量 。
    14、动态解析FLM文件,分离出内存镜像通过swd加载到目标cpu ram。
    15、FLM算法文件和数据文件支持绝对路径和相对路径。
    16、支持动态填充产品序号、UID加密字段、用户自定义字段。
    17、自动保存烧录次数,支持剩余次数限制功能。
    18、支持连续烧录模式,检测到IC后自动烧录。
    19、可动态显示CPU电压和供电电流。
    20、通过lua脚本配置算法文件和数据文件(bin)以及控制编程过程。
    21、烧录时LED快闪,烧录成功候常亮,烧录失败后熄灭
    22、烧录界面增加清零本次计数、清零累计计数功能。
    23、支持PC机联机调试lua程序
          - 打印内核ID、flash内容、RAM内容、UID、Option bytes。
          - 修改和显示目标CPU的RAM和任意寄存器。
          - 擦除CPU内部Flash、EEPROM。
          - 加读保护、解除保护。
          - 启动编程。
    24、lua非常灵活,可以很方便扩充功能,比如:
    (1)日期窗口段内才允许烧录。
    (2)目标板电流超限报警。
    (3)限定UID(CPU唯一序号)符合规则的才允许烧录。
    (4)UID加密算法由用户自己定义。
    (5)填充任意短数据(小于1K),比如可以写入生产日期时间或客户代码。
    (6)关于程序文件保密问题,后期再考虑吧,因为H7-TOOL软件开源,文件结构开源,为了避免程序文件被加工厂泄露, 初步设想如下:
           a、控制USB虚拟磁盘程序入口,增加人工输入密码。
           b、在虚拟磁盘扇区读写底层函数,以512字节为单位增加客户自定义加密和解密算法。这样emmc数据内容就是被加密的,即使emmc芯片被复制出来放到其他H7-TOOL主板也无法识别。

    【使用说明】
    硬件连接:
    1、SWD烧录接口:TVCC GND D8(SWDIO) D6(SWCLK) D4(RESET)
         SWIM烧录接口:TVCC GND D9(SWIM) D5(RESET)
    2、用5P杜邦线连接到目标板。
    3、目标板可以由H7-TOOL的TVCC引脚供电。
    4、5P连接线的长度建议小于20CM。
    5、实测脱机烧录器,实测线束能到80CM长度(并非所有MCU):链接


    6、1拖4脱机烧录接线:
    (1)脱机编程器单路烧录和四路烧录效率比较:链接
    (2)1拖四扩展板功能和特点
    - 配合H7-TOOL主机实现四路同步烧录SWD接口ARM芯片
    - 软件可配置1路 1-2路 1-3路 1-4路四种模式
    - 4路同步烧录,提高量产效率
    - 4路TVCC电压可调节 1.26V-5.0V
    - 每路最大电流250mA  (目标超过此电流时,目标板自行供电)
    - 赠送4套20CM硅胶优质杜邦线
    - 配套5P杜邦壳和4P杜邦壳,可自行调整线序
    - 提供加长双塑排针,应对主板烧录口未焊接插座只有排针孔的情况
    - 支持不带硬件复位口线烧录

    效果:





    进入和选择文件的步骤:
    1、联机模式下长按S,弹出“扩展功能”菜单
    2、选择"1.脱机烧录器(单路)",长按S确定,进入脱机烧录器单路界面
    3、选择"2.脱机烧录器(多路)",长按S确定,进入脱机烧录器多路界面
    4、按S键切换到"选择文件",长按S进入文件浏览器界面
    5、选择对应的lua文件,长按S确定

    按键功能:
    1、按S键切换到“开始烧录”按钮
    2、短按C键开始烧录
    3、长按S键进入连续烧录模式(检测到芯片自动烧录)
    4、长按C键可终止烧录

    【修改lua文件】
    1、联机模式下长按S进入扩展功能 -> 系统设置 -> USB eMMC磁盘
    2、等待10秒左右电脑上可以看到 eMMC磁盘
    3、用电脑的文件浏览器操作eMMC磁盘内容
    4、两个关键目录:
         H7-TOOLProgrammerFLM  存放烧录的算法文件
         H7-TOOLProgrammerUser 存放用户的lua文件、bin文件

    注意事项:
    1、如果eMMC模拟U盘没有识别出来看此贴二楼:
    http://www.armbbs.cn/forum.php?mod=viewthread&tid=96090

    2、将压缩包解压出来后,全部复制到eMMC里面。


    【lua文件说明】
    1、下面每个LUA文件都是一个完整的产品系列:





    4、选择要下载的固件和程序位置。
         --编程任务列表,可以任意追加
         --算法文件名和数据文件名支持绝对路径和相对路径,相对路径时和lua文件同目录,支持../上级目录
            TaskList = {
                    AlgoFile_FLASH,                                        --算法文件
                    "0:/H7-TOOL/Firmware/H7-BOOT.bin",        --数据文件
                    0x08000000,                                            --目标地址
                   
                    AlgoFile_FLASH,                                       --算法文件
                    "0:/H7-TOOL/Firmware/h7_tool_app.bin",  --数据文件
                    0x08020000,                                           --目标地址

                    AlgoFile_QSPI,                                         --算法文件
                    "0:/H7-TOOL/Fonts/GB2312ZK.bin",           --数据文件
                    0x90000000,                                           --目标地址               
            }

    4、更高级的设置,可以继续浏览lua文件,简单易看懂,一目了然。

    举例说明:
    比如烧写一个bin文件output.bin到我们STM32-V6开发板STM32F429BIT61、选择型号:
    dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F42xxx_43xxx_2048.lua")

    2、可以使用文件STM32F429xI.lua做模板,仅需修理里面的bin文件名和目标Flash地址
         TaskList = {
                    AlgoFile_FLASH,
                    "0:/H7-TOOL/Programmer/User/TestBin/output.bin",        --数据文件
                    0x08000000,                                                                --目标地址
            }

    3、将output.bin文件放到TestBin文件夹里面:


    4、H7-TOOL进入脱机烧录(单路)后,选择STM32F429xI.lua文件:


    5、点击开始烧录:


    6、烧录过程分擦除,编程和校验:


    LUA脚本文件截图,功能一目了然:


    【支持PC机联机调试lua程序】
    - 打印内核ID、flash内容、RAM内容、UID、Option bytes
    - 修改和显示目标CPU的RAM和任意寄存器
    - 擦除CPU内部Flash、EEPROM
    - 加读保护、解除保护
    - 启动编程



    【和lua同名的ini文件说明】
    文件内容如下,可以记事本编辑
    Locked = 0                     --1表示锁死
    ProgramLimit = 0            --烧录次数控制,0表示不限制, >0 表示限制的次数
    ProgrammedCount = 43   --已经烧录的次数
    ProductSN = 0                --产品序号滚码
    LastTotalTime = 0           --暂时未用
    LastEraseChipTime = 22  --全片擦除时间(ms),程序自动记录

    【四款芯片混合烧录效果】




  • 相关阅读:
    Java Volatile keyword
    解决 The 'InnoDB' feature is disabled; you need MySQL built with 'InnoDB' to have it working
    【玩转cocos2d-x之三十九】Cocos2d-x 3.0截屏功能集成
    【DP】UVA 624 CD 记录路径
    ns3加入模块之vanet-highway
    awk向脚本传递參数(二)
    【传递正能量】献给默默追梦的人
    算法(第四版)学习笔记之java实现可以动态调整数组大小的栈
    Webstorm/IntelliJ Idea 过期破解方法
    CenterOS下安装NodeJS
  • 原文地址:https://www.cnblogs.com/armfly/p/12990852.html
Copyright © 2020-2023  润新知