STM32
直播中

康辅佑

7年用户 967经验值
擅长:控制/MCU
私信 关注
[问答]

调试STM32H750的FMC总线读写遇到的问题求解

最近调试STM32H750的FMC总线读写,PSRAM扩展模式,设置16位带宽,调试时发现写数据需要写四次才能写到寄存器里,因此测量读写波形,出现以下问题,1.发现发送写单个个16位数据时,写信号NWE会发送四次,如果不是单个16位数据,发送32位数据就不会出现这个情况。2.发现总线锁存地址和 实际要送的不一样,查找datasheet,地址映射写到“1. 如果外部存储器的宽度为 16 位,FMC 将使用内部的 ADDR[25:1] 地址来作为对外部存储器的寻址地址FMC_A[24:0]。”,所以地址实际是右移一位?

各位大神们,可否帮忙解答?指点一二?

回帖(2)

陈秀英

2024-4-10 18:19:53
1. 关于写数据需要写四次才能写入寄存器的问题,这可能是由于FMC总线写入的数据宽度设置不正确导致的。在使用16位数据宽度时,每次写入需要写入两个16位的数据,即32位数据。请确保你在写入数据时是以32位数据的形式进行写入。

2. 关于地址映射的问题,你所提到的地址实际上是右移一位的。根据STM32H750的FMC外设文档,FMC总线在使用16位数据宽度时,地址只使用地址线的高24位(即ADDR[25:1]),而不使用最低的一位(ADDR[0])。因此,你在设置地址时需要将实际地址右移一位。

请仔细检查你的代码和配置,确保配置正确,包括数据宽度和地址映射设置。此外,还要确保FMC总线时序正确,以及对FMC总线相应的控制信号进行正确的操作。

如果你仍然遇到问题,请提供更多的详细信息,包括代码片段和相关配置,以便更好地帮助你解决问题。
举报

苏国英

2024-5-1 19:08:35
我也遇到了这个问题,唐先生有没有解决呢,我在调试的时候,有示波器观察波形,只有ne1的波形是对的,NE2,3,4都不对,评论区的大神可有解决办法?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分