你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32 FMC SDRAM 连续读写出错

[复制链接]
li123456799 提问时间:2023-11-16 19:14 / 已解决

STM32H7系列,FMC接片外SDRAM,连续读写测试,每次读写间加一个延时不会报错,但去掉延时,连续读写就读写不一致了?

请教大神是哪里配置出了问题么?

另外还有个奇怪的现象。。。在循环的最后加了个打印,即使有延时也会出错,把打印去掉,在有延时的情况下不会出错。

代码附上:

    for(i = 0; i < 8 * 1024 * 1024; i++)
    {
        HAL_Delay(10);
        writedata_8 = i;
        *(__IO uint8_t *) (Bank5_SDRAM_ADDR + i) = (uint8_t)writedata_8;

        readdata_8 = *(__IO uint8_t *)(Bank5_SDRAM_ADDR + i);

        if(readdata_8 != writedata_8)
        {
            printf("ERROR@ %x, writedata_8: %d, readdata_8: %d\r\n", Bank5_SDRAM_ADDR + i, writedata_8, readdata_8);
        }
        printf("*");
    }

    //printf("\r\n");
    //printf("读写32MB结束\r\n");
收藏 评论4 发布时间:2023-11-16 19:14

举报

4个回答
li123456799 最优答案 回答时间:2023-11-18 09:32:59

butterflyspring 发表于 2023-11-17 10:17
将FMC的频率降得低一点看看是否正常先。</p>
<p>然后再判断是否是信号质量或者是对应参数需要调整。

感谢您的解答,将FMC频率降低可以正常工作了,另外还有一个问题向i请教,SDRAM断点调试查看内存为何查看的值没有变化呢,想确认一下SDRAM能否断电调试

xmshao 回答时间:2023-11-17 17:21:55
从你反馈的来看,应该是时序方面的问题。加延时才正常,说明访问速率太快了点,要注意FMC的响应速率也是有限制的。
butterflyspring 回答时间:2023-11-17 10:17:59
将FMC的频率降得低一点看看是否正常先。

然后再判断是否是信号质量或者是对应参数需要调整。
butterflyspring 回答时间:2023-11-20 11:07:21
li123456799 发表于 2023-11-18 09:32
[md]感谢您的解答,将FMC频率降低可以正常工作了,另外还有一个问题向i请教,SDRAM断点调试查看内存为何 ...

有可能跟catche 有关。

关闭它试试看看。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版