C# - [窗体] SerialPort串口属性配置

串口属性:



串口数据接收事件绑定:



实现:

using System;
using System.Windows.Forms;
using System.IO.Ports;
using System.Threading;

namespace SerialPort_Exp
{
    public partial class Form1 : Form
    {
        SerialPort sp = new SerialPort();
        public Form1()
        {
            InitializeComponent();
        }

        private void open_btn_Click(object sender, EventArgs e)
        {
            try
            {
                //默认开启COM6串口
                sp.PortName = "COM6";
                sp.Parity = Parity.None;
                sp.BaudRate = 9600;
                sp.StopBits = StopBits.One;
                sp.DataBits = 8;
                sp.Open();
            }
            catch(Exception x)
            {
                MessageBox.Show(x.Message,"错误提示!");
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //当串口收到数据时自动触发
            sp.DataReceived += new SerialDataReceivedEventHandler(Func1);
        }

        public void Func1(object sender,SerialDataReceivedEventArgs e)
        {
           Thread.Sleep(200);
            this.Invoke(new Action(()=> {
                string rec_str = "";
                int bytes_count = sp.BytesToRead;
                byte[] byte_list = new byte[bytes_count];
                sp.Read(byte_list, 0, bytes_count);
                foreach (var i in byte_list)
                {
                    rec_str += (char)i;
                }
                receive_textbox.Text += rec_str;

                sp.DiscardInBuffer();    //丢弃接收缓冲区数据
            }));
        }
    }
}


应用:串口调试助手 v1.0



已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 点我我会动 设计师:白松林 返回首页
实付 49.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值