Step 7 S7 Microwin - READ_RCT umwandeln

dude76

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Community,

ich hoffe ihr könnt mir bei einem kleinen Problem helfen.
Ich versuche gerade mit meiner S7215-2 DP (6ES7 215-2BD00-0XB0) via Microwin (V4.0.0.81) das ausgegebene Format des Uhrbausteins (READ_RCT) auf ein dezimales Byte umzuwandeln und scheitere kläglich :(
READ_RCT schreibt in Hex in ein Word, ich habe keinen (meiner Meinung nach) sinnvollen Baustein gefunden welcher mir in Dezimal/Byte umwandelt.

Ich wäre über eure Hilfe dankbar.
THX und LG,

Markus
 
Zuletzt bearbeitet:
READ_RCT schreibt in Hex in ein Word, ich habe keinen (meiner Meinung nach) sinnvollen Baustein gefunden welcher mir in Dezimal/Byte umwandelt.
Die Anweisung heißt READ_RTC und schreibt in einen 8 Byte langen Puffer. Die einzelnen Datums-/Uhrzeit-Bestandteile werden jeweils in ein Byte im BCD-Format abgelegt. BCD-zu-Dezimal umwandeln kann man mit der Anweisung BCD_I. Siehe jeweils die Hilfe zu den Anweisungen: Anweisung markieren und F1 drücken

Beispiel:
Code:
LD     SM0.0       //Immer_ein
TODR   VB100       //READ_RTC in VB100...VB107
MOVB   VB100, AC0  //Jahr im BCD-Format
MOVW   AC0, VW110
BCDI   VW110       //Jahr dezimal als INT in ein Word speichern
...
MOVB   VB101, AC0  //Monat im BCD-Format
BCDI   AC0         //Monat dezimal als INT
MOVB   AC0, VB112  //Monat dezimal in ein Byte speichern
...

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank Harald,

OMG bin ich doof - Hilfe Datei hatte ich schon 3x gelesen...wollte aber leider auf das MW50 schreiben was natürlich nicht funktioniert (max MW30 bei der 215...ich weiß, erst Anleitung lesen ;)).
Und außerdem ist deine AWL Variante viel schlanker ;) Auf jeden Fall funktioniert jetzt alles, ich hoffe ich darf mich beim nächsten Problem wieder melden.

THX und LG, Markus
 
Und außerdem ist deine AWL Variante viel schlanker ;)
Den AWL-Code kannst Du die Ansicht nach FUP und KOP umstellen. Ich habe es nur in AWL gepostet weil das viel einfacher zu posten ist als FUP/KOP-Code.

Auf jeden Fall funktioniert jetzt alles, ich hoffe ich darf mich beim nächsten Problem wieder melden.
Na klar, dafür gibt es ja unser Forum.

Harald
 
Zurück
Oben