Jlibmodbus 读取保持寄存器限制为 125

Jlibmodbus read holding register limit to 125

我正在使用 jlibmodbus 库读取从属寄存器。 我能够读取从 0 到 125 的寄存器,但是如果我尝试读取值 126 或更大的寄存器,我会收到错误消息,指出起始偏移量错误。

我有大约 500 个寄存器,如何使用读取保持寄存器一次性读取所有寄存器。

Modbus 读取寄存器响应(函数读取输入寄存器或读取保持寄存器)具有 space 125 个寄存器。

您需要发出四个请求来读取 500 个寄存器。在每个请求中指定起始地址:

  • 请求1:起始地址=0,寄存器个数=125
  • 请求2:起始地址=125,寄存器个数=125
  • 请求3:起始地址=250,寄存器个数=125
  • 请求4:起始地址=375,寄存器个数=125

此处使用的地址是虚构的,您需要检查设备的 Modbus 映射以获得正确的地址。