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

Linux下串口信息的读取

1. 打开串口
  与其他的关于设备编程的方法一样,在Linux下,操作、控制串口也是通过操作起设备文件进行的。在Linux下,串口的设备文件是/dev/ttyS0或/dev/ttyS1等。因此要读写串口,我们首先要打开串口:
 
  char *dev = "/dev/ttyS0"; //串口1
 
  int fd = open( dev, O_RDWR );
 
  //| O_NOCTTY | O_NDELAY
 
  if (-1 == fd)
 
  {
 
  perror("Can't Open Serial Port");
 
  return -1;
 
  }
 
  else
 
  return fd;
 
  2. 设置串口速度
 
  打开串口成功后,我们就可以对其进行读写了。首先要设置串口的波特率:
 
  int speed_arr[] = { B38400, B19200, B9600, B4800, B2400, B1200, B300,
 
  B38400, B19200, B9600, B4800, B2400, B1200, B300, };
 
  int name_arr[] = {38400, 19200, 9600, 4800, 2400, 1200, 300, 38400,
 
  19200, 9600, 4800, 2400, 1200, 300, };
 
  void set_speed(int fd, int speed){
 
  int i;
 
  int status;
 
  struct termios Opt;
 
  tcgetattr(fd, &Opt);
 
  for ( i= 0; i < sizeof(speed_arr) / sizeof(int); i++) {
 
  if (speed == name_arr) {
 
  tcflush(fd, TCIOFLUSH);
 
  cfsetispeed(&Opt, speed_arr);
 
  cfsetospeed(&Opt, speed_arr);
 
  status = tcsetattr(fd, TCSANOW, &Opt);
 
  if (status != 0) {
 
  perror("tcsetattr fd");
 
  return;
 
  }
 
  tcflush(fd,TCIOFLUSH);
 
  }
 
  }
 
  }
 
  3. 设置串口信息
 
  这主要包括:数据位、停止位、奇偶校验位这些主要的信息。
 
  /**
 
  *@brief 设置串口数据位,停止位和效验位
 
  *@param fd 类型 int 打开的串口文件句柄
 
  *@param databits 类型 int 数据位 取值 为 7 或者8
 
  *@param stopbits 类型 int 停止位 取值为 1 或者2
 
  *@param parity 类型 int 效验类型 取值为N,E,O,,S
 
  */
 
  int set_Parity(int fd,int databits,int stopbits,int parity)
 
  {
 
  struct termios options;
 
  if ( t


相关文档:

Linux设备模型之input子系统详解

一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......

linux ip dns getway的配置

转帖自:http://bbs.61job.cn/space/viewspacepost.aspx?postid=4489
在Linux中不管你是做服务器还是只是平常使用,上网肯定都是最重要和不可缺少的一个因素之一,
所以就涉及到它的ip gateway dns等network配置和使用。但是设置linux网络的方法有两种:
第一种:使用命令修改(直接即时生效,重启失效)
  &n ......

linux last 命令详解

功能说明:列出目前与过去登入系统的用户相关信息。
  语  法:last [-adRx][-f <记录文件>][-n <显示列数>][帐号名称...][终端机编号...]
  补充说明:单独执行last指令,它会读取位于/var/log目录下,名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
  参  数:
......

linux下gdb单步调试

GDB 概述
————
GDB 是 GNU 开源组织发布的一个强大的 UNIX 下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像 VC 、 BCB 等 IDE 的调试,但如果你是在 UNIX 平台下做软件,你会发现 GDB 这个调试工具有比 VC 、 BCB 的图形化调试器更强大的功能。所谓 “ 寸有所长,尺有所短 &rd ......

Linux 操作系统 C 语言编程入门

Linux 操作系统 C 语言编程入门

目 录
第一章 基础知识 ……………………………………………………………4
第二章 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号