[开发工具] 【JLink】制作Flash下载算法文件 | 更新中

[复制链接]
2257|6
 楼主| cx1524 发表于 2023-7-31 19:31 | 显示全部楼层 |阅读模式
本帖最后由 cx1524 于 2023-9-27 16:26 编辑

【JLink】 制作Flash下载算法文件 | 更新中


1. 简介


  Flash下载算法文件通过Flash下载算法工程编译获取,模板工程可从MDK5安装目录下的ARM/Flash/_Template中获取。
  在该模板工程中还带有STM32F10x的Flash下载算法工程示例,在修改工程时可以进行参考。


2. 工程介绍

制作Flash下载算法文件只需要这些步骤:
1. 首先将模板工程拷贝到工作区,将其做为我们的Flash下载算法工程;
2. 根据设备的Flash参数修改FlashDev.c文件;
3. 在FlashPrg.c中补充Flash的初始化、去初始化、全片擦除、扇区擦除和下载功能函数
4. 编译工程获取Flash下载算法文件.FLM


在工程中最主要的是FlashPrg.cFlashDev.c这两个文件。


  • FlashPrg.c提供的是设备Flash的相关功能API,如Flash的初始化、擦除和下载等。
  • FlashDev.c提供的是设备Flash的一些基础信息,如Flash设备名,起始地址,设备容量,页大小等。


3. FlashDev.c文件


FlashDev.c文件中只有一个记录Flash信息的结构体FlashDevice,其在FlashOS.h中被声明,内部成员以及声明示例如下:


成员 说明
Vers 设备版本(无需修改)
DevName 设备名(最长128个字符)
DevType 设备类型
DevAdr 设备默认起始位置
szDev 设备容量
szPage 下载页大小
Res 保留,必须填充0
valEmpty 擦除后所保留值
toProg 烧录超时时长
toErase 擦除超时时长
sectors 扇区大小与起始位置

制作Flash下载算法文件-FlashDev文件.png


4. FlashPrg文件


该文件中对Flash的读写基本是直接对寄存器进行操作,故工程只需要设备头文件,不需要外设文件,详细的寄存器操作请阅读相关设备的参考手册。
该文件可参考已有示例中的FlashPrg.c文件进行修改。


5. 编译后的生成物


制作Flash下载算法文件-FLM文件.png


caigang13 发表于 2023-8-1 07:32 来自手机 | 显示全部楼层
这个拿来有什么用?
WoodData 发表于 2023-8-1 09:12 | 显示全部楼层
学习学习
冯军003 发表于 2023-8-7 18:56 | 显示全部楼层
占个位置
yangxiaor520 发表于 2023-8-8 08:19 来自手机 | 显示全部楼层
学习了,不过算法文件一般都是厂商配套的。
Fanexs168 发表于 2023-8-14 09:11 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部