首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在C#中,我如何收听已经打开的COM(串行)端口?

在C#中,要监听已经打开的COM(串行)端口,您需要使用System.IO.Ports命名空间中的SerialPort类。以下是一个简单的示例,说明如何在C#中监听已经打开的COM端口:

代码语言:csharp
复制
using System;
using System.IO.Ports;

namespace ComPortListener
{
    class Program
    {
        static void Main(string[] args)
        {
            string comPort = "COM3"; // 请根据实际情况修改串口名称
            int baudRate = 9600; // 请根据实际情况修改波特率

            SerialPort serialPort = new SerialPort(comPort, baudRate);

            try
            {
                serialPort.Open();
                Console.WriteLine($"成功打开串口 {comPort}");

                serialPort.DataReceived += SerialPort_DataReceived;
            }
            catch (Exception ex)
            {
                Console.WriteLine($"打开串口 {comPort} 时出错: {ex.Message}");
            }

            Console.ReadLine();
        }

        private static void SerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            SerialPort serialPort = (SerialPort)sender;
            string receivedData = serialPort.ReadExisting();
            Console.WriteLine($"从串口 {serialPort.PortName} 接收到数据: {receivedData}");
        }
    }
}

在这个示例中,我们首先创建了一个SerialPort对象,并指定了要监听的COM端口名称和波特率。然后,我们尝试打开该端口。如果成功,我们将监听该端口的数据接收事件DataReceived,并在控制台中输出接收到的数据。

请注意,这个示例仅用于演示如何监听已经打开的COM端口。在实际应用中,您可能需要根据具体情况调整代码,例如设置正确的串口名称和波特率,以及处理异常情况。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券