C# 与标准9针串口通信示例
时间: 2024-10-27 21:14:53 浏览: 16
C# 串口数据接收与发送 示例源码
在C#中,与标准9针串口通信通常需要使用System.IO.Ports命名空间下的SerialPort类。以下是一个简单的示例,展示了如何打开串口、设置波特率和其他属性,并发送和接收数据:
```csharp
using System;
using System.IO.Ports;
class SerialPortExample
{
static void Main()
{
// 创建SerialPort实例
SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
try
{
// 打开串口
serialPort.Open();
// 发送数据
byte[] dataToSend = { 0x01, 0x02, 0x03 };
serialPort.Write(dataToSend, 0, dataToSend.Length);
Console.WriteLine("Sent: " + BitConverter.ToString(dataToSend));
// 接收数据
byte[] buffer = new byte[16];
int bytesReceived = serialPort.Read(buffer, 0, buffer.Length);
if (bytesReceived > 0)
{
string receivedData = Encoding.ASCII.GetString(buffer, 0, bytesReceived);
Console.WriteLine("Received: " + receivedData);
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
finally
{
// 关闭串口
serialPort.Close();
}
Console.ReadLine(); // 等待用户按下Enter键再退出
}
}
```
在这个例子中,你需要将"COM1"替换为你实际的串口号。记住,每个操作都应该处理异常,因为串口通信可能会因硬件故障或其他原因而失败。
阅读全文