ChatGPT写QT读写串口数据的Demo

突发奇想,想使用ChatGPT试试能不能写一个读写串口数据的demo,以下为测试结果:

cpp 复制代码
#include <QCoreApplication>
#include <QtSerialPort/QSerialPort>
#include <QtSerialPort/QSerialPortInfo>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    // 获取可用串口列表
    QList<QSerialPortInfo> serialPortList = QSerialPortInfo::availablePorts();
    if(serialPortList.isEmpty()) {
        qDebug() << "No serial ports found.";
        return 1;
    }

    // 选择第一个可用串口
    QSerialPort serialPort(serialPortList.at(0));
    serialPort.setBaudRate(QSerialPort::Baud9600);
    serialPort.setDataBits(QSerialPort::Data8);
    serialPort.setParity(QSerialPort::NoParity);
    serialPort.setStopBits(QSerialPort::OneStop);
    serialPort.setFlowControl(QSerialPort::NoFlowControl);

    // 打开串口
    if(!serialPort.open(QIODevice::ReadWrite)) {
        qDebug() << "Failed to open serial port.";
        return 1;
    }

    // 读取串口数据
    QObject::connect(&serialPort, &QSerialPort::readyRead, [&]() {
        QByteArray data = serialPort.readAll();
        qDebug() << "Received data:" << data;
    });

    // 写入数据到串口
    QByteArray dataToSend = "Hello, serial port!";
    serialPort.write(dataToSend);

    return a.exec();
}

这个示例代码会打开第一个可用的串口,设置串口的参数(波特率、数据位、校验位、停止位等),然后监听串口的数据读取事件,并将读取到的数据输出到控制台。同时,它也会向串口写入一条数据。你可以根据自己的需要修改和扩展这个示例代码。

相关推荐
Soneswy几秒前
C++基础篇——类与对象(上)
开发语言·c++
张小姐的猫2 分钟前
【MySQL】表的约束
android·linux·服务器·数据库·c++·mysql·adb
kiracrimson6 分钟前
STL简单引入:把数据结构做成模板
开发语言·数据结构·c++
fanruitian10 分钟前
python property
开发语言·python
曹牧18 分钟前
C#里引用ActiveX控件
开发语言·c#
kyle~22 分钟前
数据结构 --- 无锁队列(Lock-Free Queue)
linux·数据结构·c++·多线程·并发
汤姆宝库23 分钟前
推理工程深拆:调度、量化与投机解码
android·开发语言·kotlin
艾莉丝努力练剑29 分钟前
【AI大模型接入SDK】ChatServer 路由规则绑定
网络·c++·人工智能·学习·ai·架构
qq_4017004136 分钟前
TCP 长连接、心跳包与断线自动重连设计:工业级通信的“不死鸟”架构
网络·qt·tcp/ip
王老师青少年编程38 分钟前
2025年6月GESP真题及题解(C++一级): 选择题和判断题(题解)
c++·真题·gesp·答案·csp·一级·信奥赛