【Qt】QModbusDataUnit类
00. 目录
文章目录
- 00. 目录
- 01. 概述
- 02. 开发环境
- 03. 共有类型
- 04. 成员方法
- 05. 预留
- 06. 附录
01. 概述
QModbusDataUnit是一个容器类,在Modbus寄存器中的单个位和16位条目。
QModbusDataUnit可用于读取和写入操作。这些条目通过startAddress()和valueCount()数量的连续条目来寻址。registerType()确定哪个寄存器用于操作。请注意,某些寄存器是只读寄存器。
实际的value()()可以是单个位或16
位。QModbusDataUnit :: DiscreteInputs和QModbusDataUnit :: Coils仅接受单个位。因此0
被解释为0
和其他任何东西1
。
Header: #include
qmake: QT += serialbus
Since: Qt 5.8
02. 开发环境
Windows系统:Windows10
Qt版本:Qt5.15或者Qt6
03. 共有类型
QModbusDataUnit :: RegisterType类型
enum RegisterType { Invalid, DiscreteInputs, Coils, InputRegisters, HoldingRegisters }
常量 | 值 | 描述 |
---|---|---|
QModbusDataUnit::Invalid
|
0
|
由默认构造函数设置,请勿使用。 |
QModbusDataUnit::DiscreteInputs
|
1
|
此类数据可以由I / O系统提供。 |
QModbusDataUnit::Coils
|
2
|
此类数据可以由应用程序更改。 |
QModbusDataUnit::InputRegisters
|
3
|
此类数据可以由I / O系统提供。 |
QModbusDataUnit::HoldingRegisters
|
4
|
此类数据可以由应用程序更改。 |
04. 成员方法
QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, const QVector<quint16> &data)
为寄存器类型构造一个数据单元。数据的起始地址设置为address,本机的值设置为data。数值大小由数据大小隐含。QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, quint16 size)
为寄存器类型构造一个数据单元。数据的起始地址设置为address,单位的大小设置为size。value()的条目使用初始化0。QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type)
为寄存器类型构造一个数据单元。起始地址设置为0,数据范围和数据值为空。QModbusDataUnit::QModbusDataUnit()
构造一个空的无效QModbusDataUnit。起始地址设置为-1,registerType设置为QModbusDataUnit :: Invalid。bool QModbusDataUnit::isValid() const
返回,true如果QModbusDataUnit有效。否则false。QModbusDataUnit如果registerType()不是QModbusDataUnit :: Invalid并且startAddress()大于或等于,则认为ModbusDataUnit有效0。QModbusDataUnit::RegisterType QModbusDataUnit::registerType() const
返回寄存器的类型。void QModbusDataUnit::setRegisterType(QModbusDataUnit::RegisterType type)
设置寄存器类型。void QModbusDataUnit::setStartAddress(int address)
设置数据单元的起始地址。void QModbusDataUnit::setValue(int index, quint16 value)
将位置索引处的寄存器设置为value。void QModbusDataUnit::setValueCount(uint newCount)
将请求的寄存器的数据块的大小设置为newCount。void QModbusDataUnit::setValues(const QVector<quint16> &values)
设置数据单位的值。QModbusDataUnit :: DiscreteInputs和QModbusDataUnit :: Coils表仅接受单个位值,因此0被解释为0和1。int QModbusDataUnit::startAddress() const
返回寄存器中数据单元的起始地址。quint16 QModbusDataUnit::value(int index) const
返回位置index处的值。 uint QModbusDataUnit::valueCount() const
返回请求的寄存器的数据块的大小或从设备读取的数据的大小。QVector<quint16> QModbusDataUnit::values() const
返回数据单元中的数据。
05. 预留
06. 附录
6.1 Qt教程汇总
网址:https://dengjin.blog.csdn.net/article/details/115174639
【Qt】QModbusDataUnit类相关推荐
- Qt学习之路(1)------Qt常用类用法说明
Qt常用类 向控制台输出文本 第一个例子,我们采用STL的方式: console.cpp #include <iostream>int main() {std::cout << ...
- Qt 串口类QSerialPort 使用笔记
Qt 串口类QSerialPort 使用笔记 虽然现在大多数的家用PC机上已经不提供RS232接口了.但是由于RS232串口操作简单.通讯可靠,在工业领域中仍然有大量的应用.Qt以前的版本中,没有提供 ...
- 详解 QT 主要类 QWidget
QWidget类是所有用户界面对象的基类,每一个窗口部件都是矩形,并且它们按Z轴顺序排列的.一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分. 先来看内容. AD: 2013云计算架构师 ...
- Qt4_在次线程中使用Qt的类
在次线程中使用Qt的类 当函数可以同时被不同的线程安全地调用时,就称其为"线程安全的"(thread-safe).如果在不同的线程中对某一共享数据同时调用两个线程安全的函数,那么结 ...
- QT QVariant类数据类型使用
QT QVariant类数据类型使用 1. QVariant 类用于封装数据成员的类型及取值等信息,该类类似于 C++ 共用体 union ,一个QVariant 对象,一次只能保存一个单一类型的值. ...
- 0004:Qt常用类 - QTime
Qt常用类 - QTime 1 开发环境 在介绍内容之前,先说明一下开发环境,如下图: Qt版本:Qt5.3.2: Qt开发工具:Qt Creater 3.2.1: Qt构建工具:Desktop Qt ...
- Qt自定义类之自由移动的mainwindow
先要清楚,只是拖动mainwindow你是拖不动那个界面的,但是又想要设计漂亮的无标题栏的控件时,那就需要加自己的重写函数了 一开始我被这个东西给吓到了,因为在网上看了很多人的文章,但是发现我找不到他 ...
- Qt 常用类——QStandardItemModel
转载:落叶知秋时 类QabstractItemModel,QabstractListModel,QAbstractTableModel不保存数据,用户需要从这些类派生出子类,并在子类中定义某种数据结构 ...
- Qt添加类文件编译后,再添加宏Q_OBJECT
问题简述 创建项目的时候,已经添加了类文件,前期认为不需要信号槽,就没有添加宏Q_OBJECT,后面项目需要,又加入了宏Q_OBJECT,但是发现只是添加了一个宏Q_OBJECT,除此之外没有改动其它 ...
最新文章
- NHibernate 中删除数据的几种方法
- 【005】◀▶ C#学习笔记(四)(集合)
- 什么是微服务_微服务系列笔记:什么是微服务?
- python 定义一个插入数据(可以插入到每个表中)通用的方法
- python的字符串定界符可以使用_使用Template格式化Python字符串的方法
- 对mysql的总结与反思_一次DB故障引起的反思和MySQL Operator选型
- 网络html代码是什么问题,html代码问题
- 浅谈传统企业网络运营那些事儿
- 你的main函数规范吗?
- 女孩和程序员相亲,吃饭消费了380,他没结账就先走,晚上收到微信愣了
- 二十九、layui分页插件的使用
- asp页面实现301重定向方法
- Too many open files故障解决一例
- java一键生成海报_小程序生成海报(java后端)
- 蓝桥杯备赛第一天-138译码器
- PostgreSQL下载地址
- mysql 存储ip 且 ip 分段
- 服务器开机必须要按f1才能进系统,为什么开机要按f1才能进系统
- webservice报错Message part refundRequest was not recognized. (Does it exist in service WSDL?)
- spring04:注入依赖
热门文章
- [2014NoDEA]An Osgood type regularity criterion for the liquid crystal flows
- sqlserver表分区
- ASP.NET2.0数据操作之创建数据访问层(3)
- java无效字符 怎么解决_java.sql.SQLException: ORA-00911: 无效字符 解决方法
- seo需要处理页面html,为什么单页面的seo不友好?如何解决这一问题?
- 汉诺塔函数python_帮你轻松理解《汉诺塔》函数
- python 文件指定位置写入-Python从文件中读取指定的行以及在文件指定位置写入...
- linux 查看opengl版本,linux下查看OpenGL版本
- plesk 打不开php,Laravel在Plesk背后,遇到PHP版本困难
- php实现电话拨打,jquery mobile实现拨打电话功能的几种方法_jquery