C# 串口通信

1. 导入

cs 复制代码
using System.IO.Ports;

2. 初始化定义

cs 复制代码
SerialPort sp = new SerialPort();
// 设置串口
sp.PortName = "COM3";  // 串口
sp.BaudRate = 9600;  // 波特率
sp.Parity = Parity.None;  // 校验位
sp.DataBits = 8;  // 数据位
sp.StopBits = StopBits.One;  // 停止位
// 打开串口
sp.Open();

3. 发送

cs 复制代码
sp.Write("Hello word\n");

4. 接收

  1. 需要在启动前设置(接收时回调方法)
cs 复制代码
sp.DataReceived += Sp_Shou;
  1. 方法
cs 复制代码
private void Sp_Shou(object sender, SerialDataReceivedEventArgs e){
// 获取发送过来字节大小
int size = sp.BytesToRead;
// 定义一个数组用来接收数据
byte[] data = new byte[size];
// data 0从第0开始读
sp.Read(data, 0, size);
// 将二进转换为 字符串
string msg1 = Encoding.ASCII.GetString(data); // 转换字符串
string msg2 = Encoding.Default.GetString(data); // 转换中文
}
相关推荐
Scott9999HH1 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
EIP低代码平台1 小时前
EIP 低代码平台 - 角色维护
低代码·c#·权限·工作流·netcore
码智社2 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海2 小时前
python 列表、元组、集合和字典
开发语言·python
萧瑟余晖3 小时前
JDK 26 新特性详解
java·开发语言
马优晨4 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
人邮异步社区5 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大6 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai6 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
এ慕ོ冬℘゜6 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript