Разное время между RTC и IDE

rtc

У меня есть время поздно в Teensy RTC, когда я пытаюсь установить время при загрузке скетча. Библиотека: RTClib.h

Линия настройки:

if (rtc.lostPower()) {
Serial.println("RTC lost power, lets set the time!");
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));

Проблема в том, что мой компьютер отображает 15:45, а Serial.print-15:12. Как я могу это исправить ?

, 👍-1

Обсуждение

`__TIME__ " - это время составления скетча, а не время запуска платы. Он был составлен в 15:12, но вы применили силу в 15:45...?, @Majenko

Я скомпилировал и сразу после этого загрузил скетч. Почему так много задержек?, @Teddol

Попробуйте Serial.println(F(__TIME__)). Это покажет вам время, которое вы попытались установить в RTC, что является идеей вашего компилятора о текущем времени, когда он выполняет компиляцию., @Edgar Bonet

Ключ здесь - " if (rtc.lostPower ()) {"- то есть, если RTC теряет мощность, то *сбросьте время до того, что было, когда вы скомпилировали скетч*. Если вы хотите установить время на *now*, то вам нужно будет включить какой-то механизм, чтобы либо запросить время откуда-то, либо позволить пользователю установить время вручную., @Majenko


1 ответ


0

Я просто удалил условие "if" и сохранил rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); Решаемая!

,