关于STM32F407 一次DMA中断事件进入两次中断
我这里用的是stm32f407 spi2的dma接收中断,原理是一样的。经过测试,dma使能不会触发中断,但是即使没有数据传输事件完成,但是使能之后,单独运行关闭使能语句,会改写中断传输标志位,从而触发一次中断,这也就是为什么在传输事件触发中断后会再一次触发中断,建议在DMA_Cmd(DMA1_Stream3,DISABLE);后务必要加一句清除中断标志位的语句DMA_ClearITPendingBit(DMA1_Stream3,DMA_IT_TCIF3)。
关于STM32F407 一次DMA中断事件进入两次中断
我这里用的是stm32f407 spi2的dma接收中断,原理是一样的。经过测试,dma使能不会触发中断,但是即使没有数据传输事件完成,但是使能之后,单独运行关闭使能语句,会改写中断传输标志位,从而触发一次中断,这也就是为什么在传输事件触发中断后会再一次触发中断,建议在DMA_Cmd(DMA1_Stream3,DISABLE);后务必要加一句清除中断标志位的语句DMA_ClearITPendingBit(DMA1_Stream3,DMA_IT_TCIF3)。
举报