(* @PATH := '\/Functions_Collection' *) (* @SYMFILEFLAGS := '0' *) FUNCTION _Dword_Swap_ByteArray : ARRAY [0..3] OF BYTE VAR_INPUT i_Real : REAL ; END_VAR VAR i : INT ; j : INT ; k : INT ; mAuxDWord : DWORD ; mAuxByte : BYTE ; mOutByte: BYTE; END_VAR (* @END_DECLARATION := '0' *) MEMCPY(ADR(mAuxDWord), ADR(i_Real), 4) ; FOR k := 0 TO 3 DO mOutByte := 0; mAuxByte := DWORD_TO_BYTE (mAuxDWord) ; FOR i:=0 TO 7 DO IF (SHR (mAuxByte, i) MOD 2) = 1 THEN mOutByte := mOutByte + REAL_TO_BYTE(EXPT(2, i)) ; END_IF END_FOR _Dword_Swap_ByteArray[3 - k] := mOutByte ; mAuxDword := SHR (mAuxDWord, 8); END_FOR END_FUNCTION