if тут ни при чем. Какие часы и какая библиотека используется? В примерах к библиотеке должны быть вызовы.
Это хорошо. Осталось выяснить, при чём тут if. Вы вот тут смотрели? http://wiki.amperka.ru/время:rtc-индикатор
да. У меня та же микросхемка, но мне надо не выводить значение на дисплэй, а узнавать сколько сейчас времени, если 12:00:00, то включать помпу.
Ещё раз: это смотрели? http://wiki.amperka.ru/время:rtc-индикатор Там всё есть. Не надо выводить на дисплей - не выводите, просто работайте с переменными времени. Вот, с то страницы: Код (C++): clock.getTime(); clock.hour clock.minute и т.д.
Ок, ещё раз: дайте ссылку на библиотеку, которую используете, и я вам покажу, что там всё написано, раз сами даже напрячься не желаете. Но - в последний раз, больше от меня ответов не будет, ибо не вижу у вас желания самостоятельно разобраться.
Вопрос поставлен так, что вызывает еще больше вопросов. Варианты для голосования вообще непонятно зачем и о чем. Желания вникнуть нет. Вывод: пишите сюда и вам обязательно помогут.
Вот это, извините - хрен собачий, или функции для работы со временем? Код (C++): uint8_t getSecond() const { return _second; } uint8_t getMinute() const { return _minute; } uint8_t getHour() const { return _hour; } uint8_t getDOW() const { return _dayOfWeek; } uint8_t getDay() const { return _day; } uint8_t getMonth() const { return _month; } uint16_t getYear() const { return _year; }
Вам нужно с помощью той библиотеки что вы используете запрашивать у модуля в цикле который сейчас час и записывать этот час в переменную, а затем эту переменную сравнивать с нужным вам значением Например записали час в переменную hTime Код (C++): hTime = (tm.Hour); Код (C++): if(hTime>22||hTime<7) { // выполняем действие с 23 вечера до 6 утра } Нужны минуты , сделайте ещё переменную с минутами и далее по аналогии...
Вот мой код включающий и выключающий освещение в аквариуме Выносим в функцию расчёт того включёна или выключена подсветка Код (C++): bool IsActiveRelay(){ //return ((clock.getHour() >= 13 && clock.getHour() <= 16) || (clock.getHour() >= 20 && clock.getHour() <= 23)); return (clock.getHour() >= 8 && clock.getHour() <= 23); } в методе loop делаем вызов и действие Код (C++): if (!isActiveRelay && IsActiveRelay()){ // Включаем реле digitalWrite(RELAY_PIN, HIGH); isActiveRelay = 1; //Serial.println("включили реле"); } if (isActiveRelay && !IsActiveRelay()){ //выключаем реле digitalWrite(RELAY_PIN, LOW); isActiveRelay = 0; //Serial.println("выключили реле"); } ну а как выводить на ваш экран я не в курсе. Сами разберитесь. Это же интереснее!
Люди разные) Кому-то интересно. А кому-то просто нужна работающая железка, да еще чтоб можно было сказать, что сам сделал)