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