我的STM32F43XX上有一个外部SRAM,我可以使用它。我可以访问内存区域并测试它们(memtest)。
但是,我不知道我的FMC配置是否正确。我很难理解SRAM的数据表和STM32F4 FMC接口之间的关系。
我将STM32F4XX reference manual与SRAM 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;
答案 0 :(得分:1)
地址设置在地址总线上。 ram显示地址已经稳定(不再变化)和/或来自前一个时钟的时钟前多少时间。保持是时钟后多久保持稳定。
数据设置是时钟在数据稳定之前的时间。
ram和微控制器数据表应该有时序图。对于您选择的时钟速度,您是否满足时序和/或必须设置一些参数以满足时序要求。