QT用serialport实现串口设备的接收(环境在windows下的qt5)

serialport串口类的实现过程如下:

第一:我们要在工程文件pro文件里面添加一句  QT  += serialport

          接着在头文件里面添加   #include <QtSerialPort/QSerialPort> 

                                              #include <QtSerialPort/QSerialPortInfo>

第二:配置串口参数函数我这里写的是8位数据 无校验 一个停止位  9600波特率 这些配置可以根据自己的需要来更改

int MainWindow::open(QString comPort)
{
    this->com = comPort;
 
 
    //串口参数设置
    serial = new QSerialPort();
    serial->setPortName(com);//设置串口名
    if(! serial->open(QIODevice::ReadWrite))
    {
       qDebug("open serial error!");
       return -1;
    }
    else
    {
        qDebug("open serial ok");
    }
    serial->setBaudRate(QSerialPort::Baud9600);//9600波特率
    serial->setDataBits(QSerialPort::Data8);//8位数据位
    serial->setParity(QSerialPort:: EvenParity );//有校验
    serial->setStopBits(QSerialPort::OneStop );//1个停止位
    serial->setFlowControl(QSerialPort::NoFlowControl);
    return 0;
}

第三:写入数据  只要一行就可以把数据写入了 

serial->write( )  这个write原型是这样的write(const char *data, qint64 len);

第四:读取数据   

QByteArray  buf = serial->readAll();

第五:关闭串口

serial->close();

 
 

上面的serial我在头文件里面是这样定义的 QSerialport *serial.

QT里面serialport类很好用比较简便  配置串口 串口的读、写、关闭就ok了。代码地址https://download.csdn.net/download/weixin_39770778/10326200


猜你喜欢

转载自blog.csdn.net/weixin_39770778/article/details/79744001