串口缓存满了以后,传入的数据是会更新还是丢失?

我用AVR单片机通过串口接了一个GPS模块,GPS模块总是在发送数据,可我不是每时每刻都在读取GPS信息。那么问题好像就出现了:1、AVR会不断地接受数据直到串口接收bu... 我用AVR单片机通过串口接了一个GPS模块,GPS模块总是在发送数据,可我不是每时每刻都在读取GPS信息。

那么问题好像就出现了:1、AVR会不断地接受数据直到串口接收buffer填满,如果我仍然没有读出串口的值的话,那么GPS模块后来发送的数据到哪去了?是从串口接收buffer的开头开始覆盖掉原来的数据呢?还是这些数据就丢失不见了?2、GPS模块在不断发送数据,但是AVR串口接收buffer满了以后,如果不再接受GPS模块传进来的数据的话,GPS模块要发送的数据就会存在自己的发送buffer中,如果自己发送buffer也填满了话,再获取到的GPS信息是会替换掉发送buffer里面的数据呢?还是直接丢失了呢?谢谢各位指导!!!
展开
 我来答
百度网友3fe025987
2015-02-10 · TA获得超过1874个赞
知道小有建树答主
回答量:1055
采纳率:62%
帮助的人:550万
展开全部
没有硬件FIFO的话,接受到一个字节就会中断了,如果你继续发,就会发生溢出,应该是可以设置是否覆盖原先未读出的数据,具体忘了。

解决方法:接收和发送都设置一个FIFO,要发的数据和接收到但尚未处理的数据都放在各自的FIFO内
追问
我测试过第一个问题,发送65字节数据,最后一个数据是进不来的,只能读取前面64个,最好能覆盖就好了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式