Uebung_004b4c_sub_AE: Sub-Applikation für ein verriegelbares Toggle-Flip-Flop mit AE2-Adapter¶
Einleitung¶
Diese Sub-Applikation realisiert ein verriegelbares Toggle-Flip-Flop, das über einen AE2-Adapter (Socket) gesteuert und über einen AE2-Adapter (Plug) sowie einen AX-Adapter (Q) rückgemeldet werden kann. Das Flip-Flop wird durch ein eingehendes Ereignis am Eingang IND umgeschaltet (Toggle‑Funktion). Zusätzlich kann es über den AE2‑Adapter zurückgesetzt werden, was die Verriegelung darstellt. Der aktuelle Zustand des Flip‑Flops wird über den AX‑Adapter ausgegeben.
Verwendete Funktionsbausteine (FBs)¶
-
E_SR_I1– Typ:iec61499::events::E_SR
Set‑Reset‑Flipflop mit booleschem AusgangQ. Der Set‑EingangSsetztQaufTRUE, der Reset‑EingangRsetztQaufFALSE. -
E_SWITCH_I1– Typ:iec61499::events::E_SWITCH
Ereignisweiche. Ein eingehendes Ereignis am EingangEIwird abhängig vom booleschen Wert am EingangGentweder an den AusgangEO0(wennG=FALSE) oder anEO1(wennG=TRUE) weitergeleitet. -
AE2_EVENT_TO_E– Typ:adapter::conversion::bidirectional::AE2_EVENT_TO_E
Wandelt ein über den AE2-Socket empfangenes Ereignis in ein internes Ereignis um. Am AusgangCNFwird ein Ereignis ausgegeben, sobald ein Ereignis am Adapter anliegt. -
AE2_E_TO_EVENT– Typ:adapter::conversion::bidirectional::AE2_E_TO_EVENT
Wandelt ein internes Ereignis (EingangREQ) in ein über den AE2-Plug sendbares Ereignis um. Das bestätigende Ereignis erscheint am AusgangCNF. -
AX_TO_AE– Typ:adapter::conversion::unidirectional::AX_BOOL_TO_X
Konvertiert den booleschen AusgangQdes Flip‑Flops in ein AX‑Adapter‑Signal, das am PlugQausgegeben wird.
Programmablauf und Verbindungen¶
-
Ereignisannahme
Das eingehende Ereignis am EingangINDwird direkt an den EreigniseingangEIder WeicheE_SWITCH_I1weitergeleitet. -
Weichensteuerung durch Flip‑Flop‑Zustand
Der AusgangQdes Flip‑FlopsE_SR_I1ist mit dem SteuereingangGder Weiche verbunden. - Ist
Q = FALSE, schaltet die Weiche das Ereignis auf ihren AusgangEO0. -
Ist
Q = TRUE, schaltet sie aufEO1. -
Toggle‑Funktion
EO0ist mit dem Set‑EingangSdes Flip‑Flops verbunden → setztQaufTRUE.-
EO1ist mit dem Reset‑EingangRdes Flip‑Flops verbunden → setztQaufFALSE.
Dadurch toggelt das Flip‑Flop bei jedem eingehenden Ereignis. -
Einbindung des AE2‑Adapters
- Das Ereignis von
EO0wird außerdem an dieREQ-Eingänge beider Adapter‑Konverter (AE2_EVENT_TO_EundAE2_E_TO_EVENT) geleitet. - Die Konverter sind gegenseitig verschaltet:
- Der
CNF‑Ausgang vonAE2_EVENT_TO_Etriggert denREQ‑Eingang vonAE2_E_TO_EVENTund geht gleichzeitig auf den Reset‑EingangRdes Flip‑Flops. - Der
CNF‑Ausgang vonAE2_E_TO_EVENTtriggert denREQ‑Eingang vonAE2_EVENT_TO_Eund geht ebenfalls auf den Reset‑EingangRdes Flip‑Flops.
- Der
-
Diese Schleife sorgt dafür, dass jedes über den Socket ankommende Ereignis (gewandelt durch
AE2_EVENT_TO_E) das Flip‑Flop zurücksetzt und gleichzeitig ein Ereignis an den Plug gesendet wird. Dadurch kann eine externe Steuerung das Flip‑Flop verriegeln. -
Ausgabe des Zustands
Der boolesche WertQdes Flip‑Flops wird überAX_TO_AEin ein AX‑Adapter‑Signal gewandelt und am PlugQausgegeben.
Zusammenfassung¶
Die Übung vertieft den Umgang mit AE2‑Adaptern zur bidirektionalen Ereigniskommunikation und demonstriert die Realisierung eines verriegelbaren Toggle‑Flip‑Flops. Der kombinierte Einsatz von Set‑Reset‑Flipflop, Ereignisweiche und Adapter‑Konvertern zeigt, wie ereignisgesteuerte Rückkopplungen und externe Steuereingriffe modular in 4diac‑IDE umgesetzt werden können.
Lernziele:
- Verständnis der AE2‑Adapter‑Kommunikation (Socket/Plug)
- Aufbau einer Toggle‑Logik mit E_SR und E_SWITCH
- Realisierung einer Verriegelung durch zyklische Ereignisverkettung
- Einbindung von Adapter‑Konvertierungsbausteinen.