Port.Readline() 没有响应。为啥? [关闭]
Posted
技术标签:
【中文标题】Port.Readline() 没有响应。为啥? [关闭]【英文标题】:No response with Port.Readline(). Why? [closed]Port.Readline() 没有响应。为什么? [关闭] 【发布时间】:2013-08-29 20:32:27 【问题描述】:我正在使用 C#。我有一个连接到 com 端口的设备。 我正在通过 comport 向设备发送初始命令,即套接字活动。 我已经有了十六进制的数据包格式。 当我写在端口即
port.write(result)
我不会在 port.readline 中得到任何响应,即
port.readline = empty
请帮我解决这个问题。
【问题讨论】:
发布您的完整方法。 有关您编写的代码问题的问题必须描述具体问题 - 并包含重现问题的有效代码 问题不明确!?你想要什么? 【参考方案1】:您必须制作 SerialPortDataReceived 函数并将其添加到 DataRecieved 事件中。之后,您应该在此函数中使用 Read 或 ReadLine 方法。
例子:
private SerialPort _serialPort;
private void InitSerialPort()
_serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One)
Handshake = Handshake.None,
;
_serialPort.DataReceived += SerialPortDataReceived;
_serialPort.Open();
return;
private void SerialPortDataReceived(object sender, SerialDataReceivedEventArgs e)
string data = _serialPort.ReadExisting();
如果端口响应您的请求,您可以看到带有断点或类似内容的“数据”值
【讨论】:
感谢您的帮助,已解决。以上是关于Port.Readline() 没有响应。为啥? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章