阅读背景:

stm32DMA+消息队列实现串口数据接收不丢包_DiQiZiYouDu的博客

来源:互联网 

前提:有一个项目一直使用DMA+串口空闲中断接收数据,最近发现串口数据丢包。

经过检查发现串口发送机在发送数据过程中本来应该是连续发送,但是中间有某一个字节与下一个字节之间的间距大于一个字节,MCU端会认为产生了一个空闲中断,便触发,这时候如果软件直接读取数据,很有可能后面的数据就直接丢失,并且原程序设计时候在处理过程中是关闭DMA的,这就会导致串口数据堵塞后面的数据也进不了,表现为串口接不到数据。经过检查发现




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: