首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

Linux 串口通信解决思路

2013-12-17 
Linux 串口通信我编写linux 串口通信程序时发现,当read读串口数据时,两个字节的读就可以,多个字节例如500B

Linux 串口通信
我编写linux 串口通信程序时发现,当read读串口数据时,两个字节的读就可以,多个字节例如500B 就都不全,就读的9个字节,后面的数据就没有了,这是怎么回事啊?各位大侠帮帮忙分析分析。
部分程序段如下:
      options.c_iflag |=INPCK;
      options.c_iflag &= ~(IXON | IXOFF | IXANY|INLCR|IGNCR|ICRNL);
      options.c_lflag &=~(ICANON | ECHO | ECHOE |ISIG);
      options.c_oflag &=~(OPOST|ONLCR|OCRNL);
      tcflush(fd,TCIFLUSH);
      options.c_cc[VTIME]=50;
      options.c_cc[VMIN]=0;
…………
   nread=read(fd,buffr,200);
   nwrite=write(fdstore,buffr,nread);//就只往fdstore文件中写了9字节数据,打印buffr中数据也只有9字节数据 linux 串口 read
[解决办法]
这样,你先看系统的状态
cat /proc/tty/driver/XXX             //XXX根据你的系统来
里面有收发的字节数和错误统计,看数字对不对

热点排行