C# SerialPort DataReceive
时间: 2024-04-01 17:15:34 浏览: 212
您好!要在C#中接收串口数据,您可以使用SerialPort类。下面是一个简单的示例代码,演示如何接收串口数据:
```csharp
using System;
using System.IO.Ports;
class SerialPortExample
{
static SerialPort _serialPort;
static void Main(string[] args)
{
_serialPort = new SerialPort("COM1", 9600); // 串口名称和波特率
_serialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
_serialPort.Open();
Console.WriteLine("Press any key to exit.");
Console.ReadLine();
_serialPort.Close();
}
private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string data = sp.ReadExisting(); // 读取接收到的数据
Console.WriteLine(data); // 处理接收到的数据
}
}
```
在示例代码中,我们创建了一个SerialPort对象,并指定了串口名称和波特率。然后,我们订阅了DataReceived事件,该事件在接收到数据时触发。在事件处理程序中,我们使用ReadExisting方法来读取接收到的数据,并进行处理。
请注意,您需要根据实际情况更改串口名称和波特率。另外,还需要考虑适当的异常处理和资源释放。希望对您有所帮助!如果您有任何其他问题,请随时提问。
阅读全文