C#实现串口检测及连接功能

本文详细介绍了如何使用C#进行串口检测和连接操作,涵盖了串口选择、配置参数以及建立通信链路的关键步骤,为C#开发者提供实用的串口通信解决方案。

C#实现串口检测及连接功能

private void SerialPortCheck() // 串口检测
{
    try
    {
        bool comExistence = false;
        BAUD_comboBox.Items.Clear();
        for (int BAUD_i = 0; BAUD_i < 5; BAUD_i++)
        {
            try
            {
                SerialPort sp = new SerialPort("COM" + (BAUD_i + 1).ToString());
                sp.Open();
                sp.Close();
                BAUD_comboBox.Items.Add("COM" + (BAUD_i + 1).ToString());
                comExistence = true;
            }
            catch (Exception)
            {
                continue;
            }
        }
        if (comExistence)
        {
            BAUD_comboBox.SelectedIndex = 0;
        }
        else
        {
            MessageBox.Show("没有可用串口", "警告提示");
        }
    }
    catch
    {

    }
}

private void SerialPortConnect() // 连接
{
    try
    {
        if (isOpen == false)
        {
            if (!isSetProperty)             //串口未设置则设置串口
            {
                SetPortProPerty();
                isSetProperty = true;
            }
            try
            {
                sp.Open();
                isOpen = true;
            }
            catch (Exception)
            {
                isOpen = false;
                MessageBox.Show("串口无效或已被占用!", "警告提示");
            }
        }
        else
        {
            try
            {
                sp.Close();
                isOpen = false;
            }
            catch (Exception)
            {
                MessageBox.Show("关闭串口时发生错误!", "警告提示");
            }
        }
    }
    catch
    {

    }
}

private void SetPortProPerty()
{
    sp = new SerialPort();
    sp.PortName = BAUD_comboBox.Text.Trim();
    sp.BaudRate = 9600;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值