EN und ENO in FUP
An vielen Bausteinen wie beispielsweise den Umwandlungsfunktionen oder bei Funktionen und Funktionsbausteinen ist ein Freigabeeingang EN und Freigabeausgang ENO vorhanden.
Über EN kann die Abarbeitung des Bausteins an ein Freigabesignal geknüpft werden. In dem Fall wird der Baustein nur abgearbeitet, wenn das Signal vorliegt. Ist bei EN kein Operand angegeben, erfolgt die Abarbeitung des Bausteins ebenfalls.
Nach dem Aufruf des Bausteins wird am Freigabeausgang ENO das Signal 1 geführt. Im Falle einer fehlerhaften Abarbeitung, wenn beispielsweise die übergebenen Werte nicht das richtige Format haben, wird am ENO das Signal 0 geführt.
Wurde der Baustein über EN an ein Freigabesignal geknüpft und ist dieser nicht vorhanden, führt ENO das Signal 0.
Über EN und ENO kann man insbesondere mehrere Bausteine, Funktionsbausteine oder Funktionen miteinander verketten, so dass die nachgelagerten Bausteine nur abgearbeitet werden können, wenn die Bausteine davor fehlerlos arbeiten.
Mit dem SAVE-Befehl kann der Fehlerfall auch selbst programmiert werden. So kann man z.B. beobachten, wie sich das Programm im Fehlerfall verhält. Der SAVE-Befehl speichert das aktuelle VKE ins BIE-Bit (Bit 8) im Statuswort. Im Falle einer fehlerhaften Abarbeitung eines Bausteins wird dies im BIE-Bit mit angezeigt, wodurch auch ENO das Signal 0 erhält. Liegt kein Fehler vor, erhält ENO über das BIE-Bit eine 1.
Dadurch, dass über das BIE-Bit der ENO-Ausgang gesteuert wird und mit dem SAVE-Befehl das BIE-Bit beeinflusst werden kann, kann man diesen Umstand dazu nutzen und z.B. mit dem Befehl CLR das VKE auf 0 setzen und mit dem SAVE-Befehl eine 0 im BIE-Bit erzeugen. Somit hätte man den Fehlerfall selbst produziert.
Man kann auch den anderen Fall programmieren, dass man nämlich mit dem SET-Befehl das VKE auf 1 setzt und danach den SAVE-Befehl ausführt. In dem Fall würde der ENO-Ausgang auf 1 gesetzt und die Abarbeitung der nachgelagerten Bausteine würde erfolgen.
Das Erstabfragebit /ER des Statusworts wird mit dem SAVE-Befehl nicht zurückgesetzt. Somit wäre die nächste Abfrageoperation keine Erstabfrage und das würde bedeuten, dass diese mit dem VKE verknüpft wird. Der SAVE-Befehl kann auch dazu genutzt werden, das BIE-Bit zum Zwischenspeichern des VKE zu nutzen und wiederherzustellen. Diese Methode wird jedoch nicht empfohlen, da das BIE-Bit vor dem Wiederherstellen bereits durch andere Operationen überschrieben worden sein kann.