Hallo,
ich versuche gerade mit Hilfe des oscat Bausteins DT_DINT eine Unix Timestamp zu bekommen. Leider geht die CPU immer auf STOP, wenn ich das tue.
Ich habe die notwendigen Bausteine auf die S7-312C geladen: DT_DINT aus oscat, DT_DATE und DT_TOD aus der IEC Baustein-Bibliothek.
Ich habe in STL eine Function mit den beiden temporären Variablen #result (INT) und #dtTemp (DATE_AND_TIME) erstellt.
Der Code in der Funktion sieht so aus:
CALL "READ_CLK"
RET_VAL:=#result
CDT :=#dtTemp
CALL "DT_DINT"
DATI :=#dtTemp
RET_VAL:=DB70.DBD9
Leider geht immer die "SF"-Lampe an der CPU an, wenn der CALL "DT_INT" ausgeführt wird.
Ich stehe im Moment auf dem Schlauch, ich weiss nicht was ich falsch mache.
Für Eure Hilfe wäre ich dankbar,
Carsten
ich versuche gerade mit Hilfe des oscat Bausteins DT_DINT eine Unix Timestamp zu bekommen. Leider geht die CPU immer auf STOP, wenn ich das tue.
Ich habe die notwendigen Bausteine auf die S7-312C geladen: DT_DINT aus oscat, DT_DATE und DT_TOD aus der IEC Baustein-Bibliothek.
Ich habe in STL eine Function mit den beiden temporären Variablen #result (INT) und #dtTemp (DATE_AND_TIME) erstellt.
Der Code in der Funktion sieht so aus:
CALL "READ_CLK"
RET_VAL:=#result
CDT :=#dtTemp
CALL "DT_DINT"
DATI :=#dtTemp
RET_VAL:=DB70.DBD9
Leider geht immer die "SF"-Lampe an der CPU an, wenn der CALL "DT_INT" ausgeführt wird.
Ich stehe im Moment auf dem Schlauch, ich weiss nicht was ich falsch mache.
Für Eure Hilfe wäre ich dankbar,
Carsten