(* REQUEST WRITE SINGLE REGISTER %MW100 (100 = 16#0064) with value “value_write” and Length := 5 *)
(* High byte address of the register + FC Write single register (6) coded on 1 byte *)
req_wr_single_reg[0] := (16#0064 & 16#FF00) + 6;
(* High byte value to write + Low byte address of the register *)
req_wr_single_reg[1] := (value_write & 16#FF00) + (16#0064 & 16#00FF);
(* unused + Low byte value to write *)
req_wr_single_reg[2] := value_write & 16#00FF;
IF ((mng_wr_single_reg[ACTIVITY] & 1) = 0 ) THEN
mng_wr_single_reg[LENGTH] := 5; (* Length RQ WRITE *)
DATA_EXCH (ADDM('0.0.3{@IP}TCP.MBS'), 1, req_wr_single_reg, mng_wr_single_reg, resp_wr_single_reg);
END_IF;
Ну и дабы не быть голословным, вот вам кусочек