易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux下串口编程之一:基础设置函数

1,串口操作需要的头文件
  #include   <stdio.h>   /* 标准输入输出定义 */
  #include   <stdlib.h>   /* 标准函数库定义 */
  #include   <unistd.h>   /* Unix 标准函数定义 */
  #include   <sys/types.h> 
  #include   <sys/stat.h> 
  #include   <fcntl.h>   /* 文件控制定义 */
  #include   <termios.h>  /*终端控制定义 */
  #include   <errno.h>   /* 错误号定义 */
2,打开串口
  在 Linux 下串口文件是位于/dev下的。串口一为/dev/ttyS0,串口二为/dev/ttyS1。打开串口是通过使用标准的文件打开函数操作:         int fd;  /* 以读写方式打开串口 */
  fd = open( "/dev/ttyS0",O_RDWR);
  if (-1 == fd)
  {  
    perror(" 提示错误!");       /* 不能打开串口一 */
  }
3,串口结构体及参数
     串口的设置主要是设置 struct termios 结构体的各成员值。 
    struct termio
  {
    unsigned short c_iflag;    /* 输入模式标志 */ 
    unsigned short c_oflag;    /* 输出模式标志 */ 
    unsigned short c_cflag;    /* 控制模式标志 */ 
    unsigned short c_lflag;    /* local mode flags */ 
    unsigned char  c_line;     /* line discipline */ 
    unsigned char  c_cc[NCC];   /* control characters */
  };
      在这个结构中最为重要的是c_cflag,通过对它的赋值,用户可以设置波特率、字符大小、 数据位、停止位、奇偶校验位和硬件流控等。另外c_iflag 和c_cc 也是比较常用的标志。在此主要对这3 个成员进行详细说明。
     (1)c_cflag支持的常量名称
         CBAUD 波特率的位掩码
           B0 0波特率(放弃DTR)
           B1800 1800波特率
           B2400 2400波特率
   &nbs


相关文档:

Linux中select函数学习及实例笔记

Unix中的函数select和poll用来,支持Unix中I/O复用的功能,在Unix中I/O模型可以分为以一几种:
(1)阻塞I/O
(2)非阻塞I/O
(3)I/O复用(select和poll)
(4)信号驱动I/O(SIGIO)
(5)异步I/O
   其中,现在比较流行的I/O模型是阻塞I/O模型.阻塞I/O是当应用程序和内核交换数据时,由于内核还没有准备好 ......

用SVN同VMWARE上的Linux共享代码开发

LINUX(运行在VWMARE)上自带的SVN,Windows上装的是TortoiseSVN-1.6.7.18415-win32-svn-1.6.9.msi。
在Linux上配置SNV。
1、创建repository。
> svnadmin create /myhome/svnhome/project
其中svnhome是放svn的目录,下一级是不同的repository名。
2、准备好源代码。按下列目录排好。
project/branches
project/ ......

Linux/Unix下ODBC的安装、配置与编程

本文主要内容是介绍ODBC的简单原理,以及如何在Linux/Unix下进行ODBC的安装、配置与编程。
ODBC原理
ODBC
是Open Database Connect 即开放数据库互连的简称,它是由Microsoft 公司于1991
年提出的一个用于访问数据库的统一界面标准,是应用程序和数据库系统之间的中间件。它通过使用相应应用平台上和所需数据库对应的驱 ......

Linux学习(二) 共享库的安装

安装程序所需要的共享库时需要注意的问题。
起因:安装libsqlite3.so.0 后,使用ldd test 时,却找不到该库文件。
        在使用cpptest对原程序运行单元测试时,发现错误,即找不到库文件。
安装完libsqlite3.so.0后,其是存储在usr/local/lib的。所以问题在于,linux下的装载程序 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号