Page 1 of 1

правильно переставить байты переменной Real для SCADA

Posted: Sat Oct 07, 2017 8:44 am
by a_gricaj
Здравствуйте,
Подскажите пж как правильно переставить байты в переменной тип REAL - это нужно для корректного отображения переменной на SCADA стороннего производителя,

Re: правильно переставить байты переменной Real для SCADA

Posted: Sat Oct 07, 2017 8:55 am
by Rex2701
0 <-> 3
1 <-> 2

Re: правильно переставить байты переменной Real для SCADA

Posted: Sat Oct 07, 2017 9:02 am
by a_gricaj
Ну, это понятно, спс, а как это сделать в SCL? Может есть какая-то стандартная функция ???

Re: правильно переставить байты переменной Real для SCADA

Posted: Sat Oct 07, 2017 10:20 am
by Rex2701
Стандартной нет.
В STL есть инструкции CAW и CAD.
А на чистом SCL придётся использовать конструкцию AТ, чтобы на входной и выходной REALы наложить массивы из 4-х байт.

Posted: Sat Oct 07, 2017 8:35 pm
by Schtiel

Code: Select all

VAR_TEMP
...
rValue : REAL;
rValueBytes AT rValue : ARRAY[0..3] OF BYTE ;
bTmp : BYTE ;
...
END_VAR
...
bTmp := rValueBytes[0];
rValueBytes[0] := rValueBytes[3];
rValueBytes[3] := bTmp;
bTmp := rValueBytes[1];
rValueBytes[1] := rValueBytes[2];
rValueBytes[2] := bTmp;
...