linux是一款多功能的开源操作系统,它在嵌入式系统开发方面的应用也越来越广泛。串口缓冲区作为串口转换的基础技术,是串口通信和串口数据发送必不可少的组成部分。本文将简要介绍Linux下如何清空串口缓冲区。
公司主营业务:成都网站制作、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出昆明免费做网站回馈大家。
在Linux下清空串口缓冲区最方便的方法是使用工具termios。可以通过termios清空串口缓冲中的所有数据,并且有两种不同的方法实现:
方法一:termios的 tcflush 函数
tcflush可以用来清空Linux下的串口缓冲区。它的定义如下:
int tcflush(int fd, int queues);
其中fd是串口的文件描述符,queues是清空的字节缓冲区的类型,有以下三种可供选择:
TCIFLUSH:清空串口的接收缓冲数据;
TCOFLUSH:清空串口的发送缓冲数据;
TCIOFLUSH:清空串口的接收缓冲数据和发送缓冲数据。
示例代码如下:
/* 清空收发缓冲区数据 */
tcflush(fd, TCIFLUSH);
tcflush(fd, TCOFLUSH);
tcflush(fd, TCIOFLUSH);
方法二:termios的 tcflow 函数
tcflow也可以用来清空Linux下的串口缓冲区。它的定义如下:
int tcflow(int fd, int action);
其中fd是串口的文件描述符,action是有以下三种可供选择:
TCION:把接受缓冲区的数据送至串口的发送缓冲区,然后清空收发缓冲区;
TCOOFF:把串口发送缓冲区的数据送至接受缓冲区,然后清空收发缓冲区;
TCOON :把串口接受缓冲区的数据送至发送缓冲区,然后清空收发缓冲区。
示例代码如下:
/* 清空收发缓冲区数据 */
tcflow(fd, TCION);
tcflow(fd, TCOOFF);
tcflow(fd, TCOON);
以上就是Linux下清空串口缓冲区的小技巧。清空串口缓冲区可以有效避免串口出现数据不正确的情况,也可以有效的传输大量的数据,可见其大作用。最后,来把串口缓冲区清一清,以便顺利进行下一步通信。
创新互联成都网站建设公司提供专业的建站服务,为您量身定制,欢迎来电(028-86922220)为您打造专属于企业本身的网络品牌形象。
成都创新互联品牌官网提供专业的网站建设、设计、制作等服务,是一家以网站建设为主要业务的公司,在网站建设、设计和制作领域具有丰富的经验。
文章名称:Linux清空串口缓冲区:小技巧大作用(linux清空串口缓冲区)
URL网址:http://www.shufengxianlan.com/qtweb/news12/10662.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联