在使用stm32cubemx stm32407的sdio 4bit dma操作sd卡时,dma中断老是进入半传输中断,然后就不正常。
有那位大侠知道什么事半传输中断,用uart dma就不会出这个问题,中断是直接跳到传输完成中断。
dma配置如下有问题嘛?
hdma_sdio_rx.Instance = DMA2_Stream3;
hdma_sdio_rx.Init.Channel = DMA_CHANNEL_4;
hdma_sdio_rx.Init.Direction = DMA_PERIPH_TO_MEMORY;
hdma_sdio_rx.Init.PeriphInc = DMA_PINC_DISABLE;
hdma_sdio_rx.Init.MemInc = DMA_MINC_ENABLE;//DMA_MINC_DISABLE;//
hdma_sdio_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
hdma_sdio_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
hdma_sdio_rx.Init.Mode = DMA_NORMAL;
hdma_sdio_rx.Init.Priority = DMA_PRIORITY_LOW;
hdma_sdio_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
hdma_sdio_rx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL;
hdma_sdio_rx.Init.MemBurst = DMA_MBURST_SINGLE;
hdma_sdio_rx.Init.PeriphBurst = DMA_PBURST_SINGLE; |