我有一个SerialPort对象来控制连接到虚拟COM端口的gsm调制解调器。我的问题是我在Windows XP下没有收到任何数据。如果定期调用,则不会触发DataReceived
事件,也不会输出port.ReadExisting()
任何数据。但是当我关闭我的程序并用putty连接到这个端口时,显示调制解调器的响应。
在Windows 7下,数据收到正确。
这可能是什么问题?
答案 0 :(得分:1)
需要启用软件握手。
this.serialPort.Handshake = System.IO.Ports.Handshake.XOnXOff;
我通过将putty设置与程序中的串口设置进行比较来发现这一点。所以问题不在于操作系统本身,而在于使用的流量控制。