C# - 串口调试工具

时间:2024-03-19 07:23:21

因为在视觉应用中会使用到串口和网口两种方式通讯方式,调试过程中会经常使用到串口调试工具(ComAssistant 1.3),特别是他的自动发送功能,于是便萌生了自己写一个的想法。

首先来看看最后的效果图。

C# - 串口调试工具

接着说实现串口通讯的整体流程

1. 声明

2. 获取当前计算机串行端口名的数组

3. 选择串行端口并设置串行通讯属性

4. 实例化

5. 打开串口

6. 添加数据接收事件

7. 读/写数据

8. 关闭串口

再看看这个过程中具体用到了哪些东西。

从 .NET Framework 2.0 开始在命名空间 System.IO.Ports 下提供一个 SerialPort 类用于实现串口通讯。以下是上述流程会用到的基础字段、方法和事件。

SerialPort 类下的常用字段
名称 说明
PortName 串行端口名称(如:COM1)
BaudRate 波特率(如:4800、9600、19200、56000、115200)
Parity 检验方式(如:Parity.None、Parity.Odd、Parity.Even)
DataBits 数据位(如:7、8)
StopBits 停止位(如:StopBits.None、StopBits.One、StopBits.OnePointFive、StopBits.Two)
IsOpen 指示 SerialPort 对象打开或关闭的状态
BytesToRead 获取接收缓冲区中的数据字节数

SerialPort 类下的常用方法
名称 说明
GetPortNames 获取当前计算机的串行端口名的数组
Open 打开一个新的串行端口连接
Read 从串行端口读取指定数量的字节
Write 将指定数量的字节写入串行端口
Close 关闭端口连接
SerialPort 类下的常用事件
名称 说明
DataRecevied 指示已通过串行端口接收了数据

以上这些学会如何使用之后,就可以写出串口通讯程序了,当然值得注意的地方有通讯过程中数据格式的转换。

提示:其中自动发送功能是通过使用一个 Timer 控件实现的。