工藤新三 2021-11-02 09:53 采纳率: 0%
浏览 33
已结题

qt串口连接不上,请教代码哪里有问题

串口一直连接不上,DL们看看哪里出了问题,初学者已经卡三天了,看一下感恩您(最下面为全部代码):

pro文件

img

h

img

img

cpp

想要pushButton_lianjie_port点击按钮实现串口连接

img

img

下面为全部了:
h文件

#ifndef TEMPER_H
#define TEMPER_H

#include <QMainWindow>
#include <dialog.h>
#include <canshu.h>
#include <QSerialPort>     //类,提供访问串口的功能
#include <QDebug>          

QT_BEGIN_NAMESPACE
namespace Ui { class temper; }
QT_END_NAMESPACE

class temper : public QMainWindow
{
    Q_OBJECT

public:
    temper(QWidget *parent = nullptr);
    ~temper();

private slots:



    void on_pushButton_wendu_clicked();

    void on_pushButton_canshu_clicked();

    void pushButton_lianjie_port(bool);

    void on_pushButton_duankai_clicked();


private:
    Ui::temper *ui;
    Dialog*dialog;
    Dialog*canshu;
    QSerialPort global_port;//定义串口
    bool OpenUart();
     void system_init();//系统初始化

};
#endif // TEMPER_H

cpp文件

#include "temper.h"
#include "ui_temper.h"
#include "dialog.h"
#include "canshu.h"
#include <QSerialPortInfo>
#include <QSerialPort>     //类,提供访问串口的功能
#include <QDebug>          //输出,printf
#include <QWidget>
#include <QtGui>
#include <QFileDialog>
#include <QMessageBox>

temper::temper(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::temper)
{
    ui->setupUi(this);


      auto listPorts = QSerialPortInfo::availablePorts();
      // 动态填充当前所有可用Ports
      for(auto &pInfo :listPorts)
      {
          QString strPortsName = pInfo.portName();
          ui->comboBox_Com->addItem(strPortsName);
      }
  connect(ui->pushButton_lianjie,&QPushButton::clicked,this,&temper::pushButton_lianjie_port);
}

temper::~temper()
{
    delete ui;
}

void temper::on_pushButton_wendu_clicked()
{
    dialog = new Dialog(this);
    dialog->setModal(false);
    dialog->show();

}


void temper::on_pushButton_canshu_clicked()
{
    canshu = new Dialog(this);
    canshu->setModal(false);
    canshu->show();
}


void temper::pushButton_lianjie_port(bool)
{
    global_port.setBaudRate(QSerialPort::Baud115200);
    global_port.setParity(QSerialPort::NoParity);
    global_port.setDataBits(QSerialPort::Data8);
    global_port.setStopBits(QSerialPort::OneStop);
    global_port.open(QIODevice::ReadWrite);
    ui->lab_status->setText("Connected");

// connect( &global_port, &QIODevice::readyRead, this, &temper::on_pushButton_lianjie_clicked);
//    if(global_port.open(QIODevice::ReadWrite)==true)
//      {

//        QObject::connect(global_port, &QSerialPort::readyRead, this, on_pushButton_lianjie_clicked);

//      }



}


void temper::on_pushButton_duankai_clicked()
{
    global_port.close();
    ui->lab_status->setText("Disconnected");
}

点击连接,打开虚拟串口并没有显示

img

  • 写回答

1条回答 默认 最新

  • 有问必答小助手 2021-11-04 10:26
    关注

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    评论

报告相同问题?

问题事件

  • 系统已结题 11月10日
  • 创建了问题 11月2日

悬赏问题

  • ¥15 Workbench中材料库无法更新,如何解决?
  • ¥20 如何推断此服务器配置
  • ¥15 关于github的项目怎么在pycharm上面运行
  • ¥15 内存地址视频流转RTMP
  • ¥100 有偿,谁有移远的EC200S固件和最新的Qflsh工具。
  • ¥15 找一个QT页面+目标识别(行人检测)的开源项目
  • ¥15 有没有整苹果智能分拣线上图像数据
  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析