C# 串口通讯Demo(VS2010)
时间: 2024-10-22 20:02:46 浏览: 22
在Visual Studio 2010中创建一个简单的C#串口通讯示例,你需要完成以下几个步骤:
1. **添加参考库**:
首先,确保已安装了.NET Framework的SerialPort类库,如果没有,可以在项目管理器(Solution Explorer)右键点击引用(References),然后选择“Add Reference”,找到“System.IO.Ports”并添加。
2. **创建SerialPort对象**:
使用`System.IO.Ports.SerialPort`类实例化一个串口对象,例如:
```csharp
SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
```
这里,“COM1”是串口号,可以根据实际情况替换为实际设备的串口号;波特率、校验位、数据位和停止位都是常见的设置。
3. **打开串口**:
调用`Open()`方法打开串口连接:
```csharp
serialPort.Open();
```
4. **发送和接收数据**:
发送数据使用`WriteLine()`或`Write()`方法,接收数据则可以使用`DataReceivedHandler`事件处理程序,例如:
```csharp
serialPort.DataReceived += new SerialDataReceivedEventHandler(OnSerialDataReceived);
private void OnSerialDataReceived(object sender, SerialDataReceivedEventArgs e)
{
string receivedData = serialPort.ReadLine();
Console.WriteLine($"接收到的数据: {receivedData}");
}
```
5. **关闭串口**:
当不再需要通信时,记得关闭串口:
```csharp
serialPort.Close();
```
6. **完整的代码示例**:
```csharp
using System;
using System.IO.Ports;
class Program
{
static void Main(string[] args)
{
SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);
serialPort.Open();
// 添加数据接收事件处理
serialPort.DataReceived += new SerialDataReceivedEventHandler(OnSerialDataReceived);
Console.WriteLine("开始监听串口...");
Console.ReadKey();
// 关闭串口
serialPort.Close();
}
private static void OnSerialDataReceived(object sender, SerialDataReceivedEventArgs e)
{
string receivedData = ((SerialPort)sender).ReadLine();
Console.WriteLine($"接收到的数据: {receivedData}");
}
}
```
阅读全文