QModbusDataUnit Class
QModbusDataUnit は Modbus レジスタのシングル・ビットと16
ビットのワード・エントリを表すコンテナ・クラスです。詳細...
Header: | #include <QModbusDataUnit> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS SerialBus) target_link_libraries(mytarget PRIVATE Qt6::SerialBus) |
qmake: | QT += serialbus |
パブリック・タイプ
enum | RegisterType { Invalid, DiscreteInputs, Coils, InputRegisters, HoldingRegisters } |
パブリック関数
QModbusDataUnit() | |
QModbusDataUnit(QModbusDataUnit::RegisterType type) | |
QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, const QList<quint16> &data) | |
QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, quint16 size) | |
bool | isValid() const |
QModbusDataUnit::RegisterType | registerType() const |
void | setRegisterType(QModbusDataUnit::RegisterType type) |
void | setStartAddress(int address) |
void | setValue(qsizetype index, quint16 value) |
void | setValueCount(qsizetype newCount) |
void | setValues(const QList<quint16> &values) |
int | startAddress() const |
quint16 | value(qsizetype index) const |
qsizetype | valueCount() const |
QList<quint16> | values() const |
関連する非メンバー
詳細説明
QModbusDataUnit は、読み取りと書き込みの操作に使用できる。エントリは () と () 連続エントリ数によってアドレス指定される。() は、どのレジスタを操作に使用するかを決定する。一部のレジスタは読み出し専用レジスタであることに注意。startAddress valueCount registerType
実際のvalues ()は、シングルビットまたは16
ビットベースである。QModbusDataUnit::DiscreteInputs とQModbusDataUnit::Coils はシングルビットしか受け付けない。したがって、0
は0
と解釈され、それ以外は1
と解釈される。
メンバ型ドキュメント
enum QModbusDataUnit::RegisterType
この列挙型は、サポートされるすべてのレジスタ・タイプを記述する。
定数 | 値 | 説明 |
---|---|---|
QModbusDataUnit::Invalid | 0 | デフォルトのコンストラクタによって設定されます。 |
QModbusDataUnit::DiscreteInputs | 1 | このタイプのデータは、I/O システムによって提供される可能性があります。 |
QModbusDataUnit::Coils | 2 | このタイプのデータは、アプリケーション・プログラムによって変更可能である。 |
QModbusDataUnit::InputRegisters | 3 | このタイプのデータはI/Oシステムによって提供されることができる。 |
QModbusDataUnit::HoldingRegisters | 4 | この型のデータは、アプリケーション・プログラムによって変更可能である。 |
メンバ関数ドキュメント
[constexpr noexcept]
QModbusDataUnit::QModbusDataUnit()
空の無効な QModbusDataUnit を構築します。開始アドレスは-1
に設定され、registerType はQModbusDataUnit::Invalid に設定されます。
[explicit constexpr noexcept]
QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type)
レジスタtype のデータ・ユニットを構築します。開始アドレスは0
に設定され、データ範囲とデータ値は空です。
QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, const QList<quint16> &data)
レジスタtype のデータ単位を構築する。データの開始アドレスはaddress に設定され、ユニットの値はdata に設定される。値カウントはdata サイズによって暗示される。
QModbusDataUnit::QModbusDataUnit(QModbusDataUnit::RegisterType type, int address, quint16 size)
レジスタtype のデータ単位を構築する。データの開始アドレスはaddress に、ユニットのサイズはsize に設定される。values() のエントリは0
で初期化される。
bool QModbusDataUnit::isValid() const
QModbusDataUnit
が有効な場合はtrue
を返し、そうでない場合はfalse
を返す。registerType() がQModbusDataUnit::Invalid でなく、かつstartAddress() が0
以上の場合、QModbusDataUnit
は有効であると見なされる。
QModbusDataUnit::RegisterType QModbusDataUnit::registerType() const
レジスタの型を返す。
setRegisterType() およびQModbusDataUnit::RegisterTypeも参照のこと 。
void QModbusDataUnit::setRegisterType(QModbusDataUnit::RegisterType type)
レジスタを設定するtype 。
registerType() およびQModbusDataUnit::RegisterType も参照のこと 。
void QModbusDataUnit::setStartAddress(int address)
データ・ユニットの開始位置address を設定する。
startAddress() も参照 。
void QModbusDataUnit::setValue(qsizetype index, quint16 value)
位置index からvalue のレジスタを設定する。
value() も参照 。
void QModbusDataUnit::setValueCount(qsizetype newCount)
要求されたレジスタのデータ・ブロックのサイズをnewCount に設定する。
この関数はデータ要求のサイズを示すために使用されるため、values() のサイズとは異なる場合がある。データ要求が処理されると、valueCount() はvalues() のサイズに等しくなる。
valueCount()も参照のこと 。
void QModbusDataUnit::setValues(const QList<quint16> &values)
データ・ユニットのvalues を設定する。QModbusDataUnit::DiscreteInputs およびQModbusDataUnit::Coils テーブルはシングル・ビット値しか受け付けないため、0
は0
と解釈され、それ以外は1
と解釈される。
values()も参照のこと 。
int QModbusDataUnit::startAddress() const
レジスタ内のデータ・ユニットの開始アドレスを返す。
setStartAddress() も参照の こと。
quint16 QModbusDataUnit::value(qsizetype index) const
位置index の値を返す。
setValue() も参照の こと。
qsizetype QModbusDataUnit::valueCount() const
要求されたレジスタのデータ・ブロックのサイズまたはデバイスから読み出されたデータのサ イズを返す。
この関数は、values() サイズに等しいカウントを返すとは限りません。このクラスはリモート・データ・レジスタからデータを要求するために使用されるので、 valueCount() を使用して、要求されたレジスタのデータ・ブロックのサイズを示すことができます。要求が処理されると、valueCount() はvalues() のサイズに等しくなります。
setValueCount()も参照 。
QList<quint16> QModbusDataUnit::values() const
QModbusDataUnit::DiscreteInputs およびQModbusDataUnit::Coils テーブルはシングル・ビット値しか受け付けないため、0
は0
と解釈され、それ以外は1
と解釈される。
setValues()も参照 。
©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。