我正在向C#中的串行COM端口发送命令,但没有取回数据,但是当我使用腻子时,我会得到数据-我在做什么错?

问题描述

| 我有一个C#应用程序,我正在编写该应用程序以尝试从串行设备中自动提取数据。就像我的问题的标题所说的那样,我在Putty中尝试了完全相同的命令,并获得了数据。有人可以告诉我我错过了什么,以便我可以使用C#应用程序获取相同的数据吗? 基本上,我需要使用速度/波特率为57600的COM6,并发送不带引号\“ UH \”的命令。应该为我提供几行文本数据,这些数据似乎仅适用于Putty。 作为快速测试,我将其组合在一起:
private void SerialPort serialPort = new SerialPort();

private void getHistory_Click(object sender,EventArgs e)
{
  serialPort.DataReceived += new SerialDataReceivedEventHandler(serialPort_DataReceived);
  serialPort.PortName = \"COM6\";
  serialPort.BaudRate = 57600;

  serialPort.Open();
  if (serialPort.IsOpen())
  {
    serialPort.Write(\"UH\");
  }
}

private void serialPort_DataReceived(object sender,SerialDataReceivedEventArgs e)
{
  string result = serialPort.ReadExisting();
  Invoke(new MethodInvoker(delegate{ textbox1.AppendText(result); }));
}
虽然确实触发了DataReceived事件,但是它仅返回我发送的\“ UH \”,没有其他数据。任何有关此问题的帮助将不胜感激! 贾斯汀     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)