Chinaunix首页 | 论坛 | 博客
  • 博客访问: 112323
  • 博文数量: 61
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 261
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-08 11:29
文章分类

全部博文(61)

文章存档

2016年(9)

2015年(36)

2014年(16)

我的朋友

分类: C/C++

2015-05-18 18:33:10

功能我现在用到的是,当你这样做

点击(此处)折叠或打开

  1. fd = serial_open(0);
  2.   if(-1 == fd)
  3.   {
  4.     perror("UART open error!Please check.\n");
  5.     exit (-1);
  6.   }
  7.   serial_config(fd, B115200, SERIAL_8N1);//设置串口波特率 校验等
  8.   FD_ZERO(&set_input);//将指定文件描述符清空
  9.   FD_SET(fd, &set_input);//用于文件描述符集合增加一个新的文件描述符
这样写打开文件的函数之后,在其他函数里

点击(此处)折叠或打开

  1. timeout.tv_sec = 1;
  2.   timeout.tv_usec = 0;
  3.   ret_select = select(fd + 1, &set_input, NULL, NULL, &timeout);
  4.   /* See if there was an error */
  5.   if (ret_select < 0)
  6.     perror("select failed");
  7.   else if (ret_select == 0)
  8.     printf("timeout\n");
  9.   else
  10.   {
  11.     if (FD_ISSET(fd, &set_input))
  12.     {
  13.        //do something
  14.     }
  15.    }
这样用,就不用到处传递fd文件号了,函数里试了下fd的号码是一样的。
先记下来,周内总结下这个的用法。

阅读(349) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~