【发布时间】:2010-11-05 23:36:45
【问题描述】:
我正在用 C# 开发一个需要通过串行通信与矩阵开关通信的应用程序。
string value = "abc";
serialPort1.Open();
serialPort1.WriteTimeout = 500;
serialPort1.WriteLine(value);
serialPort1.Close();
矩阵框的状态应该会随着WriteLine(value) 而改变。
这是我的问题。当我发送字符串值时,矩阵框的状态不会改变。但是,当我通过 Putty(通过串行通信)发送相同的字符串时,矩阵框会正确响应。所有串行属性都是相同的(BaudRate、DataBits、PortName 等)。
我应该尝试哪些可能的解决方案?
【问题讨论】:
-
仅供参考:WriteLine() 方法确实将回车符(十六进制 0x0D)附加到在线发送的数据中。我们使用 SerialPort.Write 并在发送前转换为十六进制值,但如果您的命令/回复保证为 ascci、unicode 或其他编码,这可能会更复杂。
标签: c# serial-port