linux串口接收不到0x11解决
来源:互联网 发布:软件开发周末班 编辑:程序博客网 时间:2024/06/06 19:16
转自:http://www.2cto.com/os/201302/189931.html
linux串口接收不到0x11解决
网上许多流行的linux串口编程的版本中都没对c_iflag(termios成员变量)这个变量进行有效的设置,这样传送ASCII码时没什么问题,但传送二进制数据时遇到0x0d,0x11和0x13却会被丢掉。不用说也知道,这几个肯定是特殊字符,被用作特殊控制了。关掉ICRNL和IXON选项即可解决。
www.2cto.com
c_iflag &= ~(ICRNL | IXON);
0x0d 回车符CR
0x11 ^Q VSTART字符
0x13 ^S VSTOP字符
ICRNL 将输入的CR转换为NL
IXON 使起动/停止输出控制流起作用
在《UNIX环境高级编程第二版》第18章第11小节看到把终端I/O设置为原始模式(串口通讯就是终端I/O的原始模式)时输入属性设置为
term.c_iflag &= ~(BRKINT | ICRNL | INPCK | ISTRIP | IXON);
屏蔽了许多属性,怪不得有人说如果是使用串口通讯c_iflag和c_oflag都设置为0就行了! www.2cto.com
以下是我的设置的一些重要的串口属性
term.c_cflag |= CLOCAL | CREAD;
term.c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);
term.c_oflag &= ~OPOST;
term.c_iflag &= ~(BRKINT | ICRNL | INPCK | ISTRIP | IXON);
0 0
- linux串口接收不到0x11解决
- linux 串口接收不到0x11
- linux串口接收不到0x0d|0x11|0x13解决
- linux 串口接收不到0x11、0x13、0x0d
- linux 串口接收不到0x11, 0x0d, 0x13
- linux 串口数据丢失 接收不到0x11
- Linux串口通信中一种接收不到数据的问题的解决
- Linux串口通信中一种接收不到数据的问题的解决
- VMware虚拟机接收不到串口
- 串口通信----串口接收框接收不到数据
- linux 串口接收
- linux 串口特别是接收
- Linux 串口接收数据
- 解决接收不到组播包的问题
- 解决Ueditor编辑器向后台传值接收不到
- 超级终端串口发送命令,uboot接收不到
- Linux串口驱动程序(5)-串口接收分析
- arm-linux串口接收出错
- psql遇到的两个问题 Cannot read termcap database和 free(): invalid next size
- QEventLoop 的使用两例
- PerformClick()
- 堆和栈的区别
- cmake中的一些变量
- linux串口接收不到0x11解决
- 学习Makefile第六课------使用函数
- uva 674 Coin Change (动态规划:记忆化搜索)
- Linux Wireless架构总结
- LDS,让天线长到4G手机面盖上
- untiy3d修改物体的中心点坐标
- zip格式转化成String
- [Ai工程文件] CoolArchitecture较为艺术的网页设计图
- Java生成验证码