STM32GD32把程序加载到SDRAM的运行方法

Posted 【ql君】qlexcel

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM32GD32把程序加载到SDRAM的运行方法相关的知识,希望对你有一定的参考价值。

如果程序太大,可以考虑使用IAP+APP的方式,首先通过IAP把APP加载到SDRAM中,然后跳转到APP中运行。具体方法参考:https://www.armbbs.cn/forum.php?mod=viewthread&tid=89299

这里提示几个坑:
1、直接跳转到SDRAM中执行代码是不行的,因为SDRAM的地址默认是不能执行代码的,需要配置下MPU才行。原因参考:https://wenku.baidu.com/view/88f8cf6db007e87101f69e3143323968001cf453.html
配置MPU的方法参考:https://www.armbbs.cn/forum.php?mod=viewthread&tid=89299
GD32和STM32是一样的。

2、跳转到APP时,代码就已经在SDRAM中运行,因此在APP中配置时钟和SDRAM初始化要慎重,这会导致SDRAM运行不正常,单片机直接 HardFault_Handler 。
如果单片机运行不到main函数就报硬件错误,可以取消运行到main函数来调试。

以上是关于STM32GD32把程序加载到SDRAM的运行方法的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SDRAM 中写入 - STM32

RT1052程序成功从QSPI Flash加载到SDRAM里运行

RT1052程序成功从QSPI Flash加载到SDRAM里运行

RT1052程序成功从QSPI Flash加载到SDRAM里运行

STM32与GD32笔记

看完就懂GD32替代STM32全过程记录