German Timer Genauigkeit

GuenterL

Member
Licensed User
Longtime User
Hallo Leute,
ich habe eine kleines Programm geschrieben, mit dem ich beliebig viele Countdowns der Reihe nach ablaufen lassen kann. Dies funktioniert auf dem DeskTop hevorragend, aber leider nicht wirklich auf dem PPC. Das Problem ist, das der Timer einfach zu ungenau ist. Nach einigen Recherchen im Forum bin ich auf die dzHW.dll gestossen, die dieses Problem möglichwerweise beheben kann (Siehe Stoppuhr von Filippo)
Aber wer kann mir erklären, wie ich diese DLL handhaben muss ?? Leider
gibts kein Help dazu.
Herzlichen Dank
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo GuenterL,

zunächst muss man ein dzHw Objekt mit New1 erzeugen.
Dann läßt sich jeweils mit GetTickCount die seit dem Einschalten des Device abgelaufene Zeit im Millisekunden auslesen.

Für einen Countdown merkt man sich die Startzeit und zieht diese immer von der aktuellen Zeit ab. Diese Differenz ist die verstrichene Zeit und muss wiederum vom Countdown abgezogen werden.

Im Anhang findest Du ein kleines Beispielprogramm mit etwas "geschätzigen" Kommentaren. :)

Anmerkung:
Der Timer ist übrigens auch auf dem Device genau, aber die über TimeParse, DateParse oder Now eingelesen Ticks werden auf dem Device nur einmal je Sekunde aktualisiert. Daher ist die Kombination aus Timer und dzHw.GetTickCount genauer, auch wenn der Begriff GetTickCount verwirrend ist, da hier Millisekunden und nicht Ticks ausgelesen werden... :BangHead:


Gruß
specci48
 

Attachments

  • GetTickCount.sbp
    2.1 KB · Views: 337
Last edited:

GuenterL

Member
Licensed User
Longtime User
Hallo specci48
Herzlichen Dank für das Beispiel und deinen Erklärungen. Klingt alles logisch, also schnell dein Programm compiliert, und auf den PDA (iPAQ H1930) gespielt.
Die Countdownzeit hatte ich auf 3 Minuten gestellt, Stoppuhr raus und los gehts. Der HP brauchte genau 3:21. ??????????
Dann den nächsten PDA geholt, (ACER n300), nochmal das Ganze und das Ergebnis war un-messbar klein. (Also supergenau)
Wir reden doch hier von der Zeit, und die sollte doch auf allen Geräten
gleich sein ????? Wieso weichen den die Ticks der Geräte so voneinander ab?
Hat irgendjemand eine Erklärung dafür ??
Guenterl
 
Top