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

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


Реклама ⓘ

Простые бинарные часы

В преддверии дня рождения друга встал вопрос о выборе подарка. Друг – любитель разных необычный электронных устройств, изделий ручной работы. Променад по магазинам результатов не принес: гаджеты неприятно удивляли либо банальностью, либо дороговизной. Уже отчаявшись что-либо найти, бросил взгляд на виджет бинарных часов Sony. И тут я поймал себя на мысли: «Ты же электронщик со стажем, и руки из того места растут!» Сделай своими руками бинарные часы, будет лучшим подарком! Именно так родилась идея изготовить нижеописанный девайс.

Бинарные часы предназначены для представления времени в двоично-десятичном формате, то есть часы, минуты и секунды разбиваются по десятичным разрядам и представляются в двоичном виде (см. рис. ниже)

К будущим часам на этапе создания сразу были предъявлены следующие требования:

  • сравнительно небольшие габариты как платы, так и устройства в целом;
  • использование максимально доступных компонентов;
  • презентабельный внешний вид корпуса.

В результате была создана следующая схема:

В качестве МК используется, быть может, несколько устаревший, но не менее популярный ATmega8A-AU. В качестве микросхемы часов реального времени - доступная DS1307. Также параллельно линиям питания вблизи МК и на входе питания установлены неполярный конденсаторы 100 нФ и полярный (танталовый) на 47 мкФ. Все резисторы и конденсаторы - в SMD-корпусах типоразмера 0805. Из выводных компонентов - лишь светодиоды, колодка для батарейки и кнопки настройки. Кнопки - любые без фиксации; для корпусного варианта подойдут кнопки с длинными "пимпочками", например такие:

Резисторы R1..R6, R14..R18 могут варьироваться в достаточно широких пределах. Габариты светодиодов значения не имеют, однако корпус и плата рассчитаны на 5 мм круглые светодиоды. "Reserved port" - вывод на плате, который предусмотрен на плате для потенциального расширения функционала часов, например, добавления динамика.

Ниже представлена печатная плата устройства:

Так как число различных связей между светодиодами и МК достаточно велико, а большое число "висячих" перемычек делать не хотелось, устройство реализовано на двусторонней ПП. Толщина стеклотекстолита - 1,5 мм, габаритные размеры платы - 80 х 50 мм. Плата с органами управления (пятью кнопками) выполнена отдельно и будет представлена ниже. На плате дополнительно находятся (не указаны в схеме): разъем для подключения питания + программатора; дополнительный отверстия для подключения проводом питания; резистор в цепи сброса; пятачки для конденсаторов в цепи часового кварца (про них будет сказано ниже).

Плата изготовлена на фрезерном станке с ЧПУ, что позволило получить практически заводское качество. Фото собранной платы представлено ниже:

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

Плата с органами управления соединяется основной при помощи семипроводного шлейфа (2 - питание, 5 - кнопки); размер - 68 х 22 мм.

После сборки платы и прошивки МК осталось выполнить последний пункт - создать красивый корпус для устройства. Ввиду наличия фрезерного станка с ЧПУ, было принято решение вырезать стенки из стеклотекстолита толщиной 1,5 мм и соединить их между собой при помощи пайки; переднюю панель - из алюминия толщиной примерно 1 мм. Общая длина корпуса - 104 мм, высота (с ножками и кнопками) - 77 мм, толщина - 25 мм. Разметка корпуса со всеми отверстиями находится в одном файле с печатной платой. Боковые, верхняя и нижняя стенки соединены друг с другом при помощи латунных стоек под винт М3:

Естественно, предварительно у стоек была удалена винтовая часть. Разные стадии результата сборки представлены ниже (последнее фото было сделано уже после окончательной сборки, поэтому явно видны следы краски):

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

Лицевая сторона передней панели была обработана мелкозернистой наждачкой, затем пастой ГОИ. Обратная сторона, наоборот, обработана грубой наждачкой для крепления к боковым стенкам через 5 мм деревянные бруски при помощи эпоксидной смолы. В задней стенке предусмотрен micro-USB разъем для подачи питания, а также отверстие для потенциального динамика; крышка крепится на вышеупомянутые латунные шестигранники при помощи четырех винтов М3 х 15 мм.

Торцевые и задняя стенка была окрашены автомобильной краской из баллончика.

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

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

Фото устройства в работе показано ниже:

Правильное собранное устройство в наладке не нуждается и начинает работать сразу. Настройка времени осуществляется следующим образом:

  • примерно на 2,5 с необходимо зажать кнопку "0"SEC/SET (находится над секундами). После этого счетчик секунд сбросится в ноль, часы остановят ход;
  • затем при помощи кнопок настройки времени необходимо установить нужное время;
  • затем нажать кнопку "0"SEC на 2,5 с; часы возобновят свой ход с обновленным временем.

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

В заключении хочется описать следующую проблему (для опытных радиолюбителей). Не всегда часовые кварцы бывают надлежащего качества. Может получиться так, что частота вашего кварца отличается от заявленной на несколько герц. Результатом такого отклонения является плохая точность хода: так, отклонение от «эталонной» частоты на 2 герца приводит к отставанию в 5,27 секунд в сутки, или две с половиной минуты в месяц.
Частоту часового кварца можно подстроить, путем установки последовательно или параллельно кварцу конденсатора емкостью в несколько пикофарад. Таким образом, автору удалось снизить разницу частот до 0,1Гц, что приводит к гораздо меньшей погрешности – 7 секунд в месяц.

Вопросы, критику, пожелания и предложения с удовольствием выслушаю в комментариях.

P.S. Файлы с прошивкой и исходным кодом, конфигурация FUSE-бит и проект в Proteus находятся в архиве.

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

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МК AVR 8-бит
ATmega8A-AU
1 TQFP-32Поиск в магазине ОтронВ блокнот
U2 Часы реального времени (RTC)
DS1307
1 SO-8Поиск в магазине ОтронВ блокнот
Q1-Q6 Биполярный транзистор
BC817
6 Поиск в магазине ОтронВ блокнот
D1-D20 LED20 Поиск в магазине ОтронВ блокнот
R1-R6, R11-R13 Резистор
4.7 кОм
6 Поиск в магазине ОтронВ блокнот
R7-R10 Резистор
150 Ом
4 Поиск в магазине ОтронВ блокнот
R14-R18 Резистор
10 кОм
5 Поиск в магазине ОтронВ блокнот
X1 Кварц32768 Гц1 Поиск в магазине ОтронВ блокнот
BAT1 Батарейка3 В1 CR2032Поиск в магазине ОтронВ блокнот
Добавить все

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

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

Теги:

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

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

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

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

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

0
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
0
murzik #
Классно, но контроллер тут - моветон. На рассыпухе делать надо такое. Желательно к217 или что-то наподобие
Ответить
0

[Автор]
elyspire #
murzik, можно сделать очень большим количеством способов :) И вариант на МК имеет право на существование. Учитывая компактность, схемы и дешевизну AVR, вариант далеко не худший.
Ответить
0
Василий #
Так Вам и карты в руки, сделай и представь народу...
Ответить
0
murzik #
Сделаю, если подскажете, где взять каких-нибудь микросхем древних. К155 не канает. В ней уже дешифраторы есть - бинарно время отображать на них не нужно.
Ответить
0
muver84 #
Можно ли использовать микросхему ds1302?
Ответить
0

[Автор]
elyspire #
Здравствуйте. Нельзя, даже после переделки платы. Так как отличаются не только расположением выводов, но и используемым интерфейсом
Ответить
0
TeleX #
Не приходила Вам такая мысль: а не сделать ли двухцветную индикацию - нули одним цветом, единицы - другим (или сыграть уровнем яркости) иначе при некоторых комбинациях нет точки отсчёта, теряются младшие разряды в тетрадах.
Ответить
0

[Автор]
elyspire #
Здравствуйте. Нет, такая мысль в голову не приходила. Но идея с уровнем яркости интересная (с двумя цветами будет хуже, ибо не всем понятно, что есть что)
Ответить
0
BOCEM #
Да, сил много положено! Я сначала подумал, а зачем ему разрыв мозга в форме часов, оказалось это другу подарок! Есть ещё более безумная вещь с названием часы с тремя стрелочниками со шкалами до 60 первый ну первый до 24конечно, часы второй минуты третий секунды. А начинку собрать на шимах и сложение стилей и эпох и маразма в хорошем смысле!
Отредактирован 09.03.2017 10:55
Ответить
0
Николай #
Здравствуйте уважаемые знатоки. Подскажите пожалуйста начинающему как правильно выставить фьюзы. Работаю с программой аврдудепрог, скачал файл с Вашего сайта. Увы ничего не понял, подскажите какие фьюзы выставить в "1" какие в "0".
Ответить
0

[Автор]
elyspire #
В новых версиях дудки можно ставить как прямые, так и инверсные FUSE-биты. Вам нужно поменять лишь CKSEL3..0 на 0100 (внутренний RC 8 МГц), и SUT1..0 на 11. Смогу лучше подсказать, если прикрепите скриншот
Ответить
0
Николай #
Чтобы не рисковать, вот скрин программы. Фьюзы инверсные. Спасибо.
Прикрепленный файл: ФЬЮЗЫ.jpg
Ответить
0

[Автор]
elyspire #
Поставьте галочку на SUT1, и все будет верно
Ответить
0
Николай #
Спасибо за уделённое мне внимание. Извините что сразу не ответил Вам. Часы собрал на беспаячной макетной плате (понимаю что не лучший вариант). Вроде бы всё по схеме, часы настраиваются, но блин, не хотят выходить из режима настройки времени и "тикать" сами по себе. В чём причина может быть? Может не туда "галочку" поставил?
Прикрепленный файл: Сборка.jpg
Ответить
+1
Николай... #
Ура,получилось! Часы тикают. Схема реально рабочая. Спасибо автору за схему. Нашёл неисправность. Оказался плохой контакт. Спасибо Вам, успехов сайту.
Ответить
0
Николай... #
Вот как выглядит моя поделка.
Прикрепленный файл: 20181202_152449 (2).jpg
Ответить
0
Николай... #
А это фото ночью, часы в работе работе.
Отредактирован 17.01.2019 21:28
Прикрепленный файл: 20181221_164519 (2).jpg
Ответить
0
евгений #
Уважаемый автор! Дайте пожалуйста вашу печатную плату, в архиве её нет
Ответить
0

[Автор]
elyspire #
Добрый день. Печатная плата в архиве есть в формате Sprint Layout 5, файл BinaryClock2.lay
Ответить
0
Sergei #
Уважаемый автор замечательного проекта, меня заворожила данная схема бинарных часов, но в ней осталась не задействована одна ножка микроконтроллера и не могли бы Вы подправить прошивку, чтобы часы в конце каждого часа издавали сигнал на пьезоизлучатель.
Ответить
0

[Автор]
elyspire #
Здравствуйте. Спасибо за отзыв. Напишите, пожалуйста, в ЛС
Ответить
0
Сергей - Мирошниченко #
Уважаемый автор замечательного проекта, меня заворожила данная схема бинарных часов, но в ней осталась не задействована одна ножка микроконтроллера и не могли бы Вы подправить прошивку, чтобы часы в конце каждого часа издавали сигнал на пьезоизлучатель.
Ответить
0
Копнин Никита Михайлович #
А можно ли в схеме использовать не ATmega8A-AU, ATmega8A-PU, а ATmega8A-PU в корпусе DIP8?
Ответить
0

[Автор]
elyspire #
Использовать можно, но плату придется переделать
Ответить
0
Marten #
Хорошая конструкция. Тоже такие давно хотел сделать. Собрал на PIC16F628A и DS3231.
Прикрепленный файл: DSC_1112.JPG
Ответить
0
Копнин Никита Михайлович #
Уважаемый автор, не могли бы вы прикрепить сюда код работы микроконтроллера (мне нужен именно код, используемый в этом проекте, а не hex файл).
Ответить
0
elyspire #
Здравствуйте. Файл main.asm находится в архиве
Ответить
0
ALexa #
А на С кода нет? Только учусь МК, хотелось бы понять как реализовать I2C, с асмом не оч дружу (что за " Loop666: rjmp Loop666" ?), а поделка интересная! Мне кажется как обучалка идеально.
Ответить
0
elyspire #
Здравствуйте. Нет, на С кода нет.
Loop666: rjmp Loop 666 - бесконечный цикл. Аналог на С - while (1) { }
Ответить
0
Iv@n #
Можно как-нибудь увеличить яркость? Ставил smd светодиод 5050, очень тускло светят.
Ответить
0

[Автор]
elyspire #
Добрый день. Да, конечно. Попробуйте заменить резисторы R7.. R10 на 27-омные
Ответить
0
иван #
Пробовал даже на прямую подключать разница не заметна к сожалению.
Ответить
0

[Автор]
elyspire #
Тогда проверьте источник питания. Возможно, мощности не хватает. Десяток диодов 500+ мА могут спокойно потреблять
Ответить
0
verbkinm #
Устройство на батарейке работает или на фото батарейка для rtc?
Ответить
0

[Автор]
elyspire #
Для RTC
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
Ручной фен 450 Вт с регулировкой температуры Discovery V8
вверх