«Тикающие» Часы С Будильником На Микроконтроллере Atmega48.



Описание В основе этого будильника лежит микросхема часов реального времени, что позволяет ему работать от резервного источника питания при отсутствии основного.

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

Режим отображения – 24 часа.

Содержит имитацию «тикания».

Время и режимы работы отображаются с помощью светодиодных индикаторов.





Принцип действия

Основой этих часов является микросхема DS1307 — часы реального времени, обменивающиеся информацией с контроллером управления через интерфейс I2C. Индикация времени осуществляется посредством 4 7-сегментных индикаторов, работающих в динамическом режиме.

Ввод и настройка времени осуществляется с помощью 5 кнопок: «+ минуты», «+ часы», «установить», «будильник» и «сброс».

Звуковой сигнал будильника выводится через стандартный пьезоизлучатель и представляет собой сигнал частотой 1 кГц с секундными паузами.

В качестве управляющего микроконтроллера был выбран Atmega48 из-за его доступности и наличия на борту необходимой периферии (даже в избытке).

Часы реального времени DS1307 подключены к аппаратным выходам I2C управляющего микроконтроллера.

Для работы DS1307 в автономном режиме (в случае сбоя питания основного контроллера) в качестве резервного питания используется литиевая батарея напряжением 3 В, которой хватит на несколько лет из-за низкого энергопотребления чипа.

Рассмотрим подробнее управляющую программу: Программа работает по принципу флаг-таймера: все состояния и события представлены в виде соответствующих флагов, исполняющихся в прерываниях соответствующего таймера 1с, 1мс и 263,17мс.

В программе используются 2 аппаратных таймера.

Чип часов опрашивается и кнопки нажимаются с интервалом 263,17 мс.

Интервал 1 мс используется для генерации звукового сигнала звонка, а 1 с – для его модуляции.

Второй интервал также управляет миганием точки во 2-м разряде индикатора, разделяющей часы и минуты и также служащей образованием «тикания».

Давайте посмотрим на принципиальную схему часов.



«Тикающие» Часы С Будильником На Микроконтроллере Atmega48.

Обозначения и номиналы: S4 — Увеличение частоты S3 – Увеличение минут S2 – Установка S1 - Включить будильник S5 — Сброс Р6-Р10 — 10к R1-R5 — 510 Ом Напряжение питания - 5 вольт.



Настройка и использование

Правильно собранные часы не требуют дополнительной регулировки.

Вам просто нужно установить текущее время и будильник.

Установка текущего времени осуществляется следующим образом: 1) Кнопками S1 и S2 установить текущее время (точка между цифрами не мигает) 2) Запускаем часы кнопкой S3. Установка будильника: 1) Нажмите S3 и убедитесь, что точка в 1-й цифре загорелась.

2) Установите время звонка с помощью кнопок S1 и S2. 3) Включите звонок кнопкой S4. Дополнительные возможности: Включите тиканье – удерживайте S4 и нажимайте S2 до появления характерных звуков.

Выключается так же.

Отображение минут и секунд — удерживайте S4 и нажмите S1. Если затем нажать S3, секунды сбросятся на 00. Возврат – та же комбинация.

Приложение: Исходный код (на ассемблере)+шестнадцатеричный для микроконтроллера atmega48+модель в Протеусе .





Фото и видео часов

Часы собраны в корпусе из нерабочей «электроники».



«Тикающие» Часы С Будильником На Микроконтроллере Atmega48.

«Тикающие» Часы С Будильником На Микроконтроллере Atmega48.

Теги: #Сделай сам или Сделай сам #atmega #микроконтроллер #часы #часы #Atmel #будильник #микроконтроллеры avr

Вместе с данным постом часто просматривают: