J-Flash实现烧录spi flash
1.背景
SEGGER公司的jlink工具配合J-Flash软件可以实现对MCU内部flash的固件烧录回读,我司产品设计中MCU通常需要外挂一块spi flash用以存储IC的固件程序,考虑到生产烧录的便捷性以及后续开发测试的高效性,现需要支持通过J-Flash工具烧录MCU外挂的SPI flash。
2.实现方案
2.1.硬件结构框图
2.2.下载算法实现
参考资料:
(1)安富莱 《第84章 STM32H7 的 SPI 总线应用之 SPI Flash的 MDK 下载算法制作》
(2)网页:https://linmingjie.cn/index.php/archives/341/
具体实现是基于GD32E103的boot工程进行的修改,参考MDK工程提供的下载算法模版中的工程配置。
遇到问题:
(1)MDK工程中C/C++配置中需要定义VECT_IN_SRAM,即中断向量在RAM中,因为下载算法是运行在MCU的RAM空间中。
2.3.Jlink Device增加
(1)找到jlink驱动安装目录,在JLinkDevices.xml文件增加设备支持,如下图,本次实现基于GD32E503-SPI Flash实现,增加相应的设备。
(2)新建目录,将生成的下载算法存放于该目录下。
经过以上步骤,J-Flash工具即可找到该器件以及下载算法,如下图。
3.测试验证
生成一个7M多的二进制文件,使用J-Flash工具擦除,烧写,读取,校验,连续测试10多次没有出现错误。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器