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); // 转换中文
}
相关推荐
测试员周周3 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
杜子不疼.5 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号35 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia6 小时前
Qt——编辑交互功能的实现
开发语言·qt
石山代码6 小时前
C++ 内存分区 堆区
java·开发语言·c++
无风听海7 小时前
C# 隐式转换深度解析
java·开发语言·c#
LateFrames7 小时前
520 - 如何说晚安 (WPF)
c#·wpf·浪漫·ui体验
一只大袋鼠7 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
LuminousCPP8 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
魔法阵维护师8 小时前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#