Цитата Сообщение от Move Посмотреть сообщение
Если я правильно понял это адрес модуля, допустим %QD6.4.3.0.0 , а где мне взять адреса для WORDов, или я не правильно понимаю работу функции?
Вот вариант проще
Код:
FUNCTION_BLOCK Swap_BYTE
VAR_INPUT
	rIn:REAL;        (*входная переменная типа REAL*)
END_VAR
VAR_OUTPUT
	rOut:REAL;     (*переменная rOut с переставленными местами БАЙТами*)
END_VAR
VAR
	pInput	   : POINTER TO ARRAY[0..3] OF BYTE;     (*  указатели на массивы *)
	pOutput	: POINTER TO ARRAY[0..3] OF BYTE;
END_VAR
___________________________________________
pInput :=ADR(rIn);
pOutput := ADR(rOut);                           (* Обязательно объявить блок в разделе переменных и в теле программы PLC_PRG  *)

pOutput^[ 0 ] := pInput^[ 3 ];                    (* Перестановка байт *)
pOutput^[ 1 ] := pInput^[ 2 ];
pOutput^[ 2 ] := pInput^[ 1 ];                    (* Перестановка байт *)
pOutput^[ 3 ] := pInput^[ 0 ];