C# 简单获取串口信息,发送,接收(有源码,对小白友好)

本文介绍了一位大学生使用C#进行串口通讯实验的过程,包括获取电脑串口并添加到comboBox,配置串口参数,实现串口的打开与关闭,以及数据的发送和接收。实验中详细讲解了关键代码和可能出现的问题,如使用委托处理串口接收数据,并展示了如何通过改变按钮颜色和文字提供串口状态反馈。最后,作者总结了实验涉及的知识点,如线程、委托和控件使用,并提出程序的改进方向。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言
我一名还没毕业的大学生,本次我要做一个关于C#的串口接发数据的实验,这个实验有点简单你忍一下,这实验中我参考了一些烂大街的代码,做了自己的总结。
环境:Visual Studio 2017社区版

实验前构思:
要串口通讯,我必须指定一个串口,要是我电脑里同时存在多个串口怎么办?那么我要获取电脑中的串口,用一个Combo Box来保存我的串口号。
有了串口号,但是我们在发送数据前必须打开串口,打开串口必须给串口的一些参数配置好。
串口打开我们就可以收发数据了,收发数据一定要在串口打开的情况下进行。
二、获取串口号添加到combo Box
关键代码:

string[] portname = SerialPort.GetPortNames();

这里我知识用数组保存了一个get到的串口名称,然后我们通过遍历的方法把串口名称添加到combo Box上,

foreach (string s in portname)
    {
   
        comboBox1.Items.Add(s);
    }

这样的话初始化的时候combo Box上还是空空的看起来不舒服,所以给combo Box添加一个索引,让他初始化的时候就显示其中一个串口名称。

comboBox1.SelectedIndex = 0;

我们可以在窗体上看到的效果
在这里插入图片描述

二、打开串口
配置串口参数需要配置以下的内容:

serial_.PortName = comboBox1.Text.Trim();
serial_.Open();
serial_.BaudRate = 115200;
serial_.DataBits = 8;
serial_.StopBits = StopBits.One;
serial_.Parity = Parity.None;
serial_.ReadTimeout = 100;
serial_.WriteTimeout = -1;

对于接收数据的初始化

serial_.ReceivedBytesThreshold = 1;
serial_.DataReceived += new SerialDataR
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值