
Сообщение от
Edvard_Aroyan
Да, я тоже пробовал программой, хотел сделать таким образом, что при изменении State я присваиваю переменной Confirm значение True и элемент начинает мигать. Проблема в том, что почему-то после этого Confirm ни в какую не сбрасывается в FALSE, буду благодарен, если посмотрите
IF Prev_State<>State THEN
Confirm:=TRUE;
END_IF;
Prev_State:=State;
Код:
//Обработка аварий
FOR i:= 1 TO 32 DO
IF TMP_MEC.ALA_CUR[i] THEN TMP_MEC.ALA_MEM[i]:= TRUE; END_IF //Взвод бита аварии в память
IF TMP_MEC.ALA_MEM[i] AND TMP_MEC.COM_RES THEN TMP_MEC.ALA_CON[i]:= TRUE; END_IF //Взвод бита подтверждения аварии
IF TMP_MEC.ALA_CON[i] AND NOT TMP_MEC.ALA_CUR[i] THEN
TMP_MEC.ALA_MEM[i]:= FALSE; //Сброс бита аварии из памяти при отсутствии аварии после подтверждения
TMP_MEC.ALA_CON[i]:= FALSE; //Сброс бита подтверждения аварии при отсутствии аварии после подтверждения
END_IF
END_FOR
//Обработка аварий
TMP_MEC.ALA_CUR - текущий сигнал - приравненный к аварии (хоть аналоговый, хоть дискретный)
TMP_MEC.ALA_MEM - запись аварии в память
TMP_MEC.COM_RES - команда сброса