linux 串口应用程序.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux 串口应用程序

/* * Program: serial.c * Author: Paul Dean * Version: 0.0.3 * Date: 2002-02-19 * Description: To provide underlying serial port function, * for high level applications. **/#include termios.h /* tcgetattr, tcsetattr */#include stdio.h /* perror, printf, puts, fprintf, fputs */#include unistd.h /* read, write, close */#include fcntl.h /* open */#include sys/signal.h#include sys/types.h#include string.h /* bzero, memcpy */#include limits.h /* CHAR_MAX */#include serial.h/* * Decription for TIMEOUT_SEC(buflen,baud); * baud bits per second, buflen bytes to send. * buflen*20 (20 means sending an octect-bit data by use of the maxim bits 20) * eg. 9600bps baudrate, buflen=1024B, then TIMEOUT_SEC = 1024*20/9600+1 = 3 * dont change the two lines below unless you do know what you are doing.*/#define TIMEOUT_SEC(buflen,baud) (buflen*20/baud+2)#define TIMEOUT_USEC 0#define CH_TO_WAIT 5#define CH_BITS 11#define BUFFER_LEN 1024 /* sendfile() */static INT32 fd; //File descriptor for the portstatic struct termios termios_old, termios_new;static fd_set fs_read, fs_write;static struct timeval tv_timeout;static void set_baudrate (INT32);static INT32 get_baudrate ();static void set_data_bit (INT32 databit);static INT32 baudrate2Bxx (INT32 baudrate);static INT32 Bxx2baudrate (INT32 _baudrate);static INT32 set_port_attr ( INT32 baudrate, // INT32 databit, const char *stopbit, char parity);static void set_stopbit (const char *stopbit);static void set_parity (char parity);/* Open serial port ComPort at baudrate baud rate. */INT32 OpenComPort (INT32 ComPort, INT32 baudrate, INT32 databit, const char *stopbit, char parity){ char *pComPort; INT32 retval; switch (ComPort) { case 0: pComPort = /dev/ttyO0; break; case 1: pComPort = /dev/ttyO1; break; case 2: pComPort = /dev/ttyO2; break; case 3: pComPort = /dev/ttyO3; break; case 4: pComPort = /dev/ttyO4; break; case 5: pComPort = /dev/ttyO5;

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档