117.info
人生若只如初见

C#串口通讯收发数据怎么实现

在C#中实现串口通信收发数据,可以使用System.IO.Ports命名空间下的SerialPort类。以下是一个简单的示例代码:

using System;
using System.IO.Ports;

class Program
{
    static SerialPort _serialPort;
    
    static void Main()
    {
        _serialPort = new SerialPort("COM1", 9600); // 设置串口号和波特率
        _serialPort.Open(); // 打开串口
        
        _serialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); // 设置数据接收事件处理函数
        
        string message = "Hello, World!";
        _serialPort.WriteLine(message); // 发送数据
        
        Console.ReadLine(); // 等待用户输入
    }
    
    static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
    {
        SerialPort sp = (SerialPort)sender;
        string data = https://www.yisu.com/ask/sp.ReadLine(); // 读取接收到的数据"Received data: " + data);
    }
}

以上代码中,首先创建一个SerialPort对象,并指定串口号和波特率。然后打开串口,并设置数据接收事件处理函数。在Main函数中,发送数据使用WriteLine方法,接收数据则在DataReceivedHandler函数中通过ReadLine方法读取数据。最后通过Console.WriteLine打印接收到的数据。

需要注意的是,在使用完SerialPort对象后,需要及时关闭串口,可以在程序结束时调用_serialPort.Close()来关闭串口连接。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe287AzsLAQdTBVY.html

推荐文章

  • c#怎么从文件中读取数据

    在C#中,可以使用StreamReader类来读取文件中的数据。以下是一个简单的示例代码,演示如何从文件中读取数据:
    using System;
    using System.IO; class ...

  • c++降序排序算法怎么实现

    降序排序可以使用标准库中的sort()函数,并传入一个自定义的比较函数,使其按照降序排列。
    下面是一个用于降序排序的示例代码:
    #include #include #i...

  • c++获取当前路径的方法是什么

    在C++中,可以使用std::filesystem::current_path()函数来获取当前路径。需要包含头文件。
    以下是一个示例代码:
    #include #include int main() { std...

  • c++中的delete怎么使用

    在 C++ 中,delete 用于释放由 new 动态分配的内存。它接受一个指针作为参数,并释放该指针指向的内存。
    // 动态分配内存
    int* ptr = new int; // 使用...

  • c语言中字符串常量如何定义

    在C语言中,字符串常量可以使用双引号括起来来定义。例如:
    char *str = "Hello, World!"; 字符串常量在内存中会被存储为一个以空字符结尾的字符数组。在C语...

  • deepin系统怎么运行exe文件

    deepin系统是基于Linux的操作系统,不支持直接运行Windows的.exe文件。虽然Linux系统不支持Windows的可执行文件格式,但可以通过Wine软件来模拟运行Windows程序。...

  • java中number转double怎么实现

    要将Number类型转换为double类型,可以使用doubleValue()方法。示例如下:
    Number number = 10;
    double result = number.doubleValue();
    System....

  • centos怎么查看端口连接情况

    要查看CentOS上的端口连接情况,您可以使用以下命令: 使用netstat命令查看活动的网络连接: netstat -tuln 使用ss命令查看更详细的信息: ss -tulpn 这些命令将...