-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Description
В случае перезапуска в отсутствии интернета время задается нулём и далее не считается. Думаю взять последний сохраненный unix из памяти контроллера, но не понимаю как его задать... Функции ниже не дают ответа
// получить текущее unix время
uint32_t getUnix() {
if (_unix) {
// защита от переполнения разности через 50 суток
uint32_t diff = millis() - _lastUpd;
if (_unix && diff > 86400000ul) {
_unix += diff / 1000ul;
_lastUpd = millis() - diff % 1000ul;
}
return _unix + (millis() - _lastUpd) / 1000ul;
}
return 0;
}
// получить текущее время, указать часовой пояс в часах или минутах
FB_Time getTime(int16_t gmt) {
return FB_Time(getUnix(), gmt);
}
// проверка, синхронизировано ли время
bool timeSynced() {
return _unix;
}
Metadata
Metadata
Assignees
Labels
No labels