QT制作简易串口调试助手

文章目录

  • QT制作简易串口调试助手
    • 0 简介
    • 1 界面制作
    • 2 逻辑实现
      • 2.1 添加与可用串口信息有关的类的准备
      • 2.2 读取可用串口并添加到控件
      • 2.3 打开串口
      • 2.4 关闭串口
      • 2.5 串口收发数据
      • 2.6 清空接收框
    • 3 打包发布
      • 3.1 切换到release模式并编译
      • 3.2 完善一些信息(如改图标)
      • 3.3 封包

QT制作简易串口调试助手

0 简介

  • 本次实验涉及的QT基础: 信号和槽基本原理 常用控件使用 布局设置
  • 本次实验借鉴了网上各种资料以及查阅了相关串口类的官方文档
  • 本文只提示了最基础的功能,全面了解请自行参考各种资源
  • 本次实验源码资源QT制作简易串口调试助手_第1张图片

1 界面制作

常用的控件及属性设置,界面布局
QT制作简易串口调试助手_第2张图片

2 逻辑实现

2.1 添加与可用串口信息有关的类的准备

QT制作简易串口调试助手_第3张图片

2.2 读取可用串口并添加到控件

QStringList serialName;
foreach (const QSerialPortInfo& info, QSerialPortInfo::availablePorts()) {
    serialName << info.portName();
}
ui->serial_comboBox->addItems(serialName);

QT制作简易串口调试助手_第4张图片

2.3 打开串口

QT制作简易串口调试助手_第5张图片

//测试
mySerialPort->setPortName(ui->serial_comboBox->currentText()); //这个容易遗忘
mySerialPort->setBaudRate(QSerialPort::Baud4800);
mySerialPort->setDataBits(QSerialPort::Data8);//根据MCU来选择,一般是8 这个关系到串口是否成功打开
mySerialPort->setStopBits(QSerialPort::OneStop);
mySerialPort->setParity(QSerialPort::NoParity);
mySerialPort->setFlowControl(QSerialPort::NoFlowControl);

if (mySerialPort->open(QIODevice::ReadWrite))//判断是否成功打开,很重要
    QMessageBox::information(this, "提示", "打开成功!");
else
    QMessageBox::critical(this, "提示", "打开失败!");

QT制作简易串口调试助手_第6张图片

2.4 关闭串口

mySerialPort->close();

2.5 串口收发数据

  1. 串口接收

    connect(mySerialPort, SIGNAL(readyRead()), this, SLOT(readyRead_slots())); //串口read的connect
    
    void Widget::readyRead_slots()
    {
        QString buf;
        buf = QString(mySerialPort->readAll());
        //buf = mySerialPort->readAll().toHex(); //16进制显示
        //ui->receive_plainTextEdit->appendPlainText(buf);
        ui->receive_plainTextEdit->insertPlainText(buf); //没有换行
        ui->receive_plainTextEdit->moveCursor(QTextCursor::End);//及时更新内容
    }
    
  2. 串口发送

    void Widget::on_send_pushButton_clicked()
    {
        mySerialPort->write(ui->send_textEdit->toPlainText().toLocal8Bit().data());
    }
    

2.6 清空接收框

void Widget::on_clear_pushButton_clicked()
{
    ui->receive_plainTextEdit->clear();
}

3 打包发布

3.1 切换到release模式并编译

QT制作简易串口调试助手_第7张图片

3.2 完善一些信息(如改图标)

更改图标步骤

  1. 在此目录下添加一个ico文件

    QT制作简易串口调试助手_第8张图片

  2. 在pro中加入代码,并编译,发现此目录下图标改变了

    QT制作简易串口调试助手_第9张图片

3.3 封包

  1. 找到用于封包的控制台

    QT制作简易串口调试助手_第10张图片

  2. 新建一个文件夹并且把相应目录下的exe文件拷贝进去

    QT制作简易串口调试助手_第11张图片

  3. 使用刚刚打开好的控制台,并且进入刚刚创建的文件夹

    QT制作简易串口调试助手_第12张图片

  4. 使用命令 windeployqt + 名称.exe 基本结束,此方法简单但是文件很大,其他方法可百度

    QT制作简易串口调试助手_第13张图片

你可能感兴趣的:(QT之路,串口通信,QT,C++,串口调试助手)