所以将发送和等待接收返回的数据写成一个函数来操作完成就十分的方便,这里提供一个非常好用的C# 串口通讯工具类,其内部将发送指令和接收数据并返回出来的功能,根据发送和接收数据的形式封装成了多个函数。

一、使用示例:

        给仪器发送字符串形式的电压数据获取指令,仪器返回字符串形式的数据并以“\r\n”为结束符。可以调用串口通讯工具类中重载的SendData函数

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_串口通讯

编辑

只需要设定
        sendStr=“Read V?\r\n”;//发送的读取电压值的仪器指令

        new string recvStr//new出来用于接收仪器返回数据的字符串变量

        endMark=“\r\n";//指定仪器返回数据的结束符

        waitTime=”1000“;//指定等待时间,若长时间未收到正常反馈,则结束等待并反馈错误信息

若仪器正确返回数据,则ComResult值为OK,此时可以对仪器返回的数据recvStr进行处理

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_数据_02

编辑

二、通讯类目前已经封装好的几种函数(部分)

1、以Byte[]数组形式,发送数据并接收返回的数据 (指定数据长度)

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_串口通讯_03

编辑

2、以Byte[]数组形式,发送数据并接收返回的数据 (指定结束符)

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_串口通讯_04

编辑

3、以string字符串形式,发送数据并接收返回的数据 (指定数据长度)

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_串口通讯_05

编辑

4、以string字符串形式,发送数据并接收返回的数据 (指定结束符)

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_串口通讯_06

编辑

串口通讯工具类的源cs类文件下载链接夸克网盘分享

三、使用步骤

1、引用SerialCom类的命名空间

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_字符串_07

编辑

using Common;

2、new 一个SerialCom类对象

在需要使用的类中,new一个SerialCom作为全局变量,方便调用

public SerialCom serialCom = new SerialCom();

3、new一个SerialParam对象(该类包含在SerialCom类中),用于设定串口参数

public Common.SerialParam serialParam = new Common.SerialParam
            {
                BaudRate = 38400,
                DataBits = 8,
                StopBits = System.IO.Ports.StopBits.One,
                Parity = System.IO.Ports.Parity.None
            };

可以在初始化SerialParam时设定串口参数,也可以在其他可调用serialParam实例的地方设定。

4、打开串口

bool rst = serialCom.Open(serialParam);

5、在串口成功连通之后,就可以调用上面列出的常用发送函数

C# 串口通讯工具类,一个函数发送命令等待并接收返回数据(适用和仪器仪表通讯)_数据_08

编辑

给入指令,判断函数运行结果,处理接收到的正常数据。

下载源代码

 串口通讯工具类的源cs类文件下载链接夸克网盘分享