QT串口使用

1.前言

Qt5.0以上都是使用官方的串口库,简单几步操作就可以使用。

2.演示

//首先是pro文件加入官方串口库信息
QT    += serialport
//mainwindow.h里加入串口头文件
#include 
#include 

QSerialPort代表可以访问串口
QSerialPortInfo代表访问串口的信息

 

   //在源文件写入,打开串口可读取串口查看串口信息
    foreach(const QSerialPortInfo &Info,QSerialPortInfo::availablePorts())//读取串口信息
    {
         qDebug() << "portName     :" << Info.portName();//调试时可以看到串口信息
         qDebug() << "Description     :" << Info.description();
         qDebug() << "Manufacturer    :" << Info.manufacturer();
         QSerialPort serial;
         serial.close();
    }

 这里就用到QSerialPortInfo查看串口信息

//接下来需要创建一个串口的对象
my_serialPort = new QSerialPort(this);

//WINDOWS下COM是串口名称,LINUX下tty是串口名称,在不同的系统环境下需要区分
my_serialPort->setPortName("COM1");

//检测串口是否可以读写,返回值为bool值判断串口是否可用
RWserialPort = my_serialPort->open(QIODevice::ReadWrite);

//接下来是设置串口,下面设置要与下位机串口设置一直否则无法读取或者乱码
my_serialPort->setBaudRate(QSerialPort::Baud115200,QSerialPort::AllDirections);//这里的波特率115200根据你的机器实际情况设置
my_serialPort->setDataBits( QSerialPort::Data8 );//数据字节,8字节
my_serialPort->setParity( QSerialPort::NoParity );//校验,无
my_serialPort->setFlowControl( QSerialPort::NoFlowControl );//数据流控制,无
my_serialPort->setStopBits( QSerialPort::OneStop );//一位停止位

3.总结

Qt的串口设置十分简单,很快就能投入使用,但是在接收数据方面问题有点多,下篇文章说明一下Qt串口的读取方式和问题

你可能感兴趣的:(Qt)