Überlaufbehandlung überarbeitet

This commit is contained in:
Martin Ness 2016-05-10 21:02:35 +02:00
parent babb27e5ea
commit 643778a27c

View file

@ -129,11 +129,12 @@ void sendState() {
unsigned long calcStateTime() { unsigned long calcStateTime() {
// Variablen überlauf von millis erkennen // Variablen überlauf von millis erkennen
if (millis() - stateBegan >= 0) { unsigned long current_uptime = millis();
return millis() - stateBegan; // kein überlauf
} else { if (current_uptime > stateBegan) {
return millis() + (ULONG_MAX - stateBegan); return current_uptime - stateBegan;
} }
return current_uptime + (ULONG_MAX - stateBegan);
} }
// wird nach dem Starten dauerhaft ausgeführt // wird nach dem Starten dauerhaft ausgeführt