tornado vxworks

  • O6_890569
    了解作者
  • 1.9KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-09 09:36
    上传日期
开发源码 vxworks tornado
console_prj.rar
  • console.h
    1.6KB
  • console.c
    2.1KB
内容介绍
/////////////////////////////////////////////////////////////////////////////// // // MODULE: // // $Id: console.c$ // // ABSTRACT: // // COM console communication demo. // // ENVIRONMENT: // // VxWorks // // HISTORY: // // <author rel='nofollow' onclick='return false;'> <Date> <Version> <Modification> // Jinnee 2008/04/03 1.0 Created // /////////////////////////////////////////////////////////////////////////////// #include <stdio.h> #include <taskLib.h> #include "console.h" void config_com(int sfd) //Config COM1 { ioctl(sfd, FIOSETOPTIONS, OPT_RAW); //Set tty device to RAW_MODE ioctl(sfd, FIOBAUDRATE, 9600); //Set baudrate to 9600bps ioctl(sfd, FIOFLUSH, 0); //Discards all bytes in the input and output buffers } void main(void) { taskSpawn ("COM_TASK", TASK_PRIORITY, 0, TASK_STACK_SIZE, (FUNCPTR)conTask, 0,0,0,0,0,0,0,0,0,0); } void conTask(void) { int sfd, width, num; FD_SET fds_data; unsigned char tmpStr[128]; /* length could be changed here! */ sfd = open(CONSOLE_NAME, O_RDWR, 0); if (sfd == ERROR) { printf("open %s failed!\n", CONSOLE_NAME); return; } config_com(sfd); while (1) { FD_ZERO(&fds_data); // Zeroes all bits FD_SET(sfd, &fds_data); // Set the bit corresponding to a specified file descriptor width = sfd + 1; if (select(width, &fds_data, NULL, NULL, NULL) == ERROR) { printf("select COM failed! Exception.\n"); continue; } /* read one byte from com */ num = read(sfd, (char *)&tmpStr, (size_t)1); if (num != 1) { printf("read com error!\n"); continue; } /* write one byte to com */ writeCom(sfd, width, fds_data, tmpStr, 1); } } void writeCom(int sfd, int width, FD_SET fds_data, unsigned char pBuf[], int length) { if (select(width, NULL,&fds_data, NULL, NULL) == ERROR) { printf("select in writeCom failed!\n"); return; } FD_ZERO(&fds_data); FD_SET(sfd, &fds_data); if (FD_ISSET(sfd, &fds_data)) write(sfd, (char*)pBuf, length); else printf("FD_ISSET in writeCom failed!\n"); }
评论
    相关推荐
    • tornado学习
      讲解tornado的基础知识,通过简单示例,使用tornado完成基本流程的开发,学习tornado的主要的知识点,在后续课程中会逐个知识点进行深入讲解
    • python tornado
      python tornado项目实践,学了这个对python的兴趣会大大增加(密码:www.snowfox.wang)
    • tornado4.5.3
      tornado_4.5.3.zip,网站开发框架,当redis-server.exe开启后,最新的tornado-redis不能开启,可尝试该版本
    • Tornado Training Workshop
      风河(Wind River)公司推出的Tornado VxWorks培训资料三合一之一,有关TORNADO的介绍,很全。
    • Tornado学习文档
      Tornado学习文档,让你在短时间内学会Tornado,灰常不错哦,学习vxworks的必经之路啊。。。
    • Tornado认证实例
      Tornado认证实例,自定义tornado用户认证,定制化返回响应的内容。
    • tornado 1.2.1
      tobado 1.2.1 一个基于python 的开源网络框架 异步的
    • tornado介绍
      tornado中文介绍,Python开发框架中文介绍
    • tornado blog
      tornado 的一个BLOG项目 可以好哈借鉴一下
    • SIM800C_MQTT.rar
      使用SIM800C模块,使用MQTT协议,连接中国移动onenet平台,能实现数据的订阅、发布、存储等