Я совсем запутался в приеме значений REAL с МВ110-8А, я опрашиваю модуль через библиотеку ModulsOwenLib, из него получаем значение в REAL, что требуется сделать дальше? В примере на форуме не смог до конца разобраться.
Я совсем запутался в приеме значений REAL с МВ110-8А, я опрашиваю модуль через библиотеку ModulsOwenLib, из него получаем значение в REAL, что требуется сделать дальше? В примере на форуме не смог до конца разобраться.
Делите два ворда на байты и лепите из них четыре комбинации и через указатель впревращаете в реал, обычно начинают с "зеркальной" комбинации
Я не понимаю, от избытка инофрмации у меня каша в голове, у меня есть REAL, что с ним дальше делать, объясните на пальцах пож-та.
тогда считывайте в формате WORD.
Там ничего делать не нужно, только в конфигураторе укажите количество знаков после запятой.
В конфигураторе непосредственно модуля?
есди на пальцах разжевать, то сперва свой неправильный реал через указатель превращаете в дворд, из него с помощью shr/shl и маски получаются либо два ворда либо четыре байта, перемешав их местами собираете обратно и скармливаете указателю на реал,потом получаете нужно значение
Можете привести конткретный пример с комментариями?)
Нет,я в пути,в руках только телефон
Открываем проект- вызываем справку, операторы и функции МЭК- операторы сдвига.
VAR
A,A1: DWORD;
B,D1: REAL;
END_VAR
A:=REAL_TO_DWORD(B);
A1:=ROR(A,16);
D1:=DWORD_TO_REAL(A1);
похожий пример есть на форуме по этой ссылке
http://www.owen.ru/forum/showthread....028#post138028