打印
[开发工具]

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

[复制链接]
580|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 扇区大小与起始位置




4. FlashPrg文件


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


5. 编译后的生成物





使用特权

评论回复
沙发
caigang13| | 2023-8-1 07:32 | 只看该作者
这个拿来有什么用?

使用特权

评论回复
板凳
WoodData| | 2023-8-1 09:12 | 只看该作者
学习学习

使用特权

评论回复
地板
冯军003| | 2023-8-7 18:56 | 只看该作者
占个位置

使用特权

评论回复
5
yangxiaor520| | 2023-8-8 08:19 | 只看该作者
学习了,不过算法文件一般都是厂商配套的。

使用特权

评论回复
6
Fanexs168| | 2023-8-14 09:11 | 只看该作者
点赞

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

7

帖子

0

粉丝