当前位置:  技术问答>linux和unix

Linux 串口select机制

    来源: 互联网  发布时间:2017-05-13

    本文导语:  求大神指导。。 用select对串口进行读写操作   与轮询和中断的方法区别是什么呢? while(1) {     FD_ZERO(&rd);     FD_SET(fd,&rd);     tv.tv_sec = 2;     tv.tv_usec = 0;     printf("Plc1");     switch(select(fd+1,&rd,NULL,NULL...

求大神指导。。
用select对串口进行读写操作   与轮询和中断的方法区别是什么呢?
while(1)
{
    FD_ZERO(&rd);
    FD_SET(fd,&rd);
    tv.tv_sec = 2;
    tv.tv_usec = 0;
    printf("Plc1");
    switch(select(fd+1,&rd,NULL,NULL,&tv))
    { 
         case 0:printf("Plc2");break;
         default:printf("Plc3");
    }
    break;//****** 
}
在上面这段代码里如果等待超时的2sec,为什么Plc1是和Plc2同时出现在终端上呢?按照顺序执行不应该Plc1先出现再等待一段时间Plc2才显示吗?

另外如果把****处的break去掉,若无串口操作,在终端上不显示Plc1也不显示超时的结果Plc2这是为什么呢?

|
用printf()输出时是先输出到缓冲区,然后再从缓冲区送到屏幕上。

1. 使用fflush(stdout)强制刷新。
2.缓冲区已满。
3.scanf()要在缓冲区里取数据时会先将缓冲区刷新。
4.n,r进入缓冲区时。
5.线程结束的时候,如果该线程里也有printf(....);
6. 程序结束时。

最简单的方法,就是加个n

|
你只select检测,但不读出来数据,肯定是无限通知你的。

    
 
 

您可能感兴趣的文章:

  • 在windows中的VMware装了个linux,主板有两个串口,能做windows和linux的串口通信测试么,怎么测试这两个串口在linux是有效
  • linux下几个设备通过串口串行连接,如何协调各串口发送数据
  • Linux 中用java语言写串口程序,提示找不到串口
  • 高分求助:我笔记本没有串口,在linux下要和一个串口设备连,怎么办?
  • 关于linux串口通信中写串口的问题
  • 在虚拟Linux系统下能进行串口通讯吗?最好给个串口通讯的代码!谢谢!
  • linux下串口发送数据用串口精灵接受不到或为全零
  • 嵌入式linux,串口初始化时,无法设置串口属性
  • linux串口驱动该怎么写
  • linux下如何清空串口的输入输出缓存
  • linux下怎么监控串口?
  • vmware 上 linux 串口问题
  • linux下串口通信的问题
  • linux下的串口编程比较熟悉,麻烦帮忙!
  • 在线等待,求助LINUX下串口问题
  • 请教一个linux串口通讯问题?
  • linux 串口打印
  • 请问,那位高手研究过linux下的串口驱动程序?
  • 问一个LINUX下串口的问题
  • 如何在linux上使用串口设备
  • Linux如何利用了段机制又巧妙地绕过了段机制?
  • linux的驱动机制是什么
  • 现有linux内核中共享内存机制如何移植到linux0.11内核中
  • inotify机制是Linux专有的吗,还是Posix系统上全都有的实现?
  • 请教:LINUX用不用循环机制?与WINDOWS有什么本质区别?
  • 如何在linux下实现event事件机制
  • linux操作系统的保护模式和分页机制,高手请进。
  • 谁能介绍下linux的窗口管理机制,谢谢!
  • 哪位高手可以解释下Linux的消息机制吗?谢谢
  • linux下的时间机制
  • 请问linux大家都是用哪些切换机制!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 秒爆,求教育,求解释,linux 的select()函数
  • linux和uclinux下关于select标准输入
  • linux的select API是依据什么计时的?
  • Linux 中 select 函数问题 !!!!!!!!!!!!!!
  • 请教linux下管理多个socket用什么,难道只能用select?
  • linux应用层如何select底层的中断
  • Linux下select模型效能如何?
  • 问Linux下select() 的使用
  • linux下用C写socket程序编程中的select里面的timeout的值的单位到底是什么?
  • 请教大家一下linux下有关select模式的用法
  • 【请教】Linux下用select()监测socket,是不是通常不去监测可写状态的?
  • linux2.6内核最大文件描述字是多少呢?select(maxfd)中maxfd能到10000么?
  • 求助,关于linux下socket的select模式编程
  • 高分求教select问题(linux下) iis7站长之家
  • 新人在线等.加急.....LINUX下SELECT传送文件的方法?
  • Linux中的select函数
  • 高分求教select问题(linux下)
  • linux使用select实现精确定时器详解
  • linux-select问题
  • 那位帮忙::LINUX下 用select时有关FD_ISSET的疑惑!
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,