【问题标题】:STM32F4 - Configurate extern SRAM probablySTM32F4 - 可能配置外部 SRAM
【发布时间】:2016-06-17 19:43:42
【问题描述】:

我的 STM32F43XX 上有一个外部 SRAM,我可以使用它。我可以访问内存区域并对其进行测试(memtest)。

但是,我不知道我的 FMC 配置是否正确。我很难理解我的 SRAM 的数据表和 STM32F4 FMC 接口之间的关系。

我使用STM32F4XX reference manualSRAM CY7C1051DV33

让我们从时序开始(参考第 1591 页,表 256 | SRAM 数据表第 6 页):

  • 地址设置
  • 地址保持
  • 数据设置
  • 公交车转弯
  • 时钟分频比
  • 数据延迟
  • 访问模式

频率? SRAM的定义是由我的HCLK除以时钟分频比吗? 因此,如果我的 HCLK 为 100 MHz,时钟分频为 2,我得到 50 Mhz(20 ns)。所以我的 STM32F4 延迟总是大于 SRAM 的延迟(最大 10 ns)。那么,最低允许值在哪里可以?

提前感谢您的帮助!

我的 NORRAM INIT 看起来是这样的:

init.DataAddressMux = FMC_DATA_ADDRESS_MUX_DISABLE;
init.MemoryType = FMC_MEMORY_TYPE_SRAM;
init.MemoryDataWidth = FMC_NORSRAM_MEM_BUS_WIDTH_16;
init.BurstAccessMode = FMC_BURST_ACCESS_MODE_DISABLE;
init.WaitSignalPolarity = FMC_WAIT_SIGNAL_POLARITY_LOW;
init.WrapMode = FMC_WRAP_MODE_DISABLE;
init.WaitSignalActive = FMC_WAIT_TIMING_BEFORE_WS;
init.WriteOperation = FMC_WRITE_OPERATION_ENABLE;
init.WaitSignal = FMC_WAIT_SIGNAL_DISABLE;
init.ExtendedMode = FMC_EXTENDED_MODE_DISABLE;
init.AsynchronousWait = FMC_ASYNCHRONOUS_WAIT_DISABLE;
init.WriteBurst = FMC_WRITE_BURST_DISABLE;
init.ContinuousClock = FMC_CONTINUOUS_CLOCK_SYNC_ASYNC;

【问题讨论】:

    标签: memory microcontroller stm32 stm32f4


    【解决方案1】:

    地址设置在地址总线上。 ram 在时钟前多长时间显示地址已确定(不再更改)和/或从前一个时钟开始。保持是时钟保持稳定后多长时间。

    数据设置是时钟在数据稳定之前多长时间。

    内存和微控制器数据表应该有时序图。对于您选择的时钟速度,您是否满足时序和/或您是否必须设置一些参数才能满足时序。

    【讨论】:

      猜你喜欢
      • 2014-01-07
      • 1970-01-01
      • 2014-12-23
      • 2019-05-07
      • 2022-11-04
      • 2023-03-30
      • 2022-11-03
      • 2014-04-04
      • 1970-01-01
      相关资源
      最近更新 更多