下载PortMon http://technet.microsoft.com/en-us/sysinternals/bb896644.aspx 并使用Putty运行成功的串行通信,嗅探PC和设备之间的所有数据交换。然后执行您的程序并比较交换日志。这应该给你答案,你的程序中做错了什么。
你可以在你设置的地方发布你的代码 SerialPort ?你必须确定 所有 属性就像矩阵开关所期望的那样。例如:
SerialPort
// Setup port SerialPort serialPort = new SerialPort(); serialPort.PortName = portName; //eg. COM1 serialPort.BaudRate = 9600; serialPort.StopBits = StopBits.One; serialPort.Parity = Parity.None; serialPort.DataBits = 8; serialPort.Handshake = Handshake.None; serialPort.NewLine = "\r\n"; serialPort.ReadTimeout = 2000; serialPort.WriteTimeout = 1000;
你打电话后 Open() 在您的端口上,您可以使用。检查打开或关闭状态 serialPort.IsOpen 属性。
Open()
serialPort.IsOpen
我会检查串口上的Encoding属性。看起来默认是ASCII。也许您的设备期待Unicode?