ASSEMBLE_DWORD_FROM_WORDS¶
Einleitung¶
Der Funktionsblock ASSEMBLE_DWORD_FROM_WORDS kombiniert zwei 16-Bit-Wörter (WORD) zu einem 32-Bit-Doppelwort (DWORD). Diese Funktionalität ist besonders nützlich, wenn Daten aus zwei separaten Quellen zusammengeführt werden müssen.
Schnittstellenstruktur¶
Ereignis-Eingänge¶
REQ: Startet die Verarbeitung des Funktionsblocks. Muss mit den Daten-EingängenWORD_00undWORD_01verknüpft sein.
Ereignis-Ausgänge¶
CNF: Signalisiert die erfolgreiche Verarbeitung und Ausgabe des kombinierten DWORD.
Daten-Eingänge¶
WORD_00: Erstes 16-Bit-Wort (WORD), das in das resultierende DWORD eingefügt wird.WORD_01: Zweites 16-Bit-Wort (WORD), das in das resultierende DWORD eingefügt wird.
Daten-Ausgänge¶
- (kein Name): Das kombinierte 32-Bit-Doppelwort (DWORD), das aus den beiden Eingabewörtern besteht.
Adapter¶
Dieser Funktionsblock verwendet keine Adapter.
Funktionsweise¶
Der Funktionsblock nimmt die beiden 16-Bit-Eingabewörter (WORD_00 und WORD_01) entgegen und kombiniert sie zu einem einzigen 32-Bit-Doppelwort (DWORD). Dabei wird WORD_00 in die unteren 16 Bits und WORD_01 in die oberen 16 Bits des resultierenden DWORD platziert.
Technische Besonderheiten¶
- Die Implementierung erfolgt in Structured Text (ST).
- Der Funktionsblock ist Teil des Pakets
eclipse4diac::utils::assembling.
Zustandsübersicht¶
- Idle: Wartet auf das
REQ-Ereignis. - Processing: Verarbeitet die Eingabewörter und erzeugt das DWORD.
- Complete: Sendet das
CNF-Ereignis mit dem kombinierten DWORD.
Anwendungsszenarien¶
- Kombination von zwei 16-Bit-Sensordaten zu einem 32-Bit-Wert.
- Verarbeitung von Daten aus zwei separaten Kommunikationskanälen.
- Erweiterung von 16-Bit-Daten auf 32-Bit für weitere Verarbeitung.
⚖️ Vergleich mit ähnlichen Bausteinen¶
- Im Gegensatz zu einfachen Bit-Operationen bietet dieser Funktionsblock eine klar definierte Schnittstelle und ist in 4diac-IDE integriert.
- Ähnliche Funktionalität könnte mit Basisoperationen erreicht werden, dieser Baustein vereinfacht jedoch die Handhabung.
Fazit¶
Der ASSEMBLE_DWORD_FROM_WORDS Funktionsblock bietet eine einfache und effiziente Möglichkeit, zwei 16-Bit-Wörter zu einem 32-Bit-Doppelwort zu kombinieren. Seine klare Schnittstelle und direkte Integration in 4diac machen ihn besonders nützlich für Anwendungen, die mit der Kombination von Wortdaten arbeiten.