
Сообщение от
goldenlife
Даже если соблюсти весь синтаксис, то Codesys 2.3 пишет что:
1. Ошибка 4001 - Идентификатор SYSMEMCMP не определён.
2. Ошибка 4250 - Требуется "ST" - выражение или окончание POU.
Надо добавить биб-ку SisLibMem.lib и работать будет только в живом ПЛК, в эмуляции не работает,
в работе измените любую переменную массива на 0.
Код:
var
x, check_x: array[1..10] of real := 10(15.3); (* массив основной и копия, 10 переменных массива равны 15,3 *)
w, check_w: array[1..9] of word := 9(45); (* массив основной и копия, 9 переменных массива равны 45 *)
control : bool;
end_var
--------
control :=NOT (SysMemCmp(ADR(x),ADR(check_x),SIZEOF(x))=0 AND SysMemCmp(ADR(w),ADR(check_w),SIZEOF(w))=0) ;