-> Hier kostenlos registrieren
Hallo zusammen,
ich bin absoluter Anfänger in Sachen SPS.
Ziel ist es, einen Messwert in ein Real zu wandeln.
Der Messwert kommt wie folgt an (PED 1024):
Byte 0:
Bit 7: 0=Fehler ; 1=Messwert gültig
Bit 6..3 =Fehlercode
Bit 2..0 = Anzahl der Nachkommastellen (0=1, 1=0.1, 2=0.01,...)
Byte 1..3 (=Messwert)
24 Bit Integerwert im 2er Komplement beginnend mit höherwertigem Byte
Meine Fragen sind nun diese:
1) Um z.B. die Operation DTR (Umwandlung einer Ganzzahl) zu nutzen muss ich ja ein Byte mit Nullen oder Einsen auffüllen je nach dem, was das Vorzeichenbit sagt, wie löst man das elegant?.
2) ist das Vorgehen unten im Ansatz korrekt?
L PED 1024
[Erstes Byte durch 0en oder 1en ersetzen, je nach Vorzeichenbit]
DTR
L [Info über Nachkommastellen]
/R
T [Transferieren, wohin auch immer]
Viele Grüße und Danke im Voraus,
Dominik
ich bin absoluter Anfänger in Sachen SPS.
Ziel ist es, einen Messwert in ein Real zu wandeln.
Der Messwert kommt wie folgt an (PED 1024):
Byte 0:
Bit 7: 0=Fehler ; 1=Messwert gültig
Bit 6..3 =Fehlercode
Bit 2..0 = Anzahl der Nachkommastellen (0=1, 1=0.1, 2=0.01,...)
Byte 1..3 (=Messwert)
24 Bit Integerwert im 2er Komplement beginnend mit höherwertigem Byte
Meine Fragen sind nun diese:
1) Um z.B. die Operation DTR (Umwandlung einer Ganzzahl) zu nutzen muss ich ja ein Byte mit Nullen oder Einsen auffüllen je nach dem, was das Vorzeichenbit sagt, wie löst man das elegant?.
2) ist das Vorgehen unten im Ansatz korrekt?
L PED 1024
[Erstes Byte durch 0en oder 1en ersetzen, je nach Vorzeichenbit]
DTR
L [Info über Nachkommastellen]
/R
T [Transferieren, wohin auch immer]
Viele Grüße und Danke im Voraus,
Dominik