I am trying to do SPI communication using DMA. This is the DMA configuration I am using for DMA channel 5:
#define DMA_SPI_CFG (DMA_DEST_ADDR_STEP_SIZE_1 |
As can be seen, only ERROR and COMPLETE interrupts are enabled.
However, I have found that my program calls the interrupt handler for DMA channel 5 [void DMA5_IRQHandler(void)] when neither of these interrupts have occurred. For example if I check the value of DMA->STATUS inside the DMA interrupt handler, it’s value is is 0x42, which means only START_INT_STATUS bit is 1 and both ERROR and COMPLETE status bits are 0. Then why is my program going inside DMA5_IRQHandler()?