Давно хотел себе сделать большие цифровые часы которые можно было как поставить на стол так и повесить на стену и их было бы хорошо видно, как ночью так и днём при ярком свете солнца. К сожалению большие семисегментные индикаторы очень дорого стоят, да и не такие они большие как хотелось бы и для своих цифровых часов я решил применить обычную светодиодную ленту на белых сверхярких светодиодах, что гораздо выходит дешевле чем покупать готовые семисегментные индикаторы и при этом размеры часов можно делать разными, хоть и на всю стену и яркость у них очень хорошая, у меня мои часы когда были готовы осветили всю комнату, пришлось даже добавить регулятор яркости.
Что нужно для проекта больших цифровых часов:
- Светодиодная лента белого свечения на 12В;
- Вспененный ПВХ пластик толщиной 5 мм;
- Arduino Nano;
- Модуль часов реального времени на базе микросхемы DS1302;
- Микросхема CD4026BE – 4 шт.;
- Транзистор S8050 – 30 шт;
- Повышающий DC-DC модуль.
Как сделать настенные цифровые часы из светодиодной ленты, процесс изготовления:
Корпус для часов я делал из вспененного ПВХ пластика толщиной 5 мм, он хорошо режется и обрабатывается, на отрезанный кусок пластика я приклеил отрезки светодиодной ленты в виде цифр, то есть четыре восьмёрки, а также двоеточие и ещё отдельную точку для даты.
Каждый из сегментов у меня имеет по 6 светодиодов, а размер одного символа составил 12х6,5 см. Полностью весь дисплей с 4-мя символами у меня получился 40х16,5 см.
Аноды всех сегментов я подпаял к общей шине (здесь она плюсовая), а катод каждого из сегментов вывел к отдельному контакту разъёма, всего таких контактов 31 штука. Нашёл разъём на 33 вывода и один контакт я не использовал, а на последний продублировал плюсовой потенциал. Далее подпаял тонкими проводами к нему от символов дисплея.
Для управления всех этих часов я использовал Arduino Nano. Так как напрямую к ней индикаторы подключить не получиться, у Ардуино нет столько выводов и напряжение для светодиодов требуется 12В то буду дополнительно использовать микросхемы CD4026BE, поэтому вместо 8 выводов для управления каждого семисегментного индикатора понадобится всего 2, один контакт повышает значение на единицу, а второй сбрасывает счётчик на ноль.
Но так как ток который может выдавать на своих выводах микросхема CD4026BE очень незначительный то придётся применять дополнительно транзисторные ключи, в качестве них я выбрал транзисторы S8050.
В Ардуино нет часов реального времени поэтому нам ещё понадобится модуль часов реального времени RTC DS1302.
Для часов я разработал отдельную печатную плату на которой размещаются все элементы и модули, скачать печатную плату электронных цифровых часов можно по ссылке в конце статьи.
Управлять часами можно с помощью 4-х кнопок которые подключены к Ардуине двумя проводами, какая кнопка в данный момент нажата микроконтроллер вычисляет по сопротивлению, для каждой кнопки оно своё и задаётся стоящими возле них резисторами.
Управление происходит по такому алгоритму нажатий на кнопки:
Нажатие на кнопку «ОК» отобразит текущую дату и через несколько секунд вернётся в режим часов:
Также я сделал управление яркостью, так как в тёмное время суток часы могут даже освещать комнату и иногда смотреть на них довольно некомфортно для глаз, здесь на фото часы при минимальной яркости:
А здесь включен на полную яркость, видно как комната освещается всего лишь одними часами:
В итоге у меня получились достаточно удачные большие цифровые часы на Arduino с возможностью доработки и увеличения цифр до практически любых размеров, они отображают часы и при нажатии ещё и дату. Скетч для Ардуино, схему и печатную плату можно скачать по этой ссылке.