http://blog.csdn.net/kangkermit/article/details/8184880
2012
tcflush函数清除串口输入缓存(终端驱动已接到,但用户尚未读取)或串口输出缓存(用户已经写如缓存,但尚未发送)。
函数原型:
int tcflush(int filedes,int quene)
参数解释
filedes: 描述符。
quene取值及含义:
*TCIFLUSH 清除输入队列举例:tcflush(fd,TCIOFLUSH);
另加的说明:
在打开串口后,用户其实其实已经可以开始从串口读取数据了,但如果用户没有读取,数据将被将保存在缓冲区里。如果用户不想要开始的一段数据,或者发现缓冲区数据有误,可以使用这个函数将缓冲区清空。
应用举例:
tcflush(fd, TCIOFLUSH);
sleep(2);
read_len = read(fd, buff, 10);
这样,在sleep之前的输入输出队列中的数据都被清空了。
联系客服