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秒/重试
我试着在Windows中逐行读取COM端口的数据.在PuTTY中,COM连接看起来很好--我的串行设备( MSP430 Launchpad)每秒输出一次字符串“数据”。但是,当我使用一个简单的C程序读取COM端口并打印读取的字节数时,数据本身就完全损坏了:6 Data
a
6 Data根据的说法,默认情况下,ReadFile应该读取整行。这是不正确的-我需要自己缓冲它并等待