首页 > 系统服务 > 详细

linux 串口0x03,0x13的问题【转】

时间:2015-04-09 00:40:37      阅读:418      评论:0      收藏:0      [点我收藏+]

 linux 串口0x03,0x13的问题

本人最近在调linux串口的时候,发现其他数据接收正常,但是0x13怎么也接收不到,后面发现了这篇文章,两天的bug终于解决了,原来是linux底层uart配置问题,现分享给大家

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 

原创作者:南京邮电大学  通信与信息系统专业 研二 魏清

环境:mini2440,fl6410,atmel9g45都会出现这样的问题

问题描述:使用RS485串口标准通信,发现大多数情况下数据接收没问题,但是有时却有问题。

问题解决:通过串口调试工具向ARM串口发送数据,由ARM接收,发现无法接收0x03,0x13字节。

解决办法:在应用层添加如下代码修改.c_oflag和.c_oflag和.c_iflag

 struct termios options;
 if  ( tcgetattr( fd,&options)  !=  0) {
  perror("SetupSerial 1");
  return(FALSE);
 }
 options.c_iflag &= ~(BRKINT | ICRNL | INPCK | ISTRIP | IXON);
 options.c_oflag &= ~OPOST;

 options.c_cflag |= CLOCAL | CREAD;

 options.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);

 

linux 串口0x03,0x13的问题【转】

原文:http://www.cnblogs.com/sky-heaven/p/4405036.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!