硬汉嵌入式论坛

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

[脱机烧录] 烧录器高级脚本用例--先烧录测试程序运行一次,再烧录正式程序

[复制链接]

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2021-10-21 15:38:20 | 显示全部楼层 |阅读模式
客户需要先烧录测试程序运行一次(用来写入缺省参数,或进行硬件测试),再烧录正式程序。
这个功能可以通过高级脚本功能实现。

高级lua1.png

手动新增的程序文件需要手动复制到EMMC磁盘

按下TOOL上的C键,会自动调用lua函数 start_prog(),我们可以在生成的配置文件末尾
重载同名函数来实现更为灵活烧录控制。



脚本代码如下:
--编程入口
function start_prog(void)
   config_chip1()  --配置烧录参数  (烧录完毕选择复位)

  change_file1()  --重置任务列表1
  prog_or_erase(0)  -- 执行烧录, 烧录完毕复位

  delayms(500)  --延迟,等待程序1执行完毕

  change_file2()  --重置任务列表2
  prog_or_erase(0)  -- 执行烧录

  return prog_or_erase(0)  -- 执行烧录
end

-- 文件列表1
function change_file1()
  TaskList = {
    AlgoFile_FLASH, --算法文件
    "TestProg.bin",  --测试程序,用于初始化参数区
    0x08000000,  --目标地址
    0x00000001,  --Bit0表示擦除方式(0按扇区,1整片) Bit1表示检查空片操作(1禁止 0允许)
  }
end

-- 文件列表2
function change_file2()
  TaskList = {
    AlgoFile_FLASH, --算法文件
    "MainProg.bin",  --正式程序
    0x08000000,  --目标地址
    0x00000001,  --Bit0表示擦除方式(0按扇区,1整片) Bit1表示检查空片操作(1禁止 0允许)
  }
end

评分

参与人数 1金币 +100 收起 理由
eric2013 + 100 很给力!

查看全部评分

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106405
QQ
发表于 2021-10-22 02:16:22 | 显示全部楼层
很有用的功能,下次升级固件收录到H7-TOOL的PDF文档中
回复

使用道具 举报

23

主题

1403

回帖

1472

积分

至尊会员

积分
1472
发表于 2021-10-22 11:30:08 | 显示全部楼层
好贴,下午试试
代码不规范,亲人两行泪!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 10:44 , Processed in 0.293489 second(s), 32 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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