Здравствуйте,
Подскажите пж как правильно переставить байты в переменной тип REAL - это нужно для корректного отображения переменной на SCADA стороннего производителя,
правильно переставить байты переменной Real для SCADA
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
-
- Posts: 374
- Joined: Wed Oct 13, 2010 8:44 am
- Location: Russian Federation
Re: правильно переставить байты переменной Real для SCADA
0 <-> 3
1 <-> 2
1 <-> 2
-
- Posts: 202
- Joined: Wed Mar 19, 2008 1:12 pm
- Location: Ukraine
Re: правильно переставить байты переменной Real для SCADA
Ну, это понятно, спс, а как это сделать в SCL? Может есть какая-то стандартная функция ???
-
- Posts: 374
- Joined: Wed Oct 13, 2010 8:44 am
- Location: Russian Federation
Re: правильно переставить байты переменной Real для SCADA
Стандартной нет.
В STL есть инструкции CAW и CAD.
А на чистом SCL придётся использовать конструкцию AТ, чтобы на входной и выходной REALы наложить массивы из 4-х байт.
В STL есть инструкции CAW и CAD.
А на чистом SCL придётся использовать конструкцию AТ, чтобы на входной и выходной REALы наложить массивы из 4-х байт.
-
- Site Admin
- Posts: 1122
- Joined: Wed Sep 06, 2006 12:03 pm
- Location: CIS
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;
...