我对 C# 非常陌生,正在开发一个个人项目,当按下按钮到我的 C# 代码上时,它会从 Arduino 发送一条消息,监听串行端口并在控制台中写入消息。
到目前为止,我已经得到了:
using System;
using System.IO.Ports;
using System.Threading;
namespace ConsoleApp1
{
class Program
{
static SerialPort _serialPort;
public static void Main()
{
_serialPort = new SerialPort();
_serialPort.PortName = "COM4";//Set your board COM
_serialPort.BaudRate = 9600;
_serialPort.Open();
while (true)
{
string a = _serialPort.ReadExisting();
Console.WriteLine(a);
Thread.Sleep(200);
}
}
}
}
在我的控制台应用程序中,我还想做其他事情,而不仅仅是等待传入的数据,所以我想我的选择是使用异步?
我试过了:C# Async Serial Port Read 但无法让它工作。
有没有人有任何关于从哪里开始的建议,很抱歉这个菜鸟问题我有大约 10 小时的 c# 经验:)
答案 0 :(得分:0)
以下是您可以使用的一些选项:
根据上面提到的文章,唯一可靠的方法是使用 Read 或使用 BaseStream with BeginRead(异步选项)