Qt串口操作-打開串口

Qt使用QSerialPort來操作串口,使用時需要在.pro文件中加入:

QT     += serialport

然後使用#include引入頭文件。(我不明白爲什麼Qt要使用這樣的設計,完全可以只依靠引入頭文件來實現)

以下爲打開串口的代碼:

#include "mainwindow.h"

#include <QApplication>
#include<QDebug>
#include<QSerialPort>
#include<QSerialPortInfo>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QStringList m_listport;
//獲取每一個串口的名稱,並將其存入m_listport
    foreach(const QSerialPortInfo &info, QSerialPortInfo::availablePorts()){
        m_listport<<info.portName();
        qDebug()<<"name:"<<info.portName();
    }
    //初始化一個實例對象
    QSerialPort *m_sp=new QSerialPort;
    if(m_sp->isOpen()){//如果已經打開,則先關閉
        m_sp->clear();
        m_sp->close();
    }
    //設置串口名稱
    m_sp->setPortName(m_listport[0]);
    if(!m_sp->open(QIODevice::ReadWrite)){
        qDebug()<<m_listport[0]<<"打開失敗!";
    }
    else{
        qDebug()<<m_lisyport[0]<<"打開成功!";
    }
    MainWindow w;
    w.show();
    return a.exec();
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章