Надежные цифровые часы на Arduino UNO: просто, точно, легко собрать
Компоненты и материалы
| Arduino UNO | × | 1 |
| LCD 16x2 (белый на синем, Adafruit) | × | 1 |
| Тактильные кнопки 12 мм (SparkFun) | × | 2 |
| Беспаечная макетная плата (половинка) | × | 1 |
| Перемычки (набор) | × | 1 |
О проекте
Попробовал часы отсюда: Simple Arduino Digital Clock without RTC — обнаружил много проблем, решил улучшить.



Теперь инкремент секунд происходит ровно каждую секунду, независимо от времени выполнения loop().
РЕЗИСТОРЫ И ПОТЕНЦИОМЕТРЫ — В МУСОР, я убрал их полностью.
- Подтяжка кнопок настройки времени — используем встроенные в ATmega328P подтягивающие резисторы:
pinMode(pin, INPUT_PULLUP)— внешние резисторы не нужны. - Контрастность LCD — настраивается ШИМ-сигналом от Arduino (потенциометр не нужен).
- Подсветка LCD — тоже питается от ШИМ-вывода Arduino, что позволяет включать/выключать и регулировать яркость программно.

Короткое видео о точных часах!
Код
Простейшие часы UNO с LCD
Точные LCD-часы, минималистичная схема: без потенциометра, без резисторов, только UNO, дисплей 1602 и две кнопки.
Печатная плата и корпус
simplest_ever_uno_digital_clock_9sVAc25Brc.fzz (файл Fritzing)
Схемы


Производственный процесс
- Кукушка: история, мастерство и современная эволюция
- Песочные часы: история, ремесло и современная привлекательность
- Эволюция хронометрии: от солнечных часов к точным кварцевым часам
- Ретро-часы на индикаторах Numitron с Arduino: просто, надёжно, экономно
- Цифровые закупки: проверенный путь к успеху после пандемии
- Часы реального времени на Arduino с расчётом времени намаза
- Точные словесные часы: отображение времени в словах с точностью до минуты
- Надёжные будильник на DS1302 RTC и Arduino UNO — сборка и код
- Семь ключевых драйверов ускорения цифровой трансформации
- Авиастроительное совершенство: своевременные, точные инсайты для конкурентного преимущества