В процессе освоения микроконтроллеров помигать светодиодом будет больно недостаточно. Современные сложные цифровые комплексы содержат множество внешних периферийных узлов, которыми управляет ведущее устройство – будь то микроконтроллер или программируемая логическая интегральная схема (ПЛИС). Среди таких периферийных устройство немаловажную роль играет система измерения и отсчета временных интервалов. Вести лог событий оператора, где, когда и во сколько времени он совершил какие-либо действия – помогают цифровые электронные схемы отсчета времени.
В данной статье, ориентированных, в первую очередь для начинающих, я хотел бы предоставить конструкцию часов/календаря, основанную на интегральной схемы часов реального времени DS1305, управление, обработку и вывод данных на дисплей я предоставил микроконтроллеру ATTiny2313 – его будет вполне достаточно для нашей цели.
Полистав даташиты на интегральную схему часов реального времени, микроконтроллер и дисплей, нарисовал принципиальную схему, которую вы можете увидеть ниже. Я использовал всего 3 кнопки для занесения первоначальных данных в дисплей. Можно, конечно же, обойтись и меньшим количеством, но меня ничуть это не беспокоило, поскольку в моей конструкции у микроконтроллера еще оставались линии данных.
Я предусмотрел возможность использования моего устройства не в виде отладочного средства, а в виде конечного устройства, которое может использоваться и как таймер. Для этого я предусмотрел на печатной плате линии для подключения прерываний.
Сборка устройства не представляет из себя что-то сверхъестественное, односторонняя печатная плата под размер дисплея, DS1305 «урезан» для SMD монтажа, все остальные компоненты SMD.
После травления получилась вот такая плата:
После изготовления печатной платы необходимо ее залудить – это придаст более эстетический вид и защитит проводники от скоротечного разрушения проводников.
После этого я припаял электронные комплектующие, причем отрихтовав предварительно выводы DS1305.
Получилась вот такая вот конструкция:
После изготовления аппаратной части устройства, подходим к программированию. Я писал на С в среде программирования WinAVR.
Для установки времени/даты используется конфигурация последовательности нажатий кнопок. Приведу их в таблице:
После нажатия кнопки Settings мы переходим в меню установок.
1) Установка числа месяца |
Выключается синхронизация часов, кнопками + или – выбираем нужное число месяца |
2) Установка месяца |
То же самое, выбираем месяц |
3) Установка года |
Выбираем нужный год |
4) Установка часов |
Выбираем количество часов |
5) Установка минут |
Выбираем количество минут |
6) Установка секунд |
Выбираем количество секунд, включается синхронизация часов |
Все подтверждения операций осуществляется кнопкой Settings.
Приведу пример видео, где покажу, как пользоваться настройкой времени.
Скачать исходник, прошивку и печатную плату в формате LAY вы можете ниже
Евгений Ильин (Arlleex) E-Mail: StalkerElectronics@mail.ru
- ds1305.rar (39 Кб)
Комментарии (6) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация