SPLIT_BYTE_INTO_BOOLS
Einleitung
Der Funktionsblock SPLIT_BYTE_INTO_BOOLS dient dazu, ein Byte in seine einzelnen Bits zu zerlegen und diese als separate BOOL-Werte auszugeben. Dies ist besonders nützlich, wenn mit Hardware gearbeitet wird, die einzelne Bits eines Bytes auswertet oder setzt.
Schnittstellenstruktur
Ereignis-Eingänge
REQ: Startet die Ausführung des Funktionsblocks. Wird dieser Event ausgelöst, werden die Bits des aktuellen Byte-Wertes an
INausgewertet.
Ereignis-Ausgänge
CNF: Bestätigt die Ausführung des Funktionsblocks. Dieser Event wird ausgelöst, nachdem alle Bits ausgewertet und an die entsprechenden Ausgänge weitergeleitet wurden.
Daten-Eingänge
IN: Das Byte, das in seine einzelnen Bits zerlegt werden soll. Der Datentyp ist
BYTE.
Daten-Ausgänge
BIT_00 bis BIT_07: Die einzelnen Bits des Bytes, wobei
BIT_00das niederwertigste Bit (LSB) undBIT_07das höchstwertige Bit (MSB) repräsentiert. Der Datentyp aller Ausgänge istBOOL.
Adapter
Der Funktionsblock verwendet keine Adapter.
Funktionsweise
Der Funktionsblock zerlegt das eingehende Byte IN in seine 8 Bits und weist diese den entsprechenden BOOL-Ausgängen zu. Jedes Bit wird direkt aus dem Byte extrahiert und als separater BOOL-Wert ausgegeben. Die Auswertung erfolgt bei jedem REQ-Event.
Technische Besonderheiten
Die Bit-Extraktion erfolgt direkt über die Zugriffsnotation
IN.%X0bisIN.%X7, was eine effiziente und schnelle Verarbeitung ermöglicht.Der Funktionsblock ist in der Programmiersprache ST (Structured Text) implementiert.
Zustandsübersicht
Der Funktionsblock hat keine internen Zustände. Die Ausführung erfolgt direkt bei Empfang des REQ-Events, und die Ergebnisse werden sofort über den CNF-Event und die Datenausgänge bereitgestellt.
Anwendungsszenarien
Hardware-Steuerung: Bei der Ansteuerung von digitalen Ein- und Ausgängen, die als Byte organisiert sind, können einzelne Bits einfach ausgewertet werden.
Datenverarbeitung: Bei der Verarbeitung von Byte-Daten, bei denen einzelne Bits eine spezifische Bedeutung haben (z.B. Statusflags).
⚖️ Vergleich mit ähnlichen Bausteinen
Im Vergleich zu generischen Bit-Manipulationsfunktionen bietet dieser Baustein eine spezialisierte und einfache Lösung für die Zerlegung eines Bytes in Bits.
Andere Bausteine könnten komplexere Operationen wie Bit-Shifts oder Masken erfordern, während dieser Baustein die direkte Extraktion der Bits ermöglicht.
🛠️ Zugehörige Übungen
Fazit
Der SPLIT_BYTE_INTO_BOOLS-Funktionsblock ist ein einfaches und effizientes Werkzeug zur Zerlegung eines Bytes in seine einzelnen Bits. Er eignet sich besonders für Anwendungen, bei denen eine schnelle und direkte Bit-Extraktion benötigt wird. Durch seine klare Schnittstelle und einfache Funktionsweise ist er leicht in bestehende Systeme integrierbar.