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),程序自動記錄