DOCA0108ZH-03

Modbus 寄存器表格

表格格式

地址

寄存器

RW

单位

类型

范围

厂商

已保存

说明

                   
  • 地址:一个十六进制的 16 位寄存器地址。该地址是 Modbus 帧中使用的数据。

  • 寄存器:一个十进制的 16 位寄存器编号(寄存器 = 地址 + 1)。

  • RW:寄存器读写状态

    • R:只读访问

    • RW:利用 Modbus 功能进行读写访问

  • 单位:用来表示信息的单位。

  • 类型:编码数据类型(请参阅 数据类型)。

  • 范围 :这个寄存器的允许值,通常是格式允许的一个子集。

  • 厂家: 新设备中经过向出厂设置命令复位的变量的值。

  • 已保存:

    • 是:断电时,值会被保存。

    • 否:断电时,值不会被保存。

  • 位:用于 BITMAP 说明的位编号。

  • 说明:提供关于寄存器和适用限制条件的信息。

数据类型

数据类型

描述

范围

INT16U

16 位无符号整数

0 至 65535

INT16

16 位有符号整数

-32768 至 +32767

INT32U

32 位无符号整数

0 至 4 294 967 295

INT32

32 位有符号整数

-2147483648 到 +2147483647

STRING

文本串

每个字符占 1 个字节

BITMAP

16 位寄存器

数据类型:BITMAP

BITMAP 寄存器是一种 16 位寄存器,它可以被当成以下对象加以读取:

  • 若采用读取多寄存器功能(功能代码 0x03),则为 16 位无符号整数。

  • 若采用读取多位功能(功能代码 0x01 或 0x02),则为位集合。

  • “类型”栏说明了获取变量所需读取的寄存器数。例如,INT16U 要求读取一个寄存器,而 INT32 需要读取 2 个寄存器。

  • 某些变量必须被当成一个多寄存器功能块读取。如果只读一部分数会导致错误。

  • 从未记录的寄存器读取会导致 Modbus 异常。请参阅 Modbus 异常代码

  • 数值采用十进制表示。如果需要使用十六进制来表示,那么该值将显示为 C 语言类型的常量:0xdddd。比如,十进制值 123 的十六进制表示方式为:0x007B。

  • INT32U 或 INT32 变量以 big-endian 格式保存:首先传输最有效的寄存器,然后是最无效的寄存器。

  • 乱序和不相关数据取决于数据类型。

数据类型

乱序和不相关数值

INT16U

65535 (0xFFFF)

INT16

-32768 (0x8000)

INT32U

4294967295 (0xFFFFFFFF)

INT32

0x80000000

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

这有帮助吗?