Код (C++): unsigned long a; int valh = 0; // часы int valm = 0; // минуты int vals = 0; // секунды int val = 0; void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { val = Serial.read(); // if(val=='Q') valh++; // прибавляем 1 час. if(val=='W') valm++; // прибавляем 1 минуту. if(val=='A') --valh; // убавляем 1 час. if(val=='S') --valm; } // убавляем 1 минуту. if (millis() - a > 1000) { // vals = vals +1; // прибавляем 1 сек. a = millis();} // 1 раз в сек. // часы if (vals==60) { vals = 0; valm = valm+1;} if (valm==60) { valm = 0; valh = valh+1; } if (valh==24) { valh = 0; } Serial.print(valh); Serial.print(' '); Serial.print(valm); Serial.print(' '); Serial.print(vals); Serial.println(' '); } создал больше для себя, что бы потом найти, но вы тоже можете пользоваться если хотите))) версия 1 так сказать))) в планах сделать сброс unsigned long a; еще и чтобы при этом часы не сбивались, но это позже, и если время будет, если у кого есть допилите и дайте тут код (модуля часов нет и не охота его ждать))) )
ммм.... раздел называется "Глядите, что я сделал", а пока это все выглядит "я написал бесполезный код - сделайте из него что-нибудь полезное."
без использования delay()! - хотя бы за одно это можно похвалить если серьезно - без модуля RTC ардуино не будет работать как часы. вернее будет, но не очень долго. В качестве какого-нибудь таймера для кухни сойдет, но не как настоящие часы.
unsignedlong a; сброситься в 0 (говорят через 50 суток ), чуть позже его хочу попробовать сбросить так что бы время не сбилось при этом, а кроме этого что еще будем мешать сделать часы (библиотеку в будущем надеюсь) на ардуино ? из за чего то будут отставать сек или идти вперед ?
Даже на на Wiki данного сайта есть: Простые часы на Arduino Uno Часы с кнопками Автономные часы и даже Электронный будильник Поясните смысл изобретения Вашего велосипеда?
недостаточная точность. в часах используется специальный часовой резонатор. к тому же ардуина потребляет очень много энергии, а значит должна быть постоянно подключена к сети и после отключения время сбросится. А часовые модули могут прожить пару лет на одной таблеточной батарейке.
А кто мешает? Таймер 2 в асинхронный режим от часового кварца и вперёд творить. Но не средствами ардуино.
Только это не решит проблему с возможным перебоем питания ;-) В часовом модуле главный плюс это батарейка!
Это да. Прийдётся либо безперебойник изобретать, либо внешнюю синхронизацию делать. В практическом плане модуль RTC наиболее выгоден, но для поиграться, с целью получения практических навыков программирования, можно и попробовать.
новые ардуины могут. Цепляешь часовой кварц или, что ещё лучше, TCXO - и никакой китайский RTC модуль не угонится по точности. Впрочем, TCXO можно цапануть и к старым дуринам, вот только питание должно быть не батареечным.
это программа не для полноценных часов) а для встраивания в скеч, есть еще обычные МК, они дешевле всего) если нужно питание цепляешь какое хочешь) можно и солнечные батареи подключить) скеч для использования часов в ардуино без модуля часов, в нете искал, не нашел, тут оставил, что бы если понадобиться быстро скопировать и вставить
С той, что идёт в комплекте. Я работал с синим модулем. С красным не пробовал, но отзывы о нём не лучшие.