init问题和这里的旧讨论:VTIME似乎工作正常:serial_opts.c_cc[VTIME]=60; //6 seconds我已经实现了超时的时间测量,并尝试从串行端口重新读取(),直到满足MAX_RETRIES (=5)。超时似乎是正确的,调试输出是(显示最后2个read()操作,以及读取的字节):
SERIAL: DATA read 11 bytes and a total of 12262 .看起来,在6秒/重试
我在Linux中使用串口,从我的Arduino设备读取数据。每当我想从Arduino向Linux发送数据时,我首先发送两个字节,表示来自Arduino的总字节。我将这两个字节转换为整数值,并开始从串行端口读取数据。假设,我想从Ardiuno发送300个字节到Linux,我将首先编写{1,44},然后按照以下公式将这1和44字节转换为int:int to