串口收发文件.docVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
串口收发文件

相关网址:/developerworks/cn/linux/l-serials/ /hnewfriend/blog/item/2e98cd05823e0e171d95832a.html 发送: # include sys/types.h # include sys/stat.h # include fcntl.h # include stdlib.h # include termios.h # include stdio.h # define BAUDRATE B9600 # define COM /dev/ttyS0 # define _POSIX_SOURCE 1 # define FALSE 0 # define TRUE 1 volatile int STOP=FALSE; main() { int fd,res; struct termios oldtio,newtio; char buf[255],ch; fd=open(COM, O_RDWR | O_NOCTTY); if (fd0) {perror(COM); exit(-1);} tcgetattr(fd,oldtio); bzero(newtio,sizeof(newtio)); newtio.c_cflag=BAUDRATE | CS8 | CLOCAL | CREAD | HUPCL; newtio.c_iflag=IGNBRK; newtio.c_oflag=0; newtio.c_lflag=ICANON; tcflush(fd,TCIFLUSH); tcsetattr(fd,TCSANOW,newtio); printf(old.cflag=%o\t\t\tnew.cflag=%o\n\r,oldtio.c_cflag,newtio.c_cflag); printf(old.iflag=%o\t\t\tnew.iflag=%o\n\r,oldtio.c_iflag,newtio.c_iflag); printf(\n\rinput some chars to send .\nrinput char @ to quit .\n\r); while (STOP==FALSE){ ch=getchar(); buf[0]=ch; res=write(fd,buf,1); if (ch==@){ STOP=TRUE; buf[0]=\n; res=write(fd,buf,1); } } close(fd); tcsetattr(fd,TCSANOW,oldtio); return 0; } ----------------------------------------------------------- 接收: # include sys/types.h # include sys/stat.h # include fcntl.h # include termios.h # include stdio.h # define BAUDRATE B9600 # define MODEMDEVICE /dev/ttyS1 # define _POSIX_SOURCE 1 # define FALSE 0 # define TRUE 1 volatile int STOP=FALSE; main() { int fd,res; struct termios oldtio,newtio; char buf[255]; fd=open(MODEMDEVICE,O_RDWR|O_NOCTTY); if (fd0) {perror(MODEMDEVICE); exit(-1);} tcgetattr(fd,oldtio); bzero(newtio,sizeof(newtio)); newtio.c_cflag=BAUDRATE | CS8 | CLOCAL | CREAD | HUPCL; newtio.c_iflag=IGNBRK; newtio.c_oflag=0; newtio.c_lflag=ICANON; tcflush(fd,TCIFLUSH); tcsetattr(fd,TCSANOW,newtio); while (STOP==FALSE){ printf(\n\receiving....); fflush(stdout); res=read(fd,buf,255); buf[res]=0; printf(\n\received %d chars : %s, res-1 , buf); if (buf[0]==@){ STOP=TRUE; printf(\n\r); } } tcsetattr(fd,TCSANOW

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档