Qt 串口编程QSerialPortInfo | 九七的Qt

Qt 串口编程QSerialPortInfo

环境

Windows10
VS2019
Qt5.14.2

一、定义介绍

  QSerialPortInfo,看它名字就知道是一个和串口有关的类,我们通过F12查看其文档,发现QSerialPortInfo就是一个qserialportInfo.h文件(如下图)。
在这里插入图片描述
  我们可以把鼠标光标移动到QSerialPortInfo,就可以看到qserialportInfo.h在文件夹中所处的位置。下图是qserialportInfo.h在文件夹中的位置。
在这里插入图片描述

二、功能作用

  QSerialPortInfo是一个类,这个类里面包含很多和串口有关的变量和方法,就是为了方便Qt程序员进行Qt开发。

三、使用方法

使用步骤:

1.创建Qt工程
2.在VS中添加Qt的串口模块(串口模块就包含了QSerialPortInfo等用于串口编程的类)
项目——>属性
在这里插入图片描述
选择Qt Project Setting——>Qt Modules
在这里插入图片描述

勾选Serial Port
在这里插入图片描述
3.在文件中包含QSerialPortInfo

#include <QSerialPortInfo>

4.使用QSerialPortInfo

来自:九七的Qt(转载请注明出处)

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
写一个QT上位机串口编程涉及到以下几个步骤: 1. **创建串口**:首先,你需要使用QT提供的串口控件或串口工具类(如QSerialPortQSerialPortInfo)来打开串口。通常,这需要在你的代码中添加QT串口处理库。 ```cpp QSerialPort serial; serial.setPortName("COM1"); // 更改为你设备的串口名称 serial.setBaudRate(QSerialPort::Baud9600); // 设置波特率 serial.setDataBits(QSerialPort::Data8); // 设置数据位 serial.setParity(QSerialPort::NoParity); // 设置校验位 serial.setStopBits(QSerialPort::OneStop); // 设置停止位 serial.setFlowControl(QSerialPort::NoFlowControl); // 设置流控制 if (!serial.open(QIODevice::ReadWrite)) { qDebug() << "Could not open the serial port:" << errorString(); return; } ``` 这段代码打开了一个名为"COM1"的串口,并设置了其波特率、数据位、校验位、停止位和流控制。 2. **接收数据**:一旦串口被打开,你就可以使用readAll()方法来接收数据。当有数据到来时,这个方法会返回一个包含所有接收到的数据的字符串。 ```cpp QString receivedData = serial.readAll(); ``` 这段代码会读取并返回所有接收到的数据。 3. **发送数据**:你可以使用write()方法来发送数据。这个方法需要一个QString类型的参数,这个参数就是你想要发送的数据。 ```cpp QString dataToSend = "Hello, world!"; serial.write(dataToSend.toUtf8()); ``` 这段代码会发送一个字符串"Hello, world!"。 4. **关闭串口**:在程序结束前,你应该关闭串口。否则,你可能会遇到资源泄漏的问题。 总的来说,Qt串口编程涉及到的知识包括串口的打开、关闭、读写等操作,以及对错误的处理等。这需要你熟悉Qt串口处理库和相关的API。此外,你可能还需要了解一些关于串口通信的基本知识,如波特率、数据位、校验位、停止位等概念。如果你对这些内容还不熟悉,我建议你查阅相关的文档和教程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Nines~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值