00. 目录
文章目录
01. 概述
QModbusRtuSerialSlave类表示Modbus服务器,该服务器使用串行端口与Modbus客户端进行通信。
Header: #include <QModbusRtuSerialSlave>
qmake: QT += serialbus
Since: Qt 5.8
Inherits: QModbusServer
通过Modbus进行通信需要在单个Modbus客户端实例和多个Modbus服务器之间进行交互。此类通过串行端口提供Modbus服务器实现。
由于多个Modbus服务器实例可以同时(使用串行总线)与Modbus客户端进行交互,因此服务器通过其serverAddress()进行标识。
02. 开发环境
Windows系统:Windows10
Qt版本:Qt5.15或者Qt6
03. 公有成员方法
QModbusRtuSerialSlave(QObject *parent = nullptr)
构造一个具有指定parent的QModbusRtuSerialSlave 。所述serverAddress预设为1。
virtual ~QModbusRtuSerialSlave()
析构函数
04. Reimplemented Public Functions
virtual bool processesBroadcast() const override
重新实现:QModbusServer :: processesBroadcast()常量。
05. Reimplemented Protected Functions
virtual void close() override
重新实现:QModbusDevice :: close()。
virtual bool open() override
重新实现:QModbusDevice :: open()。
注意:调用此函数时,现有的缓冲数据将从串行端口中删除。
virtual QModbusResponse processRequest(const QModbusPdu &request) override
重新实现:QModbusServer :: processRequest(const QModbusPdu&request)。
处理由指定的Modbus客户端请求请求并返回一个Modbus响应。
MEI类型13(0x0D)的Modbus函数QModbusRequest :: EncapsulatedInterfaceTransport CANopen通用参考被滤除,
因为它通常仅是Modbus TCP或Modbus串行ASCII。
对RTU串行从站的请求将通过Modbus异常响应(带有异常代码QModbusExceptionResponse :: IllegalFunction)来回答。
06. 附录
6.1 Qt教程汇总
网址:https://dengjin.blog.csdn.net/article/details/115174639
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容