PySide6.QtSerialBus.QModbusDataUnit¶
- class QModbusDataUnit¶
QModbusDataUnit
是一个容器类,表示 Modbus 寄存器中的单比特和16
比特字条目。更多…概要¶
方法¶
def
__init__()
def
isValid()
def
registerType()
def
setValue()
def
setValueCount()
def
setValues()
def
startAddress()
def
value()
def
valueCount()
def
values()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
QModbusDataUnit
可以用于读写操作。条目通过startAddress()
和valueCount()
连续条目的数量进行寻址。registerType()
确定用于操作的寄存器。请注意,某些寄存器是只读寄存器。实际的
values()
是基于单比特或16
比特的。DiscreteInputs
和Coils
只接受单比特。因此0
被解释为0
,其他任何值都被解释为1
。- class RegisterType¶
此枚举描述了所有支持的寄存器类型。
常量
描述
QModbusDataUnit.Invalid
由默认构造函数设置,请勿使用。
QModbusDataUnit.DiscreteInputs
这种类型的数据可以由I/O系统提供。
QModbusDataUnit.Coils
这种类型的数据可以通过应用程序进行修改。
QModbusDataUnit.InputRegisters
这种类型的数据可以由I/O系统提供。
QModbusDataUnit.HoldingRegisters
这种类型的数据可以通过应用程序进行修改。
- __init__()¶
构造一个空的、无效的
QModbusDataUnit
。起始地址设置为-1
,并且registerType
设置为Invalid
。- __init__(type)
- Parameters:
类型 –
RegisterType
为寄存器
type
构造一个数据单元。起始地址设置为0
,数据范围和数据值为空。- __init__(type, newStartAddress, newValues)
- Parameters:
type –
RegisterType
newStartAddress – int
newValues – quint16 的列表
为寄存器类型``type``构造一个数据单元。数据的起始地址设置为
address
,单元的值设置为data
。值的数量由data
的大小隐含。- __init__(type, newStartAddress, newValueCount)
- Parameters:
type –
RegisterType
newStartAddress – int
newValueCount – int
为寄存器类型``type``构造一个数据单元。数据的起始地址设置为
address
,单元的大小设置为size
。values()
的条目初始化为0
。- isValid()¶
- Return type:
布尔
如果
QModbusDataUnit
有效,则返回true
;否则返回false
。如果registerType()
不是Invalid
并且startAddress()
大于或等于0
,则认为QModbusDataUnit
是有效的。- registerType()¶
- Return type:
返回寄存器的类型。
- setRegisterType(type)¶
- Parameters:
类型 –
RegisterType
设置寄存器
type
。- setStartAddress(newAddress)¶
- Parameters:
newAddress – int
设置数据单元的起始
address
。另请参阅
- setValue(index, newValue)¶
- Parameters:
index – 整数
newValue – int
将位置
index
的寄存器设置为value
。另请参阅
- setValueCount(newCount)¶
- Parameters:
newCount – int
将请求寄存器的数据块大小设置为
newCount
。这可能与
values()
的大小不同,因为此函数用于指示数据请求的大小。只有在数据请求被处理后,valueCount()
才等于values()
的大小。另请参阅
- setValues(newValues)¶
- Parameters:
newValues – .quint16的列表
设置数据单元的
values
。DiscreteInputs
和Coils
表只接受单比特值,因此0
被解释为0
,其他任何值都被解释为1
。另请参阅
- startAddress()¶
- Return type:
整数
返回寄存器中数据单元的起始地址。
另请参阅
- value(index)¶
- Parameters:
索引 – int
- Return type:
整数
返回位置
index
处的值。另请参阅
- valueCount()¶
- Return type:
整数
返回请求寄存器的数据块大小或从设备读取的数据大小。
此函数可能不总是返回一个等于
values()
大小的计数。由于此类用于从远程数据寄存器请求数据,valueCount()可用于指示请求寄存器的数据块的大小。一旦请求被处理,valueCount()等于values()
的大小。另请参阅
- values()¶
- Return type:
.quint16的列表
返回数据单元中的数据。
DiscreteInputs
和Coils
表只接受单比特值,因此0
被解释为0
,其他任何值都被解释为1
。另请参阅