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

从C#中的串口读取

从C#中的串口读取数据,可以使用.NET框架中的System.IO.Ports命名空间中的SerialPort类。以下是一个简单的示例代码,用于从串口读取数据:

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

class SerialPortExample
{
    static void Main()
    {
        SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);

        try
        {
            serialPort.Open();
            serialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error opening serial port: " + ex.Message);
        }

        Console.ReadLine();
    }

    private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
    {
        SerialPort sp = (SerialPort)sender;
        string indata = sp.ReadExisting();
        Console.WriteLine("Data Received: " + indata);
    }
}

在这个示例中,我们创建了一个SerialPort对象,并指定了串口名称(COM1)和波特率(9600)。然后,我们打开串口并添加一个DataReceived事件处理程序。当串口接收到数据时,DataReceived事件将被触发,并调用DataReceivedHandler方法。在这个方法中,我们使用ReadExisting方法读取串口中的所有可用数据,并将其输出到控制台。

需要注意的是,在使用串口时,应该先检查计算机上是否存在可用的串口,可以使用System.IO.Ports.SerialPort.GetPortNames()方法来获取所有可用的串口名称。此外,在打开串口时,应该捕获异常,以防止打开失败。

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

相关·内容

领券