硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2424|回复: 2
收起左侧

[功能实战] H7-TOOL新版的V1.2.0a里面的LUA脚本做了调整,言简意赅,大大方便了大家的修改

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106692
QQ
发表于 2020-6-2 08:42:36 | 显示全部楼层 |阅读模式


以STM32F4系列为例,如果要对F407进行脱机下载,直接选择对应的芯片系列即可:

  1. --选择芯片系列----------------------------------
  2. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F401xx_128.lua")
  3. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F401xx_256.lua")
  4. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F401xx_384.lua")
  5. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F401xx_512.lua")
  6. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F40xxx_41xxx_512.lua")
  7. dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F40xxx_41xxx_1024.lua")
  8. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F410xx_412xx_128.lua")
  9. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F410xx_412xx_256.lua")
  10. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F410xx_412xx_512.lua")
  11. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F410xx_412xx_1024.lua")
  12. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F411xx_256.lua")
  13. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F411xx_512.lua")
  14. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F413xx_423xx_1024.lua")
  15. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F413xx_423xx_1536.lua")
  16. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F42xxx_43xxx_512.lua")
  17. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F42xxx_43xxx_1024.lua")
  18. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F42xxx_43xxx_1536.lua")
  19. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F42xxx_43xxx_2048.lua")
  20. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F446xx_256.lua")
  21. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F446xx_512.lua")
  22. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F469xx_479xx_512.lua")
  23. --dofile("0:/H7-TOOL/Programmer/Device/ST/STM32F4xx/STM32F469xx_479xx_1024.lua")
复制代码


完整的配置也言简意赅,一目了然,方便大家修改:

  1. --UID加密和产品序号处理文件
  2. dofile("0:/H7-TOOL/Programmer/LuaLib/fix_data.lua")

  3. --公共lua子程序
  4. dofile("0:/H7-TOOL/Programmer/LuaLib/prog_lib.lua")

  5. --下面的注释将显示在H7-TOOL液晶屏
  6. Note01 = "测试程序"

  7. beep()

  8. --配置芯片接口和参数
  9. function config_chip1(void)

  10.         config_cpu()

  11.         --编程任务列表,可以任意追加
  12.         --算法文件名和数据文件名支持绝对路径和相对路径,相对路径时和lua文件同目录,支持../上级目录
  13.         TaskList = {
  14.                 AlgoFile_FLASH,                                                        --算法文件
  15.                 "0:/H7-TOOL/Programmer/User/TestBin/1M_55.bin",          --数据文件
  16.                 0x08000000,                                                                --目标地址
  17.         }

  18.         --定义CPU供电电压TVCC
  19.         TVCC_VOLT = 3.3

  20.         --SWD时钟延迟,0不延迟,值越大速度越慢
  21.         if (MULTI_MODE == 0) then
  22.                 SWD_CLOCK_DELAY = 0                --单路编程
  23.         else
  24.                 SWD_CLOCK_DELAY = 0                --多路编程,根据实际板子调节,和CPU主频、电缆长度有关
  25.         end

  26.         --1表示整片擦除,0表示按扇区擦除. 有些CPU整片擦除速度快很多,有些慢很多
  27.         ERASE_CHIP_ENABLE = 1

  28.         RESET_TYPE = 0                                -- 0表示软件复位  1表示硬件复位

  29.         --是否核对CPU内核ID
  30.         CHECK_MCU_ID = 0

  31.         VERIFY_MODE = 0                                --校验模式: 0:自动(FLM提供校验函数或读回) 1:读回  2:软件CRC32  3:STM32硬件CRC32

  32.         --编程结束后复位 0表示不复位  1表示硬件复位
  33.         RESET_AFTER_COMPLETE = 0

  34.         AUTO_REMOVE_PROTECT = 1                --1表示自动解除读保护和写保护

  35.         --OPTION BYTES 配置
  36.         OB_ENABLE        = 0                                 --1表示编程完毕后写OPTION BYTES
  37.         SECURE_ENABLE  = 0                                --选择加密还是不加密

  38.         pg_reload_var()                                --用于更新c程序的全局变量
  39. end

  40. --动态填充SN UID USR数据
  41. function config_fix_data(void)
  42.         SN_ENABLE = 0                                --1表示启用   0表示不启用
  43.         SN_SAVE_ADDR = 0                        --产品序号保存地址

  44.         UID_ENABLE = 0                               --1表示启用加密函数1  0表示不启用
  45.         UID_SAVE_ADDR = 0                         --加密结果FLASH存储地址

  46.         USR_ENABLE = 0                               --1表示启用   0表示不启用
  47.         USR_SAVE_ADDR = 0                         --自定义数据存储地址
  48. end

  49. config_chip1()                                --执行一次给全局变量赋初值

  50. config_fix_data()                        --动态填充SN UID USR数据

  51. MULTI_MODE = pg_read_c_var("MultiProgMode")
复制代码



回复

使用道具 举报

23

主题

1404

回帖

1473

积分

至尊会员

积分
1473
发表于 2020-6-2 10:15:35 | 显示全部楼层
新版LUA方便了很多。

能图形化配置就更好了。
代码不规范,亲人两行泪!
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106692
QQ
 楼主| 发表于 2020-6-2 10:16:33 | 显示全部楼层
missfox 发表于 2020-6-2 10:15
新版LUA方便了很多。

能图形化配置就更好了。

正在着手做图形化配置。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-30 08:03 , Processed in 0.226655 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表