码迷,mamicode.com
首页 > 系统相关 > 详细

linux 下串口编程VTIME和VMIN的设置

时间:2015-03-09 16:09:36      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:

VTIME定义要求等待的时间量(取值不能大于cc_t)。

VMIN定义了要求等待的最小字节数。

 

options.c_cc[VTIME] = X;   //设置从获取到1个字节后开始计时的超时时间

options.c_cc[VMIN] = Y;     //设置要求等待的最小字节数

原始模式下对read()函数的影响:

1、X=0,Y!=0。函数read()只有在读取了Y个字节的数据或者收到一个信号的时候才返回;

2、X!=0,Y=0。即使没有数据可以读取,read()函数等待X时间量后返回;

3、X!=0,Y!=0。第一个字节数据到时开始,最先满足收到Y个字节或达超时时间X任意一个条件,read()返回;

4、X=0,Y=0。即使读取不到任何数据,函数read也会立即返回。

示例:

通过串口连ID卡读卡器,要求读串口至少收6个字节数据立即返回,可以将串口的上述两个设置项设置如下:

options.c_cc[VTIME]=0;

options.c_cc[VMIN]=6;

 

X == 10表示超时时间为1秒

linux 下串口编程VTIME和VMIN的设置

标签:

原文地址:http://www.cnblogs.com/aqing1987/p/4323625.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!