不在C#应用程序中发送串行数据

时间:2013-09-13 15:21:58

标签: c# winforms serial-port arduino .net-4.5

我有两个Arduinos允许使用串行监视器通过串行端口进行消息交换。

如果我在双方都使用串行监视器,一切正常。如果我使用我的C#应用​​程序没有任何反应。我试图从串行监视器发送C#应用程序,它可以工作,但不是相反。

// ...
comPort1.Open();
// ...
private void comPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
    this.Invoke(new EventHandler(processData));
}
private void processData(object sender, EventArgs e)
{
    string inData = comPort1.ReadExisting();
    msgBoxLog.AppendText(inData);
}
// ...
private void sendButton_Click(object sender, EventArgs e)
{
    string my_str = "my string";
    msgBoxLog.AppendText(msgBox.Text + my_str);
    comPort1.Write(msgBox.Text);
}

RtsEnable DtrEnable 都已启用

1 个答案:

答案 0 :(得分:0)

好吧,Console.Write(msgBox.Text);我意识到这只是一个愚蠢的问题,我没有按照我的意愿发送 msgBox.Text 。它应该是:

private void sendButton_Click(object sender, EventArgs e)
{
    string my_str = "my string";
    comPort1.Write(msgBox.Text); //Console.Write(msgBox.Text);
    msgBoxLog.AppendText(msgBox.Text + my_str);
}