using System;
using System.IO.Ports;
class Program
{
static void Main()
{
// 创建一个 SerialPort 对象
using (SerialPort serialPort = new SerialPort("COM1"))
{
// 设置串口参数
serialPort.BaudRate = 9600; // 波特率
serialPort.Parity = Parity.None; // 校验位
serialPort.StopBits = StopBits.One; // 停止位
serialPort.DataBits = 8; // 数据位
serialPort.Handshake = Handshake.None; // 流控制
// 打开串口
try
{
serialPort.Open();
Console.WriteLine("串口已打开");
// 发送数据到串口
serialPort.WriteLine("Hello, World!");
// 接收来自串口的数据
string receivedData = serialPort.ReadLine();
Console.WriteLine("接收到的数据: " + receivedData);
// 关闭串口
serialPort.Close();
Console.WriteLine("串口已关闭");
}
catch (UnauthorizedAccessException)
{
Console.WriteLine("无法访问指定的串口。请检查权限或确保串口未被占用。");
}
catch (IOException)
{
Console.WriteLine("发生 I/O 错误。请检查串口连接。");
}
catch (Exception ex)
{
Console.WriteLine("发生错误: " + ex.Message);
}
}
}
}
创建 SerialPort 对象:
new SerialPort("COM1") 创建一个 SerialPort 对象,指定要使用的串口号(例如 COM1)。设置串口参数:
BaudRate:设置波特率,常见的值为 9600、115200 等。Parity:设置校验位,通常为 None。StopBits:设置停止位,通常为 One。DataBits:设置数据位,通常为 8。Handshake:设置流控制,通常为 None。打开串口:
serialPort.Open() 方法打开串口,如果打开失败会抛出异常。发送和接收数据:
serialPort.WriteLine() 方法发送字符串数据。serialPort.ReadLine() 方法接收字符串数据。关闭串口:
serialPort.Close() 方法关闭串口,确保资源被正确释放。异常处理:
try-catch 块捕获并处理可能发生的异常,如权限不足或 I/O 错误。上一篇:c# volatile
下一篇:c# modbus
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站