hallo zusammen,
z.B. bei oben genannten funktionen wird ein mittels INT_TO_TIME ein offset von einer zeit berechnet. dieser offset ist als int deklariert und sollte in stunden angegeben sein?!
die funktion INT_TO_TIME macht aber auf meinem system nur eine millisekunde (sollte aber eine stunde sein) daraus???
FRAGE: tritt das phänomen nur auf der easycontrol(möller) auf?
gruß Horst
nein das ist ein fehler der sich in die lib rev 24 eingeschlichen hat.
mittlerweile aber behoben ist hier der richtige code für die funktion local_time
tx := DWORD_TO_TIME(INT_TO_DWORD(ABS(time_zone_offset))* 3600000);
IF DST(utc) AND dst_enable THEN
IF time_zone_offset < 0 THEN local_time := utc - tx + T#1h; ELSE local_time := utc + tx + T#1h; END_IF;
ELSE
IF time_zone_offset < 0 THEN local_time := utc - tx; ELSE local_time := utc + tx; END_IF;
END_IF;
es bitrifft 3 funktionen die ltime, ltime_to_utc und local_time wir werden noch heute hierzu einen update bringen
danke, das ging ja flott!
tolles forum.
gruß horst
ab sofort ist im download die release 251 vorhanden.
die int to time probleme sind dort gelöst
hallo,
sorry, ich will weder stress noch unmut verbreiten aber int_to_time ist auch im "DCF77" baustein vorhanden!
Zitatrtc := utc;
IF DST AND dst_en THEN
IF time_offset < 0 THEN rtc1 := rtc - INT_TO_TIME(-time_offset) + t#1h; ELSE rtc1 := rtc + INT_TO_TIME(time_offset) + t#1h; END_IF;
ELSE
IF time_offset < 0 THEN rtc1 := rtc - INT_TO_TIME(-time_offset); ELSE rtc1 := rtc + INT_TO_TIME(time_offset); END_IF;
END_IF;
gruß Horst
sch.. da hab nicht genau genug hingesehen
in einer stunde ist es erledigt.
im download liegt die 252 welche das problem im dcf77 beseitigt
danke, funktioniert super!