linux下串口通讯参考及接收始最多为8个字节

发布时间 2023-03-27 19:32:32作者: lxue07

Linux下RS485通讯测试,接收的数据字节只有8个。解决方法:

关键代码:

struct termios options;

if(0 != tcgetattr(s_fd,&options))
{
    printf("ead rs485 termios error!\n");
}

printf("options.c_cc[VTIME]: %d\n",options.c_cc[VTIME]);
printf("options.c_cc[VMIN]: %d\n",options.c_cc[VMIN]);
options.c_cc[VTIME]= 1;
options.c_cc[VMIN] = 0;
tcflush(s_fd,TCIFLUSH);/* 清空缓冲区(输入) */
if(0 != tcsetattr(s_fd,TCSANOW,&options))
{
    printf("set ermios options error!\n");
}

参考:

linux下的串口通信原理及编程实例 - 陈木 - 博客园 (cnblogs.com)

(14条消息) 串口编程--RS485_linux 多线程实现485收发程序_布施的博客-CSDN博客

 (14条消息) Linux 串口编程学习记录(termios.h)_tcdrain_地球被支点撬走啦的博客-CSDN博客