А в чем разница для таймера, от куда его вызвали?
Откуда — не имеет значения. Важно, вызываете ли вы его вообще. Можно сколько угодно менять входные переменные функционального блока, но пока вы его не вызовете, значения выходов не изменятся. То есть:
Код:
timer.IN := FALSE; (* Ничего не изменится *)
timer(IN := FALSE); (* Таймер обработает FALSE, если было TRUE *)
А второй таймер при данных условиях у вас не вызывается ниоткуда совсем.