易截截图软件、单文件、免安装、纯绿色、仅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的大阅兵






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
-->
        所谓“阅兵”就是检阅部队的意思。
Linux
大军(发行版)可谓“散兵游勇”,谈何大阅兵?此言差矣。
 
   ......

Linux 内核WorkQueue阅读笔记


1.            Workqueue
Workqueue的名字就和他的功能一样:需要处理的工作列表和工作的添加删除(貌似没有看到如何删除的)、以及工作的调度执行。
需要处理的工作列表通常都维护在内核对象workqueue_struct里面。系统里面可以有多个workqueue_struct。 ......

linux内核移植s3c2410,移植正式开始2

内核启动的现在已经是开始执行函数start_kernel函数了。start_kernel函数在init/main.c中定义。start_kernel函数只是完成
相应的结构的初始化任务。
    printk(KERN_NOTICE);
    printk(linux_banner);
    setup_arch(&command_line);
在uboot的一直过程中,uboo ......

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

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