• 资料介绍
    • 引言
    • MDK 下载算法基础知识
    • 程序擦除操作执行流程
    • 程序烧录操作执行流程
    • 程序校验操作执行流程
    • MDK 创建下载算法过程通用步骤
    • 添加 QSPI-FLASH 驱动及其有关库函数
    • 算法使用方法
    • 小结
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

LAT1198 通过 KEIL 制作 QSPI 接口的外部 Flash 下载算法

03/26 09:46
22
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1198 通过 KEIL 制作 QSPI 接口的外部 Flash 下载算法

1.75 MB

引言

随着用户的应用越来越复杂以及 GUI 等需要大存储空间的需求越来越多,很多时候我们需要将代码或数据放在外扩的 Flash 存储空间。但是这样存在一个外部 Flash 烧写的问题,尤其是在应用调试时,需要将代码或数据烧录到外部 Flash。如果调试工具不能够一键烧录,势必会给调试带来诸多的麻烦。本文以 STM32H750 芯片为例,介绍通过 KEIL制作 QSPI 接口的外部 Flash 下载算法的方法。

MDK 下载算法基础知识

FLASH 编程算法是一种用于擦除应用程序或将应用程序下载到 Flash 的程序代码。MDK 本身支持的各种器件都自带下载算法,存放在 MDK 各种器件的软件包里面,以STM32H7 为例,算法存在于 KeilSTM32H7xx_DFP2.6.0CMSISFlash(软件包版本不同,数字 2.6.0 会不同)。但是,只有 STM32 官方部分开发板提供了算法工程,大多数用户开发板都需要自己编写下载算法。不同的 QSPI-FLASH 的驱动略有差别,因此下载算法也不同。所以,掌握通用的下载算法制作步骤很重要。

MDK 通过创建一批与地址信息无关的函数,实现的功能主要有初始化,擦除,编程,读取,校验等,然后在 MDK 调试下载阶段,会将算法文件加载到芯片的内部 RAM 里面(加载地址可以通过 MDK 设置),然后 MDK 通过与这个算法文件的交互,实现程序下载,调试阶段数据读取等操作。

程序擦除操作执行流程

程序烧录操作执行流程

程序校验操作执行流程

MDK 创建下载算法过程通用步骤

添加 QSPI-FLASH 驱动及其有关库函数

算法使用方法

算法生成后,将对应的算法 FLM 文件拷贝到 MDK 安装路径下 C:Keil_v5ARMFlash。

小结

本文介绍了基于 MDK 通用模板和已有工程制作 MDK 下载算法的过程。制作过程很容易造成失败,除了要注意工程中的相关设置以外,建议多参考 ST 官方固件包提供的DEMO,有时可以直接找到对应型号 MCU 的烧写算法 DEMO,如果没有可以参考功能外设相似的 MCU 工程 DEMO,也可以在其 DEMO 上直接修改,主要是替换 QSPI 的驱动(引脚、命令等),还有就是注意自己板子 MCU 的时钟配置,建议直接拷贝可以成功运行工程中的时钟配置。

资料预览

点赞
收藏
评论
分享
加入交流群
举报

相关推荐

方案定制

去合作
方案开发定制化,2000+方案商即时响应!