Добро пожаловать
Вход / Регистрация

Простые и теперь очень точные многофункциональные часы на ATMEGA8 и модуле MAX7219. Ч.2

Спасибо! Поделитесь с друзьями!

URL

Вам не понравилось видео. Спасибо за то что поделились своим мнением!

Sorry, only registred users can create playlists.
URL


Добавлено by Admin В Разное
3 Просмотры

Описание

Выкладываю схему и прошивку часов на ATMega8 и светодиодном матричном модуле MAX7219.
Схема очень проста благодаря использованию готовых модулей, занимающих минимум места на плате (кто помнит схемы 30-летней давности на семействе К176ИЕ12 и т.д. знает, о чем речь).
Готовый корпус из Китая не подошел, пришлось самому делать коробку из подручных материалов (использовал стеклотекстолит и поликарбонат), получилось не очень удачно, поэтому изготовление корпуса и платы оставляю на усмотрение энтузиастов, захотевших повторить схему.

Прошивка Atmega8 несколько упрощена - все функции часов из первого видео сохранены, убраны только эффекты анимации (см. видео). По совету комментатора Александра Штыря вместо микросхемы часов DS1307 применил DS3231, точность хода повысилась до 0,2 секунды в сутки (по документации + -0,4 сек/сутки), поэтому функцию коррекции хода часов оставил, и часы теперь идут почти идеально. Применил не саму микросхему, а спаянный модуль вмеcте с батарейкой с Алиэкспресса, этот модуль сильно экономит место на плате и упрощает монтаж. В моем модуле нужна доработка - припаять перемычку между 3-й ножкой DS3231 (выход SQW) и выходом разъема модуля NС, этот вывод идет на 4 ножку ATMega8.
Датчик температуры - DS18B20, если его нет, можно не ставить, часы будут работать, не показывая температуру. Датчик освещенности - фоторезистор из Китая (на схеме R4), он должен "смотреть" наружу, от него зависит яркость дисплея часов.
Чип DS18B20 лучше вытащить из корпуса наружу, т.к. модуль 7219 неплохо греется, и нагревает датчик температуры, особенно днем (потребление при максимальной освещенности 250 мА, ночью, при минимальной - 50 мА). Зуммер - простая пьезокерамичесая пищалка, без схемы генератора внутри - это важно, зуммер нагружен на выход контроллера, с выхода идет частота 4 кГц.

Управление часами.

Кнопка H+ установка часов
Кнопка М+ установка минут
Кнопка TIMER - таймер. В режиме таймера кн Н+ - установка часов таймера, М+ - плюс минут таймера, кн TIMER - минус минут таймера, кн MODE - выход в режим часов, кн START - пуск таймера, она же стоп, если таймер запущен.
При окончании счета таймера раздается сигнал в течение 8 секунд, после этого возврат в часы-минуты. Если таймер запущен, в режиме часов происходит периодическое переключение на текущее показание таймера. За 10 секунд до срабатывания таймера часы опять переключаются в таймер.
Кнопка START. Короткое нажатие - включение/выключение будильника. Долгое нажатие (дольше 0,5 сек)- выводятся секунды. В этом режиме нажатие кнопки Н+ обнуляет секунды (при отпускании) - для любителей абсолютно точного времени. Из режима секунд часы возвращаются через 90 сек, либо по нажатию кн MODE.
Кнопка MODE.
1-е нажатие - будильник. Изменение будильника кнопками Н+ и М+
2-е нажатие - дни срабатывания будильника (понедельник-пятница, понедельник - суббота, понедельник - воскресенье). Изменение - кн Н+.
3-е нажатие - дата. Кн Н+ - изменение числа, кн М+ - изменение месяца
4-е нажатие - день недели. Корректировка дня - кн Н+
5-е нажатие - год. Корректировка года - кн Н+
6- нажатие - выход в часы
Из любого режима можно выйти сразу в часы если удерживать кн MODE дольше 0,5 сек.
В любом режиме если ничего не нажимать часы возвращаются в исходное состояние (часы - минуты) через 15 сек.
Коррекция суточного хода - нажать MODE и не отпуская Н+. В этом режиме Н+ увеличение, М+ уменьшение. Выход - MODE, либо через 15 секунд если ничего не нажимать.
Программирование фьюзов ATMega описывать детально не буду, от заводских настроек нужно изменить частоту - 2МГц и время сброса 6СК+64 мсек (L-fuse = 11100010).

Вот вроде и все. Будут вопросы - пишите.

Схема и прошивка:
https://yadi.sk/d/J5H73PJEx_ghZQ

Написать комментарий

Комментарии

Комментариев нет.
RSS