может быть POINTER TO BYTE? или ARRAY [1..XXX] OF WORD?

или

FUNCTION SetWord : DWORD

VAR_INPUT
i_dwAddress: POINTER TO BYTE;
i_wVal: WORD;
END_VAR

(* res *)
i_dwAddress^ := WORD_TO_BYTE( i_wVal / 256 );
i_dwAddress := i_dwAddress + 1;
i_dwAddress^ := WORD_TO_BYTE( i_wVal );

SetWord := i_dwAddress + 1;