UART学习笔记三:最优接收模型

来源:互联网 发布:pc蛋蛋机器人源码 编辑:程序博客网 时间:2024/06/11 15:26

前面的两篇文章介绍UART接收数据和校验数据。对于TIMER_OUT方式和生产者——消费者模型做了一些

优缺点分析。但是他们的分析都没有考虑数据帧前面带有任意长度、任意字节乱码。今天就来分析下带有乱码

情况下,怎么去check一帧数据。

一、TIMER_OUT模式

这种模式,缺点就是BUFFER可能溢出,因为只有在TIMER_OUT标志有效的时候,才去check。

二、生产者-消费者

这种模式,会有假死现象。

比如,有效数据帧长为30字节,前面有乱码10个字节,切帧头和帧长正好能够对应上,且帧长=200字节,

那么这种情况下就有“假死”现象。

为了克服以上模型各自缺点,结合各自的优点,应该在生产者-消费者模型上加上TIMER_OUT标志,这样

就可以解决上面的问题,同时保留各自的优点。

0 0
原创粉丝点击