C#窗体程序,串口的收发程序的完整代码
时间: 2024-09-18 21:14:59 浏览: 56
在C#中编写一个简单的Windows Forms应用程序用于控制串口通信,需要使用`System.IO.Ports.SerialPort`类。下面是一个基本的示例代码,展示了如何创建一个串口实例、打开串口、读取数据以及发送数据:
```csharp
using System;
using System.IO.Ports;
public partial class MainForm : Form
{
private SerialPort serialPort;
public MainForm()
{
InitializeComponent();
serialPort = new SerialPort("COM1", // 这里替换为你实际的串口号
baudRate: 9600, dataBits: 8, stopBits: StopBits.One,
parity: Parity.None);
serialPort.Open();
}
private void buttonSend_Click(object sender, EventArgs e)
{
try
{
string inputText = textBoxInput.Text; // 获取输入框的数据
serialPort.WriteLine(inputText); // 发送数据到串口
Console.WriteLine($"发送: {inputText}");
}
catch (Exception ex)
{
MessageBox.Show($"发送失败: {ex.Message}");
}
}
private void timerRead_Tick(object sender, EventArgs e)
{
try
{
if (!serialPort.IsOpen) return;
string receivedData = serialPort.ReadLine(); // 接收数据
if (!string.IsNullOrEmpty(receivedData))
{
richTextBoxOutput.AppendText($"接收: {receivedData}\n");
Console.WriteLine($"接收到: {receivedData}");
}
}
catch (Exception ex)
{
MessageBox.Show($"读取失败: {ex.Message}");
}
}
}
// 注意事项:
// 1. 确保在运行此代码之前已经安装了.NET Framework对SerialPort的支持。
// 2. 如果连接的是远程设备,可能需要处理网络延迟和错误。
阅读全文