H7-TOOL汇总帖:https://www.cnblogs.com/armfly/p/12283459.html

当前已经对STM32F030,STM32F103,STM32F429,STM32F746进行了完美适配。

其它STM32型号的支持,大家可以看操作说明,做适配。

后续会对市场上的其它厂家嵌入式芯片做支持,甚至RISC-V内核。

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

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

V1.08版APP程序:

h7_tool_app(V1.08).bin

H7-TOOL_STM32H7_App-master(V1.08).zip

上位机升级至V.02:

H7-TOOL PC机软件(V0.2).zip

H7-TOOL PC软件源代码(V0.2 2020-02-07).zip

eMMC中要存储的文件:

H7-TOOL eMMC磁盘文件(V1.08).zip

【脱机烧录功能介绍】
1、通过文件浏览方式选择程序文件。不限制目录和文件个数。
2、FLM算法文件从KEIL MDK中复制出来,存放到emmc磁盘 \H7-TOOL\Programmer\FLM,按厂商分类。
3、目标程序文件、编程脚本存放到:\H7-TOOL\Programmer\User 文件夹。不限制目录级别和数量 。
4、动态解析FLM文件,分离出内存镜像通过swd加载到目标cpu ram。
5、支持多段bin写入。
6、支持option bytes编程,烧录完毕设置读保护。
7、支持自动解除读保护。
8、支持动态填充产品序号、UID加密字段、用户自定义字段。
9、自动保存烧录次数,支持剩余次数限制功能。
10、支持连续烧录模式,检测到IC后自动烧录。
11、可动态显示CPU电压和供电电流。
12、通过lua脚本配置算法文件和数据文件(bin)以及控制编程过程。
13、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 D6 D4
2、用5P杜邦线连接到目标板。
3、目标板可以由H7-TOOL的TVCC引脚供电。
4、5P连接线的长度建议小于20CM。
 

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

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

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

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

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

【lua文件说明】
1、找一个lua文件做模板,复制一份更换目录或名字,当前提供了以下几个模板:

2、用记事本打开lua文件进行编辑。
3、几个关键参数如下,需要指定算法文件和程序文件。
(1)算法文件基准目录 0:/H7-TOOL/Programmer/FLM
        AlgoFile_FLASH = "ST/STM32F10x/STM32F10x_512.FLM"
        AlgoFile_OPT   = "ST/STM32F10x/STM32F10x_OPT.FLM"

(2)bin文件名和目标FLASH地址。
         DataFile_0 = "../TestBin/512K.bin"
         FlashAddr_0 = 0x08000000

(3)基准目录 0:/H7-TOOL/Programmer/User,和lua文件同目录.支持../上级目录

4、更高级的设置,可以继续浏览lua文件,有C语言基础即可看懂,部分截图:

举例说明:
比如烧写一个bin文件output.bin到我们STM32-V6开发板
1、可以使用文件STM32F429BI_512K.lua做模板,仅需修理里面的bin文件名和目标Flash地址
DataFile_0 = "../TestBin/output.bin"
FlashAddr_0 = 0x08000000

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

3、H7-TOOL进入套机烧录后,选择STM32F429BI_512K.lua文件:

4、点击开始烧录:

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

部分LUA脚本文件截图,主要是熟悉下参数配置即可:

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

H7-TOOL脱机烧录器功能开源发布的更多相关文章

  1. .NET平台下的微信SDK(Rabbit.WeiXin)开源发布

    在上一篇文章<RabbitHub开源情况及计划>上有提及到了一个新的开源项目——微信SDK,经过几天的努力现在开源发布Beta1版本. 目录 前言 特点 功能 支持的消息类型 请求消息 事 ...

  2. AEAI BPM流程集成平台V3.0.2版本开源发布

    本次开源发布的是AEAI BPMV3.0.2版流程平台,该版本是数通畅联首次正式对外发布的版本,产品现已开源并上传至开源社区http://www.oschina.net/p/aeai-bpm. 产品说 ...

  3. 自定义进度条PictureProgressBar——从开发到开源发布全过程

    自定义进度条PictureProgressBar——从开发到开源发布全过程 出处: 炎之铠邮箱:yanzhikai_yjk@qq.com 本文原创,转载请注明本出处! 本项目JCenter地址:htt ...

  4. SharePoint2013 显示网站菜单中设计管理器功能

    当部署完SharePoint2013后,并创建了对应的网站集,就开始试图去按照企业VI(Visual Identity)来定制站点的布局.色彩.字体等等的页面元素.可是,在站点的设置菜单中,默认没有“ ...

  5. Restful.Data v1.0 - 轻量级数据持久层组件, 正式开源发布了

    经过几个星期的优化调整,今天 Restful.Data 正式开源发布. 源码地址:https://github.com/linli8/Restful 今天不写那么多废话了,还是重新介绍一下 Restf ...

  6. AEAI EM费用管理系统V1.0.2版本开源发布

    本次开源发布是AEAI EM费用管理系统 V1.0.2版,该版本是此产品的首个版本,产品现已开源并上传至开源社区http://www.oschina.net/p/aeai-em. 产品说明: AEAI ...

  7. GJM : Taurus.MVC 2.0 开源发布:WebAPI开发教程 [转载]

    Taurus.MVC 2.0 开源发布:WebAPI开发教程 转载自http://www.cnblogs.com/cyq1162/p/6069020.html 因是新手  粘贴时有一个版权问题 本文原 ...

  8. 芯片烧录器编程AT24C02

    网上买了两款芯片烧录器,因为项目用的到.芯片以后的类型可能是IIC 接口的.就选则了一个IIC接口的AT24C02EEPROM.进行尝试.手头上没有这款芯片. 就想起自己单片机上有这款芯片.然后就开始 ...

  9. Landpy.ActiveDirecoty,按照Active Record Pattern设计的方便Lib开源发布

    想方便的操作AD吗,不想记住那么多AD Attribute名称和常量?请使用Landpy.ActiveDirecoty库,按照Active Record Pattern设计的AD Lib已经在Code ...

随机推荐

  1. Git - 删除github上的提交历史

    参考 https://segmentfault.com/q/1010000002898735 https://stackoverflow.com/questions/1338728/delete-co ...

  2. 软件架构,WEB - REST架构,RESTful API

    参考 https://www.zhihu.com/question/27785028/answer/48096396 wiki太学术化了 http://www.ruanyifeng.com/blog/ ...

  3. jackson处理日期异常

    原 jackson处理日期异常 2018年01月09日 10:50:19 阅读数:70 1.异常信息 2.原因 默认情况下,fasterxml json只支持几种format,但是肯定不支持" ...

  4. lower_bound() 函数使用详解

    简介 lower_bound()函数是用来求一个容器中,第一个大于等于所要查找的元素的地址,具体的原理是二分查找,因此它只能用于非降序序列. 他有三个参数,第一个参数是容器的初始地址,第二个参数是容器 ...

  5. [转]Mysql连表之多对多

    转自 回到顶部 连表多对多 可以理解成一夫多妻和一妻多夫. 男人表: nid name 1 xxx 2 yyy 3 zzz 女人表: nid name 1 aaa 2 bbb 3 ccc 要让两个表建 ...

  6. 简单描述MySQL常用引擎的特点及MySQL的逻辑架构

    目录 表的分类数据库引擎? 首先得说说mysql的逻辑架构,它整体分为3层: 常用引擎: 补充知识点: 表的分类数据库引擎? 引擎是什么? 引擎就是一个系统最核心的部分,比如汽车的发动机,人的心脏 数 ...

  7. springboot 跨域

    参考: https://blog.csdn.net/qq779446849/article/details/53102925 https://blog.csdn.net/wo541075754/art ...

  8. vs2013中配置SQLite数据库

    转载:https://maplefan.com/index.php/2019/08/14/visual-studio-2013%e9%85%8d%e7%bd%aesqlite3%e7%9a%84%e6 ...

  9. Manacher(马拉车)算法

    Manacher算法是一个求字符串的最长回文子串一种非常高效的方法,其时间复杂度为O(n).下面分析以下其实行原理及代码: 1.首先对字符串进行预处理 因为回文分为奇回文和偶回文,分类处理比较麻烦,所 ...

  10. 跳转连接转base64

    //配置H5连接 @Value("${h5.domain}") private String h5Domain; // 校验商家端权限 public String checkSta ...