易截截图软件、单文件、免安装、纯绿色、仅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 ip dns getway的配置

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

grubfordos 引导linux 和windows方法

Grubfordos 引导linux的方法
方法一
Errorcheck off
Configfile /menu.lst
Configfile /boot/grub/menu.lst
Configfile /grub/menu.lst
Find –set-root –ignore-floppies –ignore-cd /menu.lst
Configfile /menu.lst
Find –set-root –ignore-floppies –ignore-cd /root/grub/m ......

在linux中使用crontab实现对oracle的定时备份

假设数据库的拥有者为oracle,数据库的用户为scott,其口令为trigger,
Oracle数据库的参数$ORACLE_HOME为/usr/oracle,$ORACLE_SID为oracle1,则实现步骤如下:
1、建立实现备份的shell
在/usr/oracle中用vi命令建立文件backup.sh,其内容为:
ORACLE_HOME=/usr/oracle; <br>export ORACLE_HOME;
ORACLE_SID= ......

剖析RedHat Linux中三个重要内核文件


剖析RedHat Linux中三个重要内核文件
作者:mynix 来源:www.linux.org (2007-02-08 13:46:41)
    vmlinux是未压缩的内核,vmlinuz是vmlinux的压缩文件。zImage(vmlinuz)和bzImage(vmlinuz)都是用gzip压缩的。它们不仅是一个压缩文件,而且在这两个文件的开头部分内嵌有gzip解压缩代码。bzImage中的b是&ldqu ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号