我可以在 stm32f429 中使用 fmc 读/写外部 sdram。但是使用地址和读/写函数不适合我的目的。我想引入外部 sdram,就好像内部 sram 已明确扩展,并且每当我定义一个大变量时,它都会自动投影到外部 sdram。
我检查了 stm32f4 cubemx 存储库示例(SDRAM+DATAMEMORY)并进行了很多搜索,但这似乎并不简单。
根据我发现的这些步骤,我在 system_init 之后遇到了硬故障。
在链接器中定义外部 sdram 地址和大小(片外 ram)
在 startup_stm32f420xx.s 中添加一些代码
定义 DATA_IN_ExtSDRAM 用于在 main 函数之前初始化 sdram
在 main 函数之前启用系统时钟
我的外部 sdram 连接到 stm32f429 中的 SDRAM1。
正确的程序是什么?SystemInit_ExtMemCtl() 函数是否正确实现?是否需要任何修改?是否需要在 main 函数之前和 system_init 之后启用时钟?
谁能逐步告诉正确的代码是什么?
提前致谢。