跳到主要内容

15.4.20 寄存器指令

15.4.20.1 ReadRegByName

说明: 根据寄存器的名字,读取对应寄存器的变量值。

定义:

ReadRegByName(RegData, Value);
  • RegData:,数据类型:可读的寄存器变量 ,设置>通信>寄存器界面功能,寄存器变量。

  • Value:数据类型 bool/int/byte/double,寄存器数据将写入 Value,如果寄存器的变量类型和解释器变量不一致,将自动进行格式转换

示例:

int tmp_int;
ReadRegByName(modbus_int_read[6], tmp_int);
//将名为 modbus_int_read 的下标为 6 的数据,读取到 tmp_int 变量中

15.4.20.2 WriteRegByName

说明: 根据寄存器的名字,读取对应寄存器的变量值 ,该指令如果放在运动指令之后使用,不会打断转弯区,在运动指令轨迹终点触发,或在转弯区起点触发,具体使用可参考 SetDO 例 2。

定义:

WriteRegByName(RegData, Value);
  • RegData: 数据类型:可写的寄存器变量,设置>通信>寄存器界面功能,寄存器变量。

  • Value: 数据类型:bool/int/byte/double,将 Value 数据写入寄存器中,如果寄存器的变量类型和解释器变量不一致,将自动进行格式转换。

示例:

WriteRegByName(modbus_int_write[6], 200);
//将INT 200 的数据,写入 modbus_int_write[6]对应的寄存器中

15.4.20.3 ReadRegByteByName

说明: 根据寄存器的名字,读取寄存器对应字节的值。

定义:

ReadRegByteByName(RegData, Value, byteFlag);
  • RegData,数据类型:可读或可写的 int16/int32 类型寄存器,通信→寄存器界面功能,寄存器变量。

  • Value ,数据类型:byte 类型变量,读取寄存器对应字节值到 Value 中,Value 必须为 byte 类型变量。

  • byteFlag:字节标志位。取值范围 1-4,1 为低字节,4 为高字节。

示例:

byte tmp_value;
ReadRegByteByName(modbus_reg, tmp_value, 1);
//将名为 modbus_reg 寄存器的第一个字节,读取到 tmp_value 变量中

15.4.20.4 WriteRegByteByName

说明: 根据寄存器的名字,写对应寄存器字节的值 ,该指令如果放在运动指令之后使用,不会打断转弯区,在运动指令轨迹终点触发,或在转弯区起点触发,具体使用可参考 SetDO 例 2。

定义:

WriteRegByteByName(RegData, Value, byteFlag);
  • RegData,数据类型:可写的 int16/int32 类型寄存器变量 ,通信→寄存器界面功能,寄存器变量。

  • Value ,数据类型:byte,将 Value 数据写入寄存器对应字节中。

  • byteFlag ,字节标志位。取值范围 1-4,1 为低字节,4 为高字节。

示例:

WriteRegByteByName(modbus_reg, 200, 2);
//将 200 的数据,写入名为 modbus_reg 的第2个字节中