小库里 发表于 2025-5-20 22:27

如何实现 STM32CubeIDE 加载外部闪存

在STM32CubeIDE中开发项目,
用于STM32F769外扩一片外部闪存flash(与 DISCO 设计相同)。
如何配置 IDE 以使其加载两个闪存?

公羊子丹 发表于 2025-5-22 07:35

如果是像DISCO那样的QSPI Flash,先确保你在CubeMX里打开了QSPI接口,并初始化正确。

周半梅 发表于 2025-5-22 07:36

要支持外部Flash加载,记得在链接脚本里加上外部Flash的地址映射段。

帛灿灿 发表于 2025-5-22 07:37

STM32F7系列支持XIP,QSPI Flash可以配置成Memory Mapped模式,程序可以直接运行。

童雨竹 发表于 2025-5-22 07:37

STM32CubeIDE 支持 External Loader,但需要你自己写或者使用 ST 提供的 loader 文件。

万图 发表于 2025-5-22 07:38

DISCO_F769NI 开发板 ST 官方提供了外部Loader源码,可以拿来参考或直接修改使用。

Wordsworth 发表于 2025-5-22 07:39

打开Project Properties -> C/C++ Build -> Settings,检查链接器是否勾选了 external loader 的配置。

Bblythe 发表于 2025-5-22 07:39

如果是调试用,ST-Link Utility 也支持外部QSPI Flash烧录,要选对对应的loader文件。

Pulitzer 发表于 2025-5-22 07:41

如果不放心,建议断网后安装,然后用多种杀毒工具扫描确认下。

Uriah 发表于 2025-5-22 07:42

CubeIDE目前对外部Flash的支持还不算特别自动化,很多时候还是得自己动手搞链接脚本和startup文件。

Clyde011 发表于 2025-5-22 07:43

如果你用的是TouchGFX或者有图形UI需求,QSPI Flash加载资源文件是个标配,必须配置到位。

gaonaiweng 发表于 2025-5-31 18:21

STM32CubeIDE 提供部分常用 Flash Loader(你可以使用 STM32 ST-LINK Utility 或 STM32CubeProgrammer 生成自定义 Flash Loader)

gaonaiweng 发表于 2025-5-31 18:21

确保 Flash2 的基地址与你外设映射到 AXI 总线的地址一致(QSPI 通常为 0x90000000,OSPI/另一个可能是 0xA0000000)
页: [1]
查看完整版本: 如何实现 STM32CubeIDE 加载外部闪存