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); // 转换中文
}
相关推荐
梦想的初衷~12 分钟前
MATLAB近红外光谱分析技术及实践技术应用
开发语言·支持向量机·matlab
Fly-ping23 分钟前
【前端】JavaScript文件压缩指南
开发语言·前端·javascript
铭哥的编程日记31 分钟前
《C++ list 完全指南:从基础到高效使用》
开发语言·c++·list
lsx2024061 小时前
Go 错误处理
开发语言
山风呼呼1 小时前
golang--通道和锁
开发语言·后端·golang
yourkin6661 小时前
为什么现在 Spring Boot 默认使用 CGLIB 了?
java·开发语言·jvm
zh73141 小时前
laravel chunkById导出数据乱序问题
开发语言·php
这就是佬们吗1 小时前
初识 docker [上]
java·开发语言·笔记·docker·容器
MediaTea2 小时前
Python 库手册:doctest 文档测试模块
开发语言·python·log4j
hweiyu002 小时前
R语言简介(附电子书资料)
开发语言·r语言