双缓冲区
防止前一组数据没有及时处理后一组数据就来了,将前一组覆盖了。
采用标志位的方法,标志位为1就将数组1的地址赋给DMA存储器的地址,并且将标志位置0。同理,标志位为0就将数组2的地址赋给DMA存储器的地址,并且将标志位置1。
DMA+串口空闲中断
传输计数器设置一个很大的值,串口没有数据给寄存器的时候串口进入空闲中断,空闲中断中进行数据处理,清除的话要先读SR寄存器,再读DR寄存器
参考文章STM32 | 串口DMA很难?其实就是如此简单!(超详细、附代码)_stm32串口dma很难?-CSDN博客
标签:标志,DMA,串口,地址,寄存器,空闲 From: https://www.cnblogs.com/Sandals-little/p/18004217