STM32F429使用DMA2写SDRAM正常,但是读错误,我用的是官方的驱动
其中的DMA2设定如下:dmaHandle.Init.Channel = SDRAM_DMAx_CHANNEL;
dmaHandle.Init.Direction = DMA_MEMORY_TO_MEMORY;
dmaHandle.Init.PeriphInc = DMA_PINC_ENABLE;
dmaHandle.Init.MemInc = DMA_MINC_ENABLE;
dmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD;
dmaHandle.Init.MemDataAlignment = DMA_MDATAALIGN_WORD;
dmaHandle.Init.Mode = DMA_NORMAL;
dmaHandle.Init.Priority = DMA_PRIORITY_HIGH;
dmaHandle.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
dmaHandle.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL;
dmaHandle.Init.MemBurst = DMA_MBURST_SINGLE;
dmaHandle.Init.PeriphBurst = DMA_PBURST_SINGLE;
BSP_SDRAM_WriteData_DMA(SDRAM_DEVICE_ADDR, (uint32_t*)test_rom, 10); 无问题
BSP_SDRAM_ReadData_DMA(SDRAM_DEVICE_ADDR, (uint32_t*)test_rom, 10); 传输错误
已搞掂是初始化时序的问题:@ 高大上啊 高大上啊 没做过。。。。顶一个
页:
[1]