Walther E. schrieb:
> Den genauen Fehler habe ich bisher nicht ausgetestet, aber bereits nach
> einer Stunde geht die Uhr um ein paar Minuten nach. Bei Bedarf kann ich
> das noch einmal genau ermitteln.
Ist ja logisch. Hier ein übertriebenes Beispiel:
1 | - Du berechnest die Zeit, kostet 100ms an CPU-Zeit
|
2 | - Du wartest 1000ms
|
3 | - Du berechnest die Zeit, kostet 100ms an CPU-Zeit
|
4 | - Du wartest 1000ms
|
5 | - Du berechnest die Zeit, kostet 100ms an CPU-Zeit
|
6 | - Du wartest 1000ms
|
Nach obigem Beispiel geht die Uhr bereits nach 10 Sekunden 1 Sekunde
nach. Ok, der Prozessor braucht weit weniger als 100ms, deshalb wird das
bei Dir nicht so krass ausfallen. Aber es fällt auf jeden Fall nach
einer Stunde auf.
Dafür benutzt man einen Hardware-Timer, der in festen Intervallen
arbeitet - und zwar unabhängig von der Rechenzeit zwischendurch.
waitms() ist dafür unbrauchbar.