我必须通过 RS485 将 Qt 应用程序与某些设备连接起来,我了解到这支持串行通信,并且我找到了很多关于它的文章,但是当我尝试使用#include QSerialPort 时,他们抱怨说这不可用。是的,大多数示例都是关于 Qt 5 的,我使用 Qt 6.4.1.
这个库有什么意义。完成这样的沟通需要遵循哪些步骤?
我想通过RS485从MODBUS通信的设备采集信息
首先尝试使用:
#include <QSerialPort>
在你的源代码中。
对于qmake项目:
.pro文件中,在QT+=行(通常是第一行)添加“serialport”。这将被解析并尝试加载适当的 Qt 串行端口头文件和库。
对于 cmake 项目:
将“serialport”文本添加到CMakeLists.txt中的适当位置
确保这些库已经安装在你的系统上。如果使用统一安装程序,则可以使用维护工具来完成此操作,或者通过 Linux 系统的串行端口库的适当包来完成。默认情况下通常不会安装此库。
Debian/Ubuntu 变体示例 Qt5:(对于 Qt6,将“5”更改为“6”)
me@ondev:~$ apt search libqt5serialport
Sorting... Done
Full Text Search... Done
libqt5serialport5/jammy,now 5.15.3-1 amd64 [installed,automatic]
Qt 5 serial port support
libqt5serialport5-dev/jammy,now 5.15.3-1 amd64 [installed]
Qt 5 serial port development files
使用头文件安装:
sudo apt install libqt5serialport5-dev
或者对于 Qt6:
sudo apt install libqt6serialport6-dev