串口缓冲区

Posted yangxingsha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了串口缓冲区相关的知识,希望对你有一定的参考价值。

TX2串口缓冲区大小23字节  

在很多入门级教程中,串口收发都是:接收一个数据,触发中断,然后把数据发回来。这种处理方式是没有缓冲的,当数量太大的时候,亦或者当数据接收太快的时候,我们来不及处理已经收到的数据,那么,当再次收到数据的时候,就会将之前还未处理的数据覆盖掉。那么就会出现丢包的现象了,对我们的程序是一个致命的创伤。

   那么如何避免这种情况的发生呢,很显然,队列很容易帮我们实现我们需要的情况。将接受的数据缓存一下,让处理的速度有些许缓冲,使得处理的速度赶得上接收的速度,那么我们用环形队列来实现。下面就是代码的实现:

以上是关于串口缓冲区的主要内容,如果未能解决你的问题,请参考以下文章

linux读串口一直返回最后一包数据

Arduino 利用串口缓冲区监听的方式读取数据

matlab串口接收数据的问题

串口使用和CSerial类

Linux打开设备时串口缓冲区不为空

[嵌入式开发模块]单片机串口模块:串口+定时器+环形缓冲区 实现无串口IDLE中断接收不定长串口数据