Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

Двоичные часики на ATmega8

Двоичные часы – это часы показывающие время в двоичном (бинарном) виде.

В двоичной системе счисления используются только два числа (0 и 1), в отличии от десятичной, которой принято пользоваться людьми.

Так, например, время 11:33.06 в двоичной системе счисления будет выглядеть так: 1011 : 100001 : 000110

Индикация времени в данных  часах осуществляется светодиодами,

при этом свечение светодиода означает 1, а отсутствие свечения - 0.

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

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

Так как у меня завалялось около десятка микросхем ATmega8 в DIP-корпусе, её было и решено использовать в этом устройстве.

Принципиальная схема представлена на следующем рисунке:

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

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

Для питания часов я решил использовать зарядное устройство с USB-разъемом, с напряжением на выходе 5 Вольт.

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

Посмотрев из того что есть под рукой, было решено использовать отрезок кабель канала типоразмера 16x16. В нем через одинаковое расстояние были просверлены отверстия, в которые были вставлены светодиоды, и приклеены с помощью термо клея.

Микроконтроллер и вся обвязка (благо ее не много) был распаян навесным монтажом, от нужных ножек контроллера был припаян шлейф к светодиодам. Все это тоже вставилось в кабель канал, и было приклеено. Под кнопки сбоку были просверлены два отверстия, кнопки также приклеены. С помощь скотча и лазерного принтера были сделаны все необходимые надписи на корпусе.

Дабы не травмировать психику пользователей и не оторвать чего либо во время разборки данной конструкции фото “потрохов” я выкладывать не буду, а приведу лишь фото и видео работы законченного устройства. Часики были повешены вертикально на стену, над компьютерным столом ребенка.

Ну и в заключении расскажу как установить правильное время, все очень просто,

после нажатия кнопки  “mode”, светодиоды, отвечающие за показания часов, начнут мигать. Кнопкой “set” необходимо установить нужное время. Последующие нажатия на кнопку “mode” приведут к редактированию показаний минут и затем секунд.

В часиках имеется функция авто-выхода из режима установки времени, устройство выходит из этого режима по истечении 30сек. если при этом не одна из кнопок не нажимается.   

Если микроконтроллер новый, то фьюзы можно оставить по умолчанию.

Он тактируется от встроенного RC-генератора на частоте 1МГц.

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

В прилагаемом архиве содержится исходный код в WinAVR, файл прошивки и проект в программе Proteus.

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

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МК AVR 8-бит
ATmega8A-AU
1 Поиск в магазине ОтронВ блокнот
Q1-Q3 Биполярный транзистор
S8550
3 Поиск в магазине ОтронВ блокнот
X1 Кварцевый резонатор32768 Гц1 Поиск в магазине ОтронВ блокнот
C1, C3 Конденсатор100 нФ2 Поиск в магазине ОтронВ блокнот
C2 Электролитический конденсатор47 мкФ1 Поиск в магазине ОтронВ блокнот
R1-R3 Резистор
4.7 кОм
3 Поиск в магазине ОтронВ блокнот
R4 Резистор
10 кОм
1 Поиск в магазине ОтронВ блокнот
Светодиод16 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 1
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.9 Проголосовало: 1 чел.

Комментарии (15) | Я собрал (0) | Подписаться

0
hardbar #
Супер часы с не правельным ходом времени.
По схеме atmega8 тактируется часовым кварцем, а в описании она работает на заводских настройках.
Ответить
0

[Автор]
Pavel #
На заводских настройках работает внутренний тактовый генератор микроконтроллера, а таймер работает в асинхронном режиме и тактируется от часового кварца.
Ответить
0
hardbar #
Так и нужно было написать, а то такой как я, будет устраивать допросы.
Ответить
-1
black #
Ну наконец-то хоть кто-то обошелся одним МК для подсчета времени! А то даже в простейших часах ставят отдельную МС для счёта времени... Когда в МК можно реализовать куда больше возможностей, хотя бы ту же коррекцию хода.
Ответить
0
hasl #
Не путайте. Микросхемы времени ставят для автономности. А не ставят их, если у контроллера есть вход под батарейку. Как то так
Ответить
0
Antares #
Не обязательно, я резервировал питание своих часов на ATMega8 батарейкой, хотя у этого МК и нет выхода под батарейку - погружал его в глубокий сон, а асинхронный таймер на часовом кварце продолжал идти и будить МК каждую секунду. Ионистора на 0.22Ф хватает на 12 часов (пока напряжение на нём упадёт с 5 до 3.3Вольт).
Ответить
0

[Автор]
Pavel #
Не обязательно контроллер должен иметь вход под батарейку, можно поставить ионистор и детектор напряжения питания (делитель, на вход АЦП или компаратора контроллера), и при пропадании питания МК переводить в спящий режим.
Ответить
0
Zecher #
Дело не только в автономности микросхемы RTC, но и автоматический подсчёт времени, даты, дня недели с учётом разной продолжительности годов и месяцев! Программно реализовать это в МК геморно. А без достойного RTC, часы - не часы, а детская игрушка.
Ответить
0

[Автор]
Pavel #
Программно реализовать RTC, нет особого гемора. Для AVR есть апноут AVR134_Real Time Clock. Там уже все написано, достаточно вставить код в обработчик прерывания таймера работающего в режиме RTC.
Ответить
0
black #
Полностью согласен, к тому же реализовать можно куда больше чем в МС RTC, например лунный календарь, будильники, напоминалки, синхронизацию из вне и т.п. Я реализовывал часы на ATmega168A, он есть еще меньше ATmega8. Делал следящий дозиметр, а часы там жизненно необходимы для подсчета дозы, так при работе DC-DC высоковольтного и фоновой радиации устройство работает 2-3 месяца на одной подзарядке. Просто обычно если даже часы батарейные, то в любом случае индикатор съест львиную долю энергии.
Ну и экономически, на стоимость одной МС RTC можно купить 2 МК. Станите в последствии разработчиками коммерческой продукции - поймете что такое экономия. Т.к. сэкономив в схеме даже дешевую детальку на партии в 1000 штук можно заработать...
Ответить
0
Smelter #
Отдельная МС имеет больше возможностей при несоизмеримо меньшем энергопотреблении
Ответить
0
Семён #
Не понял часы в 12-ти часовом формате или 24-х.
Ответить
0
Тарас #
Возможно ли организовать батарейное питание с минимальным потреблением (то бишь спящий режим) в случае пропадания основного? К сожалению в программировании не силён
Ответить
0
Владимир Семионов #
На схеме не указаны порядковые номера светодиодов. Подскажите порядок. Разряды двоичного числа располагаются как светодиоды? Т.е. первый разряд это правый светодиод?
Ответить
0
Владимир Семионов #
Подскажите на какую ножку микросхемы приходит питание общий минус?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Мини гравер 125 Ватт DC-DC регулируемый преобразователь 1.5-37В 2А с индикатором
вверх