Конструктор часы будильник at89c2051

Обновлено: 16.05.2024

Схема самодельных часов-будильника для установки в приборную панель автомобиля. Устройство питаются от автомобильного аккумулятора. Однако, они с таким же успехом могут использоваться и дома.

В этом случае просто отсутствует подсветка дисплея, а питание осуществляется от любого сетевого адаптера, дающего напряжение не ниже 6V. Ток потребления, не считая тока подсветки, всего 5-7мА.

Для автомобилиста данные часы будут интересны тем, что позволяют в течении одного дня установить несколько значений времени, в которое должен прозвучать сигнал.

Это поможет «дальнобойщику» правильно дозировать отдых и работу, избегая переутомления и достигая наибольшей работоспособности и безопасности движения, исходя из индивидуальных качеств водителя.

Принципиальная схема

В основе прибора - микросхема DS1307 (Л.1), представляющая собой часы реального времени. Данная микросхема «общается с внешним миром» посредством стандартной шины І2С.

Задача контроллера D1 состоит не в отсчете времени, а в обеспечении взаимодействия D2 с такими устройствами как плата жидкокристаллического дисплея, кнопки -органы управления, звуковой сигнализатор.

Рис. 1. Принципиальная схема часов-будильника на АТ89С2051 и DS1307.

Поэтому, на сам отсчет времени контроллер влияния не оказывает. Это позволяет, например, вместо показанного на схеме резонатора Q1 на 6 МГц использовать другой резонатор, на меньшую частоту, например, резонатор от видеотехники на 4,43 МГц. Просто реакция меню будет медленнее.

Микросхема D1 питается от резервного гальванического источника напряжением ЗV. В идеале, это должна быть литиевая батарея, но можно использовать, например, два дисковых элемента питания от микрокалькулятора. Ток потребления - микроамперы, поэтому энергии хватает на очень долго.

Акустическая сигнализация посредством миниатюрного активного звукоизлучателя В1 типа НРА24АХ. Можно использовать любой другой активный звукоизлучатель (со встроенным генератором) на напряжение питание 4-6V. Если излучатель будет на 12V, -подключите R7 не к выходу стабилизатора А1, а к его входу.

Детали и конструкция

Схема питается напряжением 5V, получаемым с выхода стабилизатора А1. Диод VD1 защищает часы от неправильного подключения к электросхеме автомобиля. Такую же функцию несет и VD2.

В жидкокристаллическом дисплее имеется подсветка, необходимость в которой возникает только в темное время суток. То есть, тогда когда вы включаете фары.

Поэтому, цепь подсветки питается от цепи питания габаритных огней автомобиля через диод VD2 и токоограничительный резистор R8. Подобрав его сопротивление можно выбрать оптимальную подсветку.

Точность хода часов зависит от точности частоты тактового генератора D1, стабилизированного кварцевым резонатором Q2. Добиться наибольшей точности можно подстройкой С7. Контрастность дисплея регулируется подстроечным резистором R9.

Управление часами интуитивно схоже с управлением сотовым телефоном. У вас на экране название и два варианта выбора, нужный вариант вы выбираете нажимая кнопку расположенную ниже дисплея, под его надписью.

То есть, значение кнопок постоянно меняется, согласно надписям на дисплее. Конструктивно, кнопки S1 и S2 расположены под дисплеем, - слева S2, справа S1. В общем, разобраться очень легко и особых пояснений не требуется.

Часы были собраны на макетной печатной плате, поэтому разводка платы для них не разрабатывалась. Дисплей и кнопки управления расположены на приборной панели автомобиля, на месте пластмассовой заглушки. А плата расположена глубже, в более удобном месте.

Дисплей связан с платой ленточным кабелем, а для кнопок проложены отдельные провода.

В микроконтроллер необходимо ввести управляющую программу, распечатку НЕХ-файла можно скачать ниже.


1.JPG" />


Здравствуйте. На днях подошли еще одни часы- конструктор, тут уже поддерживается батарейка для резервного питания, а вот функции будильника нет. Я сравниваю часами — конструктором, обозреваемых мной ранее. Циферки здесь поменьше, но зато есть индикация секунд
Как всегда детали в полиэтиленовом пакете, лишних нет, но все в наличии.

Прилагается принципиальная схема.

Но инструкций не нужно. На плате расписано все — номиналы, вид, ориентация детали. Просто садишься и паяешь.

Правда есть подводные камни. Это необходимость впаивать три перемычки, которые нужно сделать самому, хотя их можно припаять потом с обратной стороны. Транзисторы, их семь штук, все в одинаковом корпусе, но один из них стабилизатор 78L05, остальные 8550, чуть было не впаял 78L05 на место 8550 ( думал все 8550).

Лед дисплеи должны выступать над всеми деталями, светодиоды должны быть припаяны на одном уровне с дисплеями. Это важно, если требуется замаскировать часы под самоклеющуюся пленку или матовое стекло например.
Я конечно это не сделал. Но и маскировать я их не собираюсь, люблю «скелетоны»

Управляются часы одной кнопкой, короткое нажатие на которую гасит и зажигает цифры. Что интересно цифры то гаснут, а диоды продолжают гореть. Длительное нажатие приводит к установке, часов, минут при этом секунды останавливаются.

Характеристики


Features:
1.Working voltage:DC6-12V
2.Recommend voltage:DC5V
3.Recommend battery:CR2032 (3V)
4.Working current:35mA
5.Standby current:1.2mA
Здесь имеется некоторая путаница с вольтажом. В заголовке написано 9-12 вольт, в характеристиках 6- 12 вольт, а в конце вообще рекомендуемый вольтаж стал 5 вольт.
Проверил часы на разных напряжениях и вот что оказалось. Изменение напряжение влияло только на яркость красных индикаторных светодиодов. Напряжение 9-12 вольт они горят ярко. Как только напряжение опускается до 7 вольт диоды становятся тусклыми, а при 5 вольтах еле тлеют. Причем сами часы на эту смену напряжения никак не реагируют. И только при напряжении 4 вольта часы отключаются. Так что ближе к истине рабочее напряжение 6-12 вольт.
Для питания использовал адаптер на 4,2 вольта с DC-DC 3V to 5-9V 1A Boost конвертером

подняв напряжение на выходе до 9 вольт.


Свое творение подвесил на скрепки к лампе

Часы спешат где то на 1 — 2 секунды за сутки. Но и подводить их просто, нажимаешь на кнопку, останавливаешь секунды и отпускаешь кнопку когда секунды сравниваются с точным временем


57.JPG" />

Данные часы уже несколько раз обозревались, но я надеюсь, что мой обзор будет тоже Вам интересным. Добавил описание работы и инструкцию.


Доставка заняла около 3х недель, набор пришел в обычном полиэтиленовом пакетике, который в свою очередь был упакован в небольшой «пупырчатый» пакет. На выводах индикатора был небольшой кусочек пенопласта, остальные детали были без какой либо защиты.

Из документации только небольшой листочек формата А5 со списком радиодеталей с одной стороны и принципиальной электрической схемой с другой.

1. Принципиальная электрическая схема, используемые детали и принцип работы

Узел начального сброса служит для установки внутренних регистров микроконтроллера в начальное состояние. Он служит для подачи после подключения питания на 1 вывод МК единичного импульса длительностью не менее 1 мкс (12 периодов тактовой частоты).
Состоит из RC цепочки, образуемой резистором R1 и конденсатором C1.

Схема ввода состоит из кнопок S1 и S2. Программно сделано так, что при одиночном нажатии любой из кнопок в динамике раздается одиночный сигнал, а при удержании двойной.


Модуль индикации собран на четырехразрядном семисегментном индикаторе с общим катодом DS1 и резистивной сборке PR1.
Резистивная сборка представляет собой набор резисторов в одном корпусе:

Звуковая часть схемы представляет собой схему собранную на резисторе R2 10кОм, pnp транзисторе Q1 SS8550(выполняющего роль усилителя) и пьезоэлемента LS1.

Питание подается через разъем J1 с подключенным параллельно сглаживающим конденсатором C4. Диапазон питающих напряжений от 3 до 6В.

2. Сборка конструктора


Я начал с панельки, так как она единственная не является радиодеталью:

Следующим шагом я припаял резисторы. Перепутать их невозможно, они оба на 10кОм:

После этого установил на плату соблюдая полярность электролитический конденсатор, резисторную сборку (также обращая внимание на первый вывод) и элементы тактового генератора — 2 конденсатора и кварцевый резонатор


Следующим шагом припаиваю кнопки и конденсатор фильтра питания:


После этого очередь за звуковым пьезоэлементом и транзистором. В транзисторе главное установить правильной стороной и не перепутать выводы:


В последнюю очередь припаиваю индикатор и разъем питания:


Подключаю к источнику напряжением 5В. Все работает.

3. Установка текущего времени, будильников и ежечасового сигнала.


После включения питания дисплей находится в режиме («ЧАСЫ: МИНУТЫ») и отображает время по умолчанию 12:59. Ежечасный звуковой сигнал включен. Оба будильника включены. Первый установлен на время срабатывания 13:01, а второй – 13:02.

При каждом кратковременном нажатии на кнопку S2 дисплей будет переключаться между режимами («ЧАСЫ: МИНУТЫ») и («МИНУТЫ: СЕКУНДЫ»).
При длительном нажатии кнопки S1 происходит вход в меню настроек, состоящее из 9 подменю, обозначенных буквами A, B, C, D, E, F, G, H, I. Подменю переключаются кнопкой S1, значения изменяются кнопкой S2. После подменю I следует выход из меню настроек.


А: Установка показаний часов текущего времени
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю B.


B: Установка показаний минут текущего времени
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для перехода в подменю С.


C: Включение ежечасного звукового сигнала
По умолчанию включено (ON) – каждый час с 8:00 до 20:00 подается звуковой сигнал. При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в подменю D.


D: Включение\выключение первого будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю E и F пропускаются.


E: Установка показаний часов первого будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю F.


F: Установка показаний минут первого будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для перехода в подменю С.


G: Включение\выключение второго будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю H и I пропускаются и происходит выход из меню настроек.


H: Установка показаний часов второго будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю I.


I: Установка показаний минут второго будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для выхода из меню настроек.


Коррекция секунд
В режиме («МИНУТЫ: СЕКУНДЫ») необходимо удержать кнопку S2 для обнуления секунд. Далее коротким нажатием на кнопку S2 запустить отсчет секунд.

4. Общие впечатления от часов.

Плюсы:
+ Низкая цена
+ Легкая сборка, минимум деталей
+ Удовольствие от самостоятельной сборки
+ Достаточно низкая погрешность (у меня за сутки отстали на несколько секунд)

Минусы:
— После отключения питания не держит время
— Отсутствие какой либо документации, кроме схемы (данная статья частично решила этот минус)
— Прошивка в микроконтроллере защищена от считывания

5. Дополнительно:


2) Проблему аварийного питания при отключении электроэнергии можно решить при помощи батарейки на 3В и двух диодов:

Узел начального сброса служит для установки внутренних регистров микроконтроллера в начальное состояние. Он служит для подачи после подключения питания на 1 вывод микроконтроллера единичного импульса длительностью не менее 1 мкс (12 периодов тактовой частоты).
Состоит из RC цепочки, образуемой резистором R1 и конденсатором C1.

Схема ввода состоит из кнопок S1 и S2. Программно сделано так, что при одиночном нажатии любой из кнопок в динамике раздается одиночный сигнал, а при удержании двойной.
Модуль индикации собран на четырехразрядном семисегментном индикаторе с общим катодом DS1 и резистивной сборке PR1.

После включения питания дисплей находится в режиме («ЧАСЫ: МИНУТЫ») и отображает время по умолчанию 12:59. Ежечасный звуковой сигнал включен. Оба будильника включены. Первый установлен на время срабатывания 13:01, а второй – 13:02.

Установка текущего времени, будильников и ежечасового сигнала.

При каждом кратковременном нажатии на кнопку S2 дисплей будет переключаться между режимами («ЧАСЫ: МИНУТЫ») и («МИНУТЫ: СЕКУНДЫ»).
При длительном нажатии кнопки S1 происходит вход в меню настроек, состоящее из 9 подменю, обозначенных буквами A, B, C, D, E, F, G, H, I. Подменю переключаются кнопкой S1, значения изменяются кнопкой S2. После подменю I следует выход из меню настроек.

А: Установка показаний часов текущего времени
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю B.

B: Установка показаний минут текущего времени
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для перехода в подменю С.

C: Включение ежечасного звукового сигнала
По умолчанию включено (ON) – каждый час с 8:00 до 20:00 подается звуковой сигнал. При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в подменю D.

D: Включениевыключение первого будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю E и F пропускаются.

E: Установка показаний часов первого будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю F.

F: Установка показаний минут первого будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для перехода в подменю С.

G: Включениевыключение второго будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю H и I пропускаются и происходит выход из меню настроек.

H: Установка показаний часов второго будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю I.

I: Установка показаний минут второго будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для выхода из меню настроек.

Коррекция секунд
В режиме («МИНУТЫ: СЕКУНДЫ») необходимо удержать кнопку S2 для обнуления секунд. Далее коротким нажатием на кнопку S2 запустить отсчет секунд.

Данная модификация платы предусматривает подключение аварийного питания при отключении электроэнергии при помощи батарейки на 3В и двух диодов, см. рисунок.

0

Привет, а есть возможность изменить прошивку под индикаторы с общ. катодом? Дело в том что есть не плохой дисплей но он как назло с общ катодом. А сам я в програмировании не силен.

1

0


Спасибо за быстрый ответ, но вы дали ссылку на файл clock.c
а хотелось бы CLOCK.HEX
В прочем все равно спасибо, закажу на али нужный дисплей.
Удачи.

0

0


Под какой компилятор писалась программа?

0

0


А где можно скачать именно эту версию?

0

0

0

Добрый день. Меня также заинтересовала Ваша конструкция часов. Подскажите, какова у них точность хода?
Также хотелось бы как-то реализовать в них защиту от сброса при пропадании напряжения питания. Например, поставить литиевую батарейку, которая подключалась бы при пропадании напряжения и питала только контроллер, чтобы он не сбросил время.

0

Точность хода именно у тех часов, что я собрал, составляет где-то плюс одну минуту за 4-5 дней. Но ее можно повысить, поточнее подобрав период работы таймера. Насчет батарейки, не уверен, что ее удастся так просто прикрутить. Хотя, если разделить цепи питания контроллера и индикаторов, чтобы сильно не разряжать батарейку, то можно. А лучше для этой цели использовать ионистор. А еще лучше применить специальную микросхему часов реального времени. В ней подобная функциональность уже заложена. И точность хода повыше.

0

Здравствуйте. Спасибо вам за эту работу. Давно искал простейшие часы на микроконтроллере семейства MCS-51. Сергей можете подсказать, так как я хочу собрать просто часы(без будильника и календаря), как мне нужно изменить схему(убрать,изменить).
p.s. я новичок, сильно не ругайтесь)

0

Здравствуйте!
Если Вам не нужен будильник, то можно исключить из схемы резистор R4, транзистор VT5 и зуммер BZ1. Календарь реализован программно, поэтом если его убирать, то нужно немного изменить программу. Впрочем, для исключения будильника тоже придется изменить программу.

0

0

0

спасибо за советы, во в сём разобрался: прошивка легла косо а частотомер на высоких частотах отказался работать (сгорел высокочастотный формирователь импульсов). одним словом всё заработало. АВТОРУ РЕСПЕКТ

0

0

спасибо
сейчас попробую и подскажите
в этом МК осцилятор работает и в не прошитой, то есть осцилятор программой не управляется

0

Насколько я знаю, в этом контроллере осциллятор работает сам по себе без участия каких-то настроек. Кстати, еще идея появилась. У вас нормально цепь сброса контроллера работает?

0

доброго времени суток
прошу Вашей помощи, кварцевый генератор не работает
подключал разные кварцы и увидел стабильную работу кварца на 32768кГц другие кварцы не работают, подскажите почему? МК вроде исправна и пробовал другие итог тот-же

0

Возможно, стоит попробовать изменить номиналы конденсаторов. Если есть возможность, поизменяйте их в пределах от 18 до 36 пФ

Читайте также: