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

 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);

 

时间: 2024-10-05 08:50:52

linux 串口0x03,0x13的问题【转】的相关文章

linux编程-linux串口通信问题,急急急!!!

问题描述 linux串口通信问题,急急急!!! 我在开发板上qt程序,开发板跟PC机的虚拟机通过USB转串口线连接,上面运行的是Ubuntu12.04系统,我在PC上发送字符串,然后在开发板上接收,接收的数据单个单个字符接收,为什么不是一整个字符串接收呢?并且接收不到第一个字符,而且差不多接收10秒之后就不在接收数据了!!!!.请各位大神赐教!!! int fd,num,rtn; struct termios options; fd = open("/dev/ttyUSB0", O_R

linux串口通信!求大神!急

问题描述 linux串口通信!求大神!急 我现在有一块7444的开发板,想实现7444通过串口传输命令给7444开发板上的另一模块cc2530(zigbee中的协调器),然后发送给给第三方开发板(只要当前cc2530能接收到命令就能直接发送数据到zigbee终端,以实现),然后终端zigbee模块的温度数据回传到7444开发板上的CC2530协调器,再从串扣回传给7445,已知我当前的串口设备文件是tty1,怎么编写C程序读取改开发板上cc2530传来的温度数据,和通过串口给cc2530发送命令

cpu-求大神,linux串口通信方面!!!7445CPU串口和CC2530通信验证

问题描述 求大神,linux串口通信方面!!!7445CPU串口和CC2530通信验证 我现在有一块7444的开发板,想实现7444通过串口传输命令给7444开发板上的另一模块cc2530(zigbee中的协调器),然后发送给给第三方开发板(只要当前cc2530能接收到命令就能直接发送数据到zigbee终端,以实现),然后终端zigbee模块的温度数据回传到7444开发板上的CC2530协调器,再从串扣回传给7445,已知我当前的串口设备文件是tty1,怎么编写C程序读取改开发板上cc2530传

串口通信-用linux串口与PLC通信,不通

问题描述 用linux串口与PLC通信,不通 用linux串口与PLC通信,没有返回正确的数据,但是在windows串口上是可以的,也就是说波特率一些的应该是对的.但是在linux上就是不行,这是什么原因. 解决方案 linux串口通信协议编程详解 解决方案二: 先多加一些调试信息等,看你的代码是如何运行的,是否有哪一步出错了

linux -- 串口调试总结

linux 串口输出调试 在某些情况下,需要同时对两台或多台Linux主机进行管理和操作.如果手头缺少足够多的键盘和显示器,那么通过一台机器的串口对其余主机进行控制不失为一种快捷.有效的方法. 下面就以两台主机为例,简单介绍一下配置方法.假设这两台主机分别为A和B,它们都运行Red Hat 9.0. A主机配置 A主机要选择一个合适的串口通信工具,本文中使用Linux自带的Minicom. 以root身份登录,运行如下命令: # minicom -s 屏幕上出现Minicom的主配置选单,移动键

linux 串口-求问Linux串口接收的数据最高位总是0是怎么回事呀 求助!!!!!!!!!!!!11

问题描述 求问Linux串口接收的数据最高位总是0是怎么回事呀 求助!!!!!!!!!!!!11 求问Linux串口接收的数据最高位总是0是怎么回事呀 !!!!!!!!!!!!!!!!!!!!!!!! 解决方案 linux 串口数据丢失 接收不到0x11

Linux 串口、usb转串口驱动分析(2-2) 【转】

转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=26807463&id=4186852 Linux 串口.usb转串口驱动分析2 内核版本:2.6.35.6                                                                        荣鹏140319   声明:图和个别段落(我做了小的修改)是直接从网上截取   目标:主要是想对Linux 串口.usb转串

Linux 串口、usb转串口驱动分析(2-1) 【转】

转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=26807463&id=4186851   Linux 串口.usb转串口驱动分析1 内核版本:2.6.35.6                                                                        荣鹏140319   声明:图和个别段落(我做了小的修改)是直接从网上截取   目标:主要是想对Linux 串口.usb

嵌入式linux串口设置(一)

在linux中,所有的设备文件一般都位于"/dev"下,串口1和串口2对应的设备名依次为"/dev/ttyS0", "/dev/ttyS1",而且USB转串口的设备名通常为"/dev/ttyUSB0",在linux下对设备的操作方法与对文件的操作方法一样. 串口开发步骤: 串口的设置主要是设置struct termios结构体的各成员值 #include<termios> struct termios {