Характеристики:
- 13 - разрядный 7 - сегментный светодиодный индикатор с общим катодом;
- звукоизлучатель сигнала будильника - пищалка, т.н. бузер;
- ток потребления от батареи при отключенном сетевом питании 9... 10 мкА.
Индикатор имеет 13 разрядов, что позволяет отобразить на нем значительно больше информации. С целью экономии ножек контроллера и удобства управления для выбора знакомест использован дешифратор DD2. Узел слежения за основным питанием (R1, R3, VT1, VT2) при исчезновении питания автоматически обесточивает DD2, отключая индикатор.
Транзисторы VT1, VT2 с любыми буквенными индексами, диоды VD1, VD2 - любые, можно использовать отечественные КД522. Все кнопки без фиксации.
При программировании контроллера устанавливать частоту генератора не требуется, она фиксирована на уровне 8 МГц, дальнейшие изменения выполняются прошивкой.
Индикаторы на 13 разрядов промышленностью не выпускаются, автор использовал 9-разрядный индикатор от старого телефонного аппарата "Русь", добавив к Нему дополнительный индикатор на 4 цифры. За неимением индикатора от "Руси" можно набрать необходимое количество разрядов, например, следующим образом: 3 индикатора по 4 цифры + 1 индикатор на 1 цифру. Все индикаторы должны быть с общим катодом и иметь одинаковые токи сегментов. При сборке одноименные выводы сегментов (аноды) всех индикаторов соединяются вместе.
Следует отметить, что если использовать микроконтроллер с буквой V (ATMega162V), то в качестве резервной батарейки можно использовать литиевую батарейку для материнских плат компьютеров, т.к. такой контроллер имеет нижний предел питания 1,8 В вместо обычных 2,7 В. В принципе, такую батарейку можно использовать и при отсутствии буквы V, но при этом необходимо выбирать диод VD2 с как можно меньшим падением напряжения с тем, чтобы Uбат - Uдиода > 2,7 В. Никакой модификации схемы или прошивки при этом не требуется.
Работой контроллера управляет микропрограмма, она обеспечивает весь функционал устройства - подсчет времени, Формирование изображения на индикаторе, опрос кнопок управления и включение пищалки будильника.
За подсчет времени отвечает таймер-счетчик, функционирующий асинхронно от отдельного "часового" кварца ZQ1. Таймер, используя цепочку предделителей, вызывает прерывание по переполнению 2 раза в секунду, обработчик которого выполняет всю работу по реализации хода часов и календаря.
Назначение кнопок:
"Mode" - смена отображаемой информации на экране. Режимы отображения: "DD.MM hh-mm-ss"," DD d hh-mm-ss"," DD.MM d hh-mm" (дефис между часами и минутами мигает), "DD.MM.d.hh-mm-ss", " DD.MM.YYYY hh.mm (точка между часами и минутами мигает), "Буд" hh - mm" - время будильника. В режиме коррекции это кнопка выбирает, что корректируем - часы/календарь/будильник. День недели вычисляется на основании числа, месяца и года
"Соrr" - вход/выход в режим коррекции часов/календаря. При выходе из коррекции переменные часов не меняются. При коррекции изменяемый параметр мигает.
"Up""Down" - увеличение/уменьшение на единицу изменяемого параметра. При этом осуществляется контроль границ изменяемого параметра. Так, минуты возможно изменять от 0 до 59, часы - 0...23 и т.д. При изменении числа месяца учитываются номер месяца и високосные годы (29 февраля). Если режим коррекции неактивен, то при нажатии кнопки "Up" отображается время будильника, а кнопка "Down" ничего не делает.
"Set" - в режиме коррекции осуществляет выбор изменяемого параметра. Параметр, который изменялся до нажатия кнопки, переписывается в регистры часов. Если часы не находятся в режиме коррекции, эта кнопка включает/выключает будильник, что отражает светодиод VD3.
Архив для статьи "Электронные часы-календарь-будильник с резервным питанием" | |
Описание: Исходные тексты(Си) для Atmega162/8535, проект Proteus | |
Размер файла: 45.26 KB Количество загрузок: 2 071 | Скачать |
Комментарии
И еще вопрос - что это за файл в архиве с расширением .DSN?
SUT1:0 = 01
DSN - это файл проекта симулятора Протеус
Есть еще один вопрос - индикация в данной схеме динамическая?
Да, конечно