dies kann sehr konzeptionell sein, aber ich bin völlig aus Ideen zu diesem Thema. FYI Ich kodiere das in Arduino (C/C++).Guter Weg, um einen Wecker zu implementieren
Ich frage mich, was der beste Weg, um eine Alarmauslösung zu implementieren wäre.
Wie ich es jetzt habe, wandle ich die Zeit in Sekunden um und wandle die Alarmzeit in Sekunden um. Wenn die aktuelle Uhrzeit größer oder gleich der Alarmzeit ist, wird der Alarm ausgelöst.
Das funktioniert gut. Stellen Sie sich vor, ich setze die aktuelle Zeit auf 1 Uhr (3600 Sekunden) und die Weckzeit auf 2 Uhr (7200 Sekunden). Wenn die Gesamtzahl der Sekunden 7200 ist, wird der Alarm ausgelöst.
Mein Problem ist jedoch, dass wenn die aktuelle Zeit vor Mitternacht und die Alarmzeit nach Mitternacht eingestellt wird, der Alarm sofort ausgelöst wird.
In der Tat, stellen Sie sich vor, dass ich die aktuelle Zeit um 10 Uhr (ca. 70000 Sekunden) und die Weckzeit um 00:00:01 (1 Sekunde) einstellen. Die aktuelle Zeit ist größer als die Alarmzeit und wird sofort ausgelöst.
Irgendwelche Ideen, wie ich dies umgehen könnte, würden geschätzt.
Haben Sie schon etwas versucht? Fragen nach _ "Irgendwelche Ideen?" _ Klingt zu breit, um hier gefragt zu werden. Dies kann zu einer endlosen Diskussion werden, die wir hier nicht wollen. Die Seite ist eher über prägnante FAQ wie Frage-Antwort-Paare. Vielleicht möchten Sie auch [hier] (http://stackoverflow.com/help/asking) lesen. –
Nur ein Vorschlag, können Sie std :: time_t verwenden? – 7raiden7
Fügen Sie für alle Zeiten die gesamten Sekunden des aktuellen Datums und der aktuellen Uhrzeit hinzu und fügen Sie der Alarmzeit weitere 86400 Sekunden hinzu, wenn diese um eine Uhrzeit höher als die aktuelle Uhrzeit eingestellt ist. –