QSerialPort類


一、簡介
    QSerialPort類是Qt5封裝的串口類,可以與串口進行通信。QSerialPortInfo是一個輔助類,提供串口的一些信息,如可用的串口名稱,描述,制造商,序列號 , 串口16位產品編號等。利用QSerialPortInfo提供的可用串口信息,可設置串口波特率,並打開需要的串口進行通信。
二、使用
使用時要注意,通過找到計算機可用的串口,得到后,要調用setPortName或者setPortInfo使我們實例化的串口對象與我們想使用的可用串口進行映射。此時我們就可以使用QSerialPort對象對串口進行操作了

a. 串口的初始化:

QSerialPort *serial = new QSerialPort();
QObject::connect(serial, SIGNAL(readyRead()), this, SLOT(recSerialData())); // 連接串口收到數據事件與讀取數據函數 serial->setPortName("COM3");
serial->setBaudRate(QSerialPort::Baud9600);
serial->setParity(QSerialPort::NoParity);
serial->setDataBits(QSerialPort::Data8);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
if (serial->open(QIODevice::ReadWrite)) {
    qDebug()<<"open success";
} else {
    qDebug()<<"open failed";
}

b. 向串口發送數據

serial->write("test");

c. 接收串口返回的數據

void MySerial::recSerialData()
{
    QByteArray ba;
    ba = serial->readAll();
    display(ba);
}

三、總結

總的來說,使用Qt5進行串口通信是較為簡單的。大致步驟為:配置串口參數->打開串口->收發數據。







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM