Часы на микроконтроллере 80с51

Электронные часы на микроконтроллере 80с51
(В этой короткой статье описывается конструкция простейших часов на микроконтроллере, с функцией независимого хранения времени, построенного на отдельной микросхеме)

Очень много лет никак не мог выложить материал по этим часам. Писать статью в полном объёме не представляется возможным из-за отсутствия времени. Поэтому выкладывается всё в форме как есть. А именно — схемы в формате PCAD, исходники программ для работы (можете смело экспериментировать, дописывать своё и т.п.) и фотографии того, что в итоге получилось. У меня в квартире работает три экземпляра таких часов (по одному в каждой комнате), на протяжении почти 9 лет никаких нареканий не замечено.
Итак внешний вид часов представлен на фотографии ниже.

cl_big

Особенность работы этих часов полностью статическая индикация. Каждый 16-сегментный индикатор (можно естественно использовать 8 сегментный, был поставлен тот, который был в наличии) соединен с регистром, в котором защелкивается число, необходимое для отображения. В момент изменения времени — происходит перезапсиь регистра. За счёт этого было достигнуто ПОЛНОЕ отсутствие неприятнейшего мерцания чисел. Кому интересно, могу сказать, что надо это было сделать для того, что эти часы были когда-то составной частью лабораторного стенда на движущейся платформе, и, чтобы было возможно читать показания индикаторов пришлось полностью отказаться от динамической индикации. Индикаторы фирмы KingBright PSA08-11EWA, микроконтроллер фирмы Atmel 89с52-24PI. Микросхема часов фирмы Dallas Semiconductor DS1302. Кварцевый резонатор микроконтроллера использован на частоту 12 мГц, а для микросхемы часов стандартный 32768 кГц. Для часов потребуются ещё 4 тактовые кнопки и один транзистор BC847 (или аналогичный), для управления миганием секундной точки. Естественно ещё потребуется держатель для 3-х вольтовой батарейки микросхемы часов (такие ставят на материнских платах компьютеров. Схемы, исходники, печатные платы в формате PCAD качайте вот clock.
Программа для микроконтроллера писалась в интегрированной среде «Франклин» (или PROVIEW), скачать её можно вот по этой ссылке. На данный момент времени она очень сильно устарела, поэтому распространяется свободно.
Программирование контроллера осуществлялось в стандартном программаторе для LPT порта, которая была взята с сайта фирмы Atmel (http://www.atmel.com), сейчас ссылка находится где-то глубоко в архивной части этого сайта.
Если кого-то данное изделие заинтересовало, рекомендую попробовать собрать его с другими индикаторами (другого размера, цвета и т.п.) — сейчас их появилось превеликое множество. В моих часах — они красно-оранжевого цвета, предполагалось, что будут раздражать своим светом «в ночи», но оказалось самое оно. Плюс, после доработки программы, можно приспособить их для управления нагрузками аквариума или какой-либо другой техники. Свободных выводов на микроконтроллере осталось довольно много.
У кого нет микросхемы DS1302, можно собрать часы без неё, но для этого надо будет подкорректировать программу, чтобы не происходил опрос микросхемы часов каждые 24 часа.
сентябрь, 2011 г
Чубаров И.Ю. (Krolik) (ivder99@bmstu.ru)

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>