25 Bit Zähler als DWord umwandeln

Zuviel Werbung?
-> Hier kostenlos registrieren
Die 25 Bit sind in drei Datenwörder und in einen einzelnen Bit geschrieben. Es handelt sich um eine Inkrementalklemme von Phoenix Contact. Ich muss irgendwie die drei Datenwörder und das einzelne Bit zusammemfügen das ich den Zählwert bekomme.
 
Und 25 mal Bool sind 25 Bit oder? Die 25 Bit sind in drei Wörder und in einen einzelnen Bit geladen.
Ich muss diese nur irgendwie zusammfügen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also du hast drei WORD-Variablen, in denen jeweils ein Byte des Counters enthalten ist und eine BOOL Variable mit dem Bit24 (das 25gste). Ist das korrekt?
Mal angenommen, dass die Bytes in den WORD-Variablen an Bit-Offset 0 stehen kannst du das vielleicht so realisieren:
Counter25Bit.GIF
 
Leider hat es nicht geklappt. Ich habe im Anhang mal die Aufteilung der Prozessdatenwörter.
Das Zählen beginnt in Byte 3 mit Bit 0. Ich hoffe du kannst mir weiterhelfen.
Prozessdatenworte.JPG
 
Danke es klappt. Könntest du mir bitte bei noch was helfen?
Ich hab die gleichen Prozessausgangswörter. Jetzt möchte ich einen UDINT Wert in diese schreiben.
Könntest du mir sagen wie das klappt
 
Ist doch einfach. Mit UDINT_TO_WORD bekommst du das niederwertige Wort, und mit SHR kannst das höherwertige um 16 Bit Wort nach rechts schieben und dann mit UDINT_TO_WORD wandeln.
 
Zurück
Oben