Предлагаю для повторения схему простых электронных часов с будильником, выполненные на типа PIC16F628A. Большим плюсом данных часов является светодиодный индикатор типа АЛС, для отображения времени. Лично мне порядком надоели всевозможные ЖКИ и хочется иметь возможность видеть время из любой точки комнаты в том числе в темноте, а не только прямо с хорошим освещением. Схема содержит минимум деталей и имеет отличную повторяемость. Часы испытаны на протяжении месяца, что показало их надежность и работоспособность. Думаю из всех схем в интернете, эта наиболее простая в сборке и запуске.
Принципиальная схема электронных часов с будильником на микроконтроллере:
Как видно из схемы часов, является единственной микросхемой, используемой в данном устройстве. Для задания тактовой частоты используется кварцевый резонатор на 4 МГц. Для отображения времени использованы индикаторы красного цвета с общим анодом, каждый индикатор состоит из двух цифр с десятичными точками. В случае использования пьезоизлучателя, конденсатор С1 — 100мкФ можно не ставить.
Можно применить любые индикаторы с общим анодом, лишь бы каждая цифра имела собственный анод. Чтоб электронные часы были хорошо видны в темноте и с большой дистанции — старайтесь выбрать АЛС-ки чем покрупнее.
Индикация в часах осуществляется динамически. В данный конкретный момент времени отображается лишь одна цифра, что позволяет значительно снизить потребление тока. Аноды каждой цифры управляются микроконтроллером PIC16F628A. Сегменты всех четырех цифр соединены вместе и через токоограничивающие резисторы R1 … R8 подключены к выводам порта МК. Поскольку засвечивание индикатора происходит очень быстро, мерцание цифр становится незаметным.
Для настройки минут, часов и будильника — используются кнопки без фиксации. В качестве выхода для сигнала будильника используется вывод 10, а в качестве усилителя — каскад на транзисторах VT1,2. Звукоизлучателем является пьезоэлемент типа ЗП. Для улучшения громкости вместо него можно поставить небольшой динамик.
Питаются часы от стабилизированного источника напряжением 5В. Можно и от батареек. В часах реализовано 9 режимов индикации. Переход по режимам осуществляется кнопками «+» и «-«. Перед выводом на индикацию самих показаний, на индикаторы выводится короткая подсказка названия режима. Длительность вывода подсказки — одна секунда.
Кнопкой «Коррекция» часы — будильник переводятся в режим настроек. При этом кратковременная подсказка выводится на пол секунды, после чего корректируемое значение начинает мигать. Коррекция показаний осуществляется кнопками «+» и «-«. При длительном нажатии на кнопку, включается режим автоповтора, с заданной частотой. Все значения, кроме часов, минут и секунд, записываются в EEPROM и восстанавливаются после выключения — включении питания.
Если в течение нескольких секунд ни одна из кнопок не нажата, то электронные часы переходят в режим отображения времени. Нажатием на кнопку «Вкл/Выкл» включается или выключается будильник, это действие подтверждается коротким звуком. При включенном будильнике светится точка в младшем разряде индикатора. Думал куда бы пристроить часы на кухне, и решил вмонтировать их прямо в газовую плиту:) Материал прислал in_sane.
Обсудить статью ЭЛЕКТРОННЫЕ ЧАСЫ БУДИЛЬНИК
Часы со светодиодным семисегментным индикатором на микросхеме К145ИК1911
История этих часов появления на сайте немного иная, от других схем на сайте.
Обычный выходной, захожу на почту,роюсь, и на хожу наш читатель Федоренко Евгений, прислал схему часов,с описанием и со всеми фотографиями.
Кратко о схеме.Это схема электронных часов
своими руками
выполненная на микросхеме К145ИК1911
, и время выводится на семи сегментные светодиодные индикаторы.И так его статья.Смотрим все.
Схема часов:
Для увеличения снимка, его просто стоит увеличить нажатием.И сохранить компьютер.
Не так давно передо мной встала задача – либо купить новые часы, либо собрать новые самостоятельно. Требования к часам выдвигались простые – на дисплее должны отображаться часы и минуты, должен быть будильник, причём, в качестве устройства отображения должны использоваться светодиодные семисегментные индикаторы. Не хотелось нагромождать кучу логических микросхем, а с программированием контроллеров связываться не было желания. Выбор остановил на разработке советской электронной промышленности – микросхеме К145ИК1901
.
В магазине на тот момент её не оказалось, но был аналог, в 40 выводном корпусе – К145ИК1911. Наименование выводов данной микросхемы ничем не отличается от предыдущей, различие – в нумерации.
Минусом этих микросхем
является то, что они работают только с вакуумными люминесцентными индикаторами. Для обеспечения стыковки со светодиодным индикатором потребовалось построить схему согласования на полупроводниковых ключах.
В качестве драйверов строк – J1-J7 можно применить транзисторы
КТ3107 с буквенным индексом И, А, Б. Для драйверов выбора сегментов D1-D4 пойдут КТ3102И, либо КТ3117А, КТ660А, а также любые другие с максимальным напряжением коллектор-эмиттер не менее 35 В и током коллектора не менее 100 мА. Ток сегментов индикаторов регулируется резисторами в коллекторных цепях драйверов строк.
Для разделения разрядов часов и минут используется точка, мигающая с частотой 1 Гц.
Эта частота присутствует на выводе микросхемы Y4, после того, как начался отсчёт времени. В данной схеме также предусмотрена возможность отображения на дисплее вместо часов и минут – минут и секунд соответственно. Переход в данный режим осуществляется нажатием на кнопку «Сек.». Возврат к индикации времени часов и минут осуществляется после нажатия кнопки «Возврат». Данная микросхема обеспечивает возможность установки двух будильников одновременно, но в данной схеме второй будильник не используется за ненадобностью. В качестве звукоизлучателя использована пьезо-пищалка со встроенным генератором, с напряжением питания 12В. Сигнал включения будильника снимается с вывода Y5 микросхемы. Для обеспечения прерывистого звучания, сигнал модулируется частотой 1 Гц, используемой для индикации секундного ритма (точки). Для более подробного изучения функционала микросхемы К145ИК1901(11) можно обратиться к документации, которую в последнее время можно без труда найти в сети. Питание микросхемы должно осуществляться отрицательным напряжением -27В±10%. Согласно проведённым экспериментам, микросхема сохраняет работоспособность даже при напряжении -19В, причём точность хода часов при этом ничуть не пострадала.
Схема часов приведена на рисунке выше. В схеме были применены чип-резисторы типоразмера 1206, что позволяет существенно уменьшить габариты устройства. В качестве семисегментных индикаторов подойдут любые, с общим анодом.
Ну вот кончилась статься на данный момент.Которая будет еще дорабатываться и пополняться.А я выражаю благодарность ее автору-Федоренко Евгений,по всем вопросам а так же дать его почту.Пишите на Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Данные часы собранны на хорошо известном комплекте микросхем — К176ИЕ18 (двоичный счетчик для часов с генератором сигнала звонка),
К176ИЕ13 (счетчик для часов с будильником) и К176ИД2 (преобразователь двоичного кода в семисегментный)

времени следует нажать кнопку S4 (Time Set) и придерживая ее нажать кнопку S3 (Hour) — для установки часов или S2 (Min) — для установки
минут. При этом показания соответствующих индикаторов начнут изменяться с частотой 2 Гц от 00 до 59 и далее снова 00. В момент перехода
от 59 к 00 показания счетчика часов увеличатся на единицу. Установка времени будильника происходит так же, только придерживать нужно
кнопку S5 (Alarm Set). После установки времени срабатывания будильника нужно нажать кнопку S1 для включения будильника (контакты
замкнуты). Кнопка S6 (Reset) служит для принудительного сброса индикаторов минут в 00 при настройке. Светодиоды D3 и D4 играют роль
разделительных точек, мигающих с частотой 1 Hz. Цифровые индикаторы на схеме расположены в правильном порядке, т.е. сначала идут
индикаторы часов, две разделительные точки (светодиоды D3 и D4) и индикаторы минут.
В часах использовались резисторы R6-R12 и R14-R16 ваттностью 0,25W остальные — 0,125W. Кварцевый резонатор XTAL1 на частоту 32 768Hz —
обычный часовой, Транзисторы КТ315А можно заменить на любые маломощные кремниевые соответствующей структуры, КТ815А — на транзисторы
средней мощности со статическим коэффициентом передачи тока базы не менее 40, диоды — любые кремниевые маломощные. Пищалка BZ1
динамическая, без встроенного генератора, сопротивление обмотки 45 Om. Кнопка S1 естественно с фиксацией.

сопротивление резисторов R6-R12. На рисунке Вы можете наблюдать распиновку данного индикатора, выводы показаны условно, т.к. представлен
вид сверху.
После сборки часов, возможно, нужно будет подстроить частоту кварцевого генератора. Точнее всего это можно сделать, контролируя цифровым
частотомером период колебаний 1 с на выводе 4 микросхемы U1. Настройка генератора по ходу часов потребует значительно большей затраты
времени. Возможно, придется также подстроить яркость свечения светодиодов D3 и D4 подбором сопротивления резистора R5, чтобы все
светилось равномерно ярко. Потребляемый часами ток не превышает 180 мА.
Часы питаются от обычного блока питания, собранного на плюсовом микросхемном стабилизаторе 7809 с выходным напряжением +9V и током 1,5A.
Совсем не давно появилась необходимость в доме заиметь часы, но только электронные
, так как я не люблю стрелочные, потому что они тикают. У меня есть не малый опыт в пайке и вытравки схем. Порыскав по просторам Интернета и почитав некоторую литературу, я решил выбрать самую простую схему, так как мне не нужны часы с будильником.
Выбрал эту схему так как по ней легко сделать часы своими руками
Приступим, так что же нам надо для того, чтобы сделать себе часы своими руками? Ну конечно руки, умение (даже не большое) чтения схем, паяльник и детали. Вот полный перечень того, что я использовал:
Кварц на 10 мГц – 1 шт, микроконтроллер ATtiny 2313, резисторы на 100 Ом – 8 шт., 3 шт. на 10 кОм, 2 конденсатора по 22 пФ, 4 транзистора, 2 кнопки, светодиодный индикатор 4 разрядный KEM-5641-ASR (RL-F5610SBAW/D15). Монтаж я выполнял на одностороннем текстолите.
Но в этой схеме есть недостаток
: на выводы микроконтроллера (далее МК), которые отвечают за управление разрядами, поступает довольно таки приличная нагрузка. Ток в общей сумме намного превышается от максимального тока порта, но при динамической индикации МК не успевает перегреваться. Для того чтобы МК не вышел из строя, добавляем в цепи разрядов 100 Ом резисторы.
В этой схеме управление индикатора осуществляется по принципу динамической индикации, в соответствии с которой сегменты индикатора управляются сигналами с соответствующих выводов МК. Частота повторения этих сигналов более 25 Гц и из-за этого свечение цифр индикатора кажется непрерывным.
Электронные часы, выполненные по выше указанной схеме, могут только показывать время (часы и минуты), а секунды показывает точка между сегментами
, которая мигает. Для управления режимом работы часов в их структуре предусмотрены кнопочные переключатели, которые управляют настройкой часов и минут. Питание данной схемы осуществляется от блока питания в 5В. При изготовлении печатной платы в схему был включен 5В стабилитрон.
Так как у меня имеется БП на 5В, я из схемы исключил стабилитрон.
Чтобы изготовить плату, выполнялось нанесение схемы с помощью утюга. То есть печатная схема распечатывалась на струйном принтере с использованием глянцевой бумаги, ее можно взять с современных глянцевых журналов. После вырезался текстолит нужных размеров. У меня размер получился 36*26 мм. Такой маленький размер из-за того, что все детали выбраны в SMD корпусе.
Вытравка платы осуществлялась с помощью хлорного железа (FeCl
3
) . По времени вытравка заняла примерно час, так как ванночка с платной стояла на камине, высокая температура влияет на время вытравки, не используемой меди в плате. Но не стоит переусердствовать с температурой.
Пока шел процесс вытравки, дабы не ломать себе голову и не писать прошивку для работы часов, пошел на просторы Интернета и нашел под данную схему прошивку. Как прошивать МК, так же можно найти в Интернете. Мною был использован программатор, который прошивает только МК компании ATMEGA.
И вот наконец-то наша плата готова и мы можем приступить к пайке наших часов. Для пайки нужен паяльник на 25 Вт с тонким жалом для того, чтобы не спалить МК и другие детали. Пайку осуществляем осторожно и желательно с первого раза припаиваем все ножки МК, но только по отдельности. Для тех, кто не в теме знайте, что детали, выполненные в SMD корпусе, имеют на своих выводах олово, для быстрой пайки.
А вот так вот выглядит плата с припаянными деталями.
На фото прототип, собранный мной для отладки программы, которая будет управлять всем этим хозяйством. Вторая arduino nano в верхнем правом углу макетки не относится к проекту и торчит там просто так, внимание на нее можно не обращать.
Немного о принципе работы: ардуино берет данные у таймера DS323, перерабатывает их, определяет уровень освещенности с помощью фоторезистора, затем все посылает на MAX7219, а она в свою очередь зажигает нужные сегменты с нужной яркостью. Так же с помощью трех кнопок можно выставить год, месяц, день, и время по желанию. На фото индикаторы отображают время и температуру, которая взята с цифрового термодатчика
Основная сложность в моем случае — это то, что 2.7 дюймовые индикаторы с общим анодом, и их надо было во первых как то подружить с max7219, которая заточена под индикаторы с общим катодом, а во вторых решить проблему с их питанием, так как им нужно 7,2 вольта для свечения, чего одна max7219 обеспечить не может. Попросив помощи на одном форуме я получил таки ответ.
Решение на скриншоте:
К выходам сегментов из max7219 цепляется микросхемка , которая инвертирует сигнал, а к каждому выводу, который должен подключаться к общему катоду дисплея цепляется схемка из трех транзисторов, которые так же инвертируют его сигнал и повышают напряжение. Таким образом мы получаем возможность подключить к max7219 дисплеи с общим анодом и напряжением питания более 5 вольт
Для теста подключил один индикатор, все работает, ничего не дымит
Начинаем собирать.
Схему решил разделить на 2 части из-за огромного количества перемычек в разведенном моими кривыми лапками варианте, где все было на одной плате. Часы будут состоять из блока дисплея и блока питания и управления. Последний было решено собрать первым. Эстетов и бывалых радиолюбителей прошу не падать в обморок из-за жестокого обращения с деталями. Покупать принтер ради ЛУТа нет никакого желания, поэтому делаю по старинке — тренируюсь на бумажке, сверлю отверстия по шаблону, рисую маркером дорожки, затем травлю.
Принцип крепления индикаторов оставил тот же, как и на .
Размечаем положение индикаторов и компонентов, с помощью шаблона из оргстекла, сделанного для удобства.
Процесс разметки
Затем с помощью шаблона сверлим отверстия в нужных местах и примеряем все компоненты. Все встало безупречно.
Рисуем дорожки и травим.
купание в хлорном железе
Готово!
плата управления:
плата индикации:
Плата управления получилась отлично, на плате индикации не критично сожрало дорожку, это поправимо, настало время паять. В этот раз я лишился SMD-девственности, и включил 0805 компоненты в схему. Худо-бедно первые резисторы и конденсаторы были припаяны на места. Думаю дальше набью руку, будет легче.
Для пайки использовал флюс, который купил . Паять с ним одно удовольствие, спиртоканифоль использую теперь только для лужения.
Вот готовые платы. На плате управления имеется посадочное место для ардуино нано, часов, а так же выходы для подключения к плате дисплея и датчики (фоторезистор для автояркости и цифровой термометр ds18s20) и блок питания на с регулировкой выходного напряжения (для больших семисегментников) и для питания часов и ардуино, на плате индикации находятся посадочные гнезда для дисплеев, панельки для max2719 и uln2003a, решение для питания четырех больших семисегментников и куча перемычек.
плата управления сзади
Плата индикации сзади:
Ужасный монтаж смд:
Запуск
После припаивания всех шлейфов, кнопок и датчиков пришло время все это включить. Первый запуск выявил несколько проблем. Не светился последний большой индикатор, а остальные светились тускло. С первой проблемой расправился пропаиванием ножки смд-транзистора, со второй — регулировкой напряжения, выдаваемого lm317.
ОНО ЖИВОЕ!
Электронные часы своими руками схемы для начинающих. Электронные часы своими руками
Концепция часов с большими цифрами
Конструктивно девайс будет состоять из двух плат – одна над другой. Первая плата – матрица светодиодов, образующих разряды часов и минут, Вторая – силовая часть (управление светодиодами), логика и питание. Такая конструкция сделает часики более компактным (без корпуса примерно 22см х 9 см, толщиной сантиметра 4-5) + даст возможность прикрутить матрицу к другому проекту, если что то пойдет не так.
Силовая часть будет построена на базе драйвера UL2003 и транзисторных ключах. Логическая — на Atmega8 и DS1307. Питание: 220В — трансформатор; логика 5В (через 7805), силовая часть — 12В (через LM2576ADJ). Отделено будет предусмотрена кроватка для батарейки 3В для автономного питания часов реального времени — DS1307.
Думаю использовать Atmega8 и DS1307 (часики планирую подвесить под потолком, и что бы в случае пропадания электричества каждый раз не лазить за настройкой), однако разводка платы будет предполагать возможность работы девайса и без DS1307 (на первое время, а может и навсегда – уж как получится).
Таким образом, в зависимости от комплектации алгоритм работы программы часов будет следующим:
Atmega8
– счетчик времени по таймеру. Работа в цикле без пауз: опрос клавиатуры, корректировка времени (если необходимо), отображение 4 разрядов и разделителя.
Atmega8 + DS1307
. Работа в цикле без пауз: опрос клавиатуры, корректировка времени DS1307 (если необходимо), зачитка времени с DS1307, отображение 4 разрядов и разделителя. Или другой вариант – зачитка с DS1307 по таймеру, остальное в цикле (пока не знаю как лучше).
Сегмент представляет собой 4 красных светодиода, соединенных между собой последовательно. Одна цифра – 7 сегментов с общим анодом. Сегменты не планирую разделять шаблоном «восьмерки», как это сделано в обычных индикаторах.
Силовая часть часов
Силовая часть часов построена на драйвере UL2003 и транзисторных ключах VT1 и VT2.
UL2003 отвечает за управление сегментами индикатора, ключи – за управление разрядами.
Отдельно управляется разделитель часов и минут (сигнал K8).
Управление сегментами, разрядами и разделителем осуществляется от микроконтроллера подачей положительного потенциала (т.е. подачей +5В) на К1-К8, Z1-Z4.
Подача сигналов на сегменты и разряды должна осуществляться синхронно и с определенной частотой, для того, что бы обеспечить динамический вывод информации (часов и минут).
В качестве транзистора VT1 (BCP53) можно использовать транзистор BCP52.
Схема силовой части часов с большими цифрами
Печатная плата семисегментного индикатора для часов с большими цифрами
Как я говорил ранее, конструктивно часы будут состоять из двух печатных плат — плата индикатора + логика и силовая часть.
Начнем с разработки и изготовления печатной платы индикатора.
Разработка печатной платы семисегментного индикатора для часов с большими цифрами
Печатная плата семисегментного индикатора для часов с большими цифрами в формате «lay» находится конце статьи, в присоединенных файлах. О технологии изготовления печатных плат методом ЛУТ можно почитать .
Если вы сделали все правильно, готовая печатная плата будет выглядеть примерно так.
Готовая печатная плата семисегментного индикатора для часов с большими цифрами
Сборка семисегментного индикатора
Поскольку плата индикатора является двухсторонней, первое, что надо сделать это выполнить межслоевые переходы. Я делаю это с помощью ножек ненужных деталей — продеваю их в отверстия и припаиваю с двух сторон. Когда все переходы выполнены, зачищаю их плоским мелким напильником — получается очень аккуратно и симпатично.
Межслоевые переходы на плате индикатора
Следующий шаг, собственно говоря, сборка индикатора. Для чего нам понадобится пачка красных (зеленых, белых, синих) светодиодов. Я, например, брал эти.
Подготовка к сборке индикатора
При установке диодов не забываем, что мы делаем индикатор с общим анодом — т.е. «+» диодов должны быть соединены вместе. Общие аноды на печатной плате — это большие фрагменты меди. Обязательно обратите внимание на анод разделительной точки.
Расположение анодов на печатной плате индикатора
В итоге, после 2 часов кропотливой работы должно получиться вот что:
Семисегментный индикатор
Цифровая часть часов
Цифровую часть часов с большими цифрами будем собирать по схеме:
Схема часов с большими цифрами
Схема часов довольно прозрачна, поэтому объяснять как она работает не вижу смысла. Печатную плату в формате *.lay можно скачать в конце статьи. Замечу, что печатная плата в основном разработана под детали для поверхностного монтажа.
Итак, элементная база, которую использовал я:
1. Диодный мост DFA028 (подойдет любой компактный для поверхностного монтажа);
2. Регуляторы напряжения LM2576ADJ в корпусе D2PAK, 78M05 в корпусе HSOP3-P-2.30A;
3. Транзисторные ключи BCP53 (корпус SOT223) и BC847 (корпус SOT23);
4. Микроконтроллер Atmega8 (TQFP);
5. Часы реального времени DS1307 (SO8);
6. Блок питания 14В 1,2А от какого-то старого устройства;
7. Остальные детали — любого типа, подходящие по размерам для установки на печатную плату.
Разумеется, если вы хотите применить другие корпуса деталей, вам потребуется внести некоторые изменения в печатную плату.
Обратите внимание на номиналы сопротивлений R3 и R4 — они должны быть именно такими, какие указаны на схеме — не больше не меньше. Это сделано для того, что бы обеспечить на выходе регулятора напряжения LM2576ADJ ровно 12В. Если все таки не удастся найти такие номиналы резисторов, то значение сопротивления R4 может быть рассчитано по формуле:
R4=R3(12/1.23-1) или R4=8.76R3
Сборка цифровой части. Версия 1, без DS1307
Если при изготовлении печатной платы часов вы придерживались рекомендаций, изложенных в , то тогда вам излишне напоминать, что перед сборкой печатная плата должна быть просверлена, все видимые короткие замыкания на ней устранены, а плата покрыта жидкой канифолью? Тогда приступаем к сборке часов.
Я рекомендую начать со сборки блока питания и только за тем выполнить монтаж цифровой части. Это общая рекомендация по самостоятельной сборке девайсов. Почему? Просто потому, что если блок питания собран с ошибкой можно пожечь всю низковольтную электронику, которая должна питаться этим блоком питания.
Если все сделано правильно — блок питания должен заработать сразу. Проверяем сборку блока питания — замеряем напряжение в контрольных точках.
На рисунке показаны контрольные точки, в которых следует проверить напряжение питания. Если напряжение соответствует заявленному, можно приступать к сборке цифровой части часов. Иначе проверяем монтаж и работоспособность элементов блока питания.
Контрольные точки и значения напряжений для блока питания часов
После того, как проверка блока питания выполнена приступаем к сборке цифровой части часов — устанавливаем все остальные элементы на печатную плату. Проверяем на КЗ, особенно в ногах микроконтроллера Atmega и драйвера UL2003.
Монтаж цифровой части часов
Обратите внимание на то, что сборку часов мы выполняем БЕЗ установки часов реального времени DS1307, однако вся обвязка этой микросхемы должна быть выполнена. В будущем, если возникнет необходимость, это сэкономит нам время на доработку часов под вторую версию, там где все таки будут использоваться отдельные, независимые часы реального времени на DS1307.
Предварительная проверка микроконтроллера ATMEGA8
Для того, что бы проверить правильность и работоспособность микроконтроллера нам потребуется:
1. Программатор, например .
2. для внутрисхемного программирования микроконтроллера.
3. Программа AVRDUDESHELL.
Подключаем плату часов к дата-кабелю. Дата-кабель подключаем к программатору. Программатор к компьютеру, на котором установлена программа AVRDUDESHELL. Подключать плату часов к питающей сети 220В не следует.
Удачное чтение данных с микроконтроллера программой AVRDUDESHELL
Если при чтении фьюзов возникла проблемы — проверяйте монтаж — возможно где то есть короткое замыкание или «непропай». Еще один совет — возможно микроконтроллер находится в режиме низкоскоростного программирования, тогда достаточно переключить программатор в этот режим (
Предлагаю для повторения схему простых электронных часов с будильником, выполненные на типа PIC16F628A. Большим плюсом данных часов является светодиодный индикатор типа АЛС, для отображения времени. Лично мне порядком надоели всевозможные ЖКИ и хочется иметь возможность видеть время из любой точки комнаты в том числе в темноте, а не только прямо с хорошим освещением. Схема содержит минимум деталей и имеет отличную повторяемость. Часы испытаны на протяжении месяца, что показало их надежность и работоспособность. Думаю из всех схем в интернете, эта наиболее простая в сборке и запуске.
Принципиальная схема электронных часов с будильником на микроконтроллере:
Как видно из схемы часов, является единственной микросхемой, используемой в данном устройстве. Для задания тактовой частоты используется кварцевый резонатор на 4 МГц. Для отображения времени использованы индикаторы красного цвета с общим анодом, каждый индикатор состоит из двух цифр с десятичными точками. В случае использования пьезоизлучателя, конденсатор С1 — 100мкФ можно не ставить.
Можно применить любые индикаторы с общим анодом, лишь бы каждая цифра имела собственный анод. Чтоб электронные часы были хорошо видны в темноте и с большой дистанции — старайтесь выбрать АЛС-ки чем покрупнее.
Индикация в часах осуществляется динамически. В данный конкретный момент времени отображается лишь одна цифра, что позволяет значительно снизить потребление тока. Аноды каждой цифры управляются микроконтроллером PIC16F628A. Сегменты всех четырех цифр соединены вместе и через токоограничивающие резисторы R1 … R8 подключены к выводам порта МК. Поскольку засвечивание индикатора происходит очень быстро, мерцание цифр становится незаметным.
Для настройки минут, часов и будильника — используются кнопки без фиксации. В качестве выхода для сигнала будильника используется вывод 10, а в качестве усилителя — каскад на транзисторах VT1,2. Звукоизлучателем является пьезоэлемент типа ЗП. Для улучшения громкости вместо него можно поставить небольшой динамик.
Питаются часы от стабилизированного источника напряжением 5В. Можно и от батареек. В часах реализовано 9 режимов индикации. Переход по режимам осуществляется кнопками «+» и «-«. Перед выводом на индикацию самих показаний, на индикаторы выводится короткая подсказка названия режима. Длительность вывода подсказки — одна секунда.
Кнопкой «Коррекция» часы — будильник переводятся в режим настроек. При этом кратковременная подсказка выводится на пол секунды, после чего корректируемое значение начинает мигать. Коррекция показаний осуществляется кнопками «+» и «-«. При длительном нажатии на кнопку, включается режим автоповтора, с заданной частотой. Все значения, кроме часов, минут и секунд, записываются в EEPROM и восстанавливаются после выключения — включении питания.
Если в течение нескольких секунд ни одна из кнопок не нажата, то электронные часы переходят в режим отображения времени. Нажатием на кнопку «Вкл/Выкл» включается или выключается будильник, это действие подтверждается коротким звуком. При включенном будильнике светится точка в младшем разряде индикатора. Думал куда бы пристроить часы на кухне, и решил вмонтировать их прямо в газовую плиту:) Материал прислал in_sane.
Обсудить статью ЭЛЕКТРОННЫЕ ЧАСЫ БУДИЛЬНИК
Данные часы уже несколько раз обозревались, но я надеюсь, что мой обзор будет тоже Вам интересным. Добавил описание работы и инструкцию.
Конструктор покупался на ebay.com за 1.38 фунтов (0.99+0.39 доставка), что эквивалентно 2.16$. На момент покупки это самая низкая цена из всех предложенных.
Доставка заняла около 3х недель, набор пришел в обычном полиэтиленовом пакетике, который в свою очередь был упакован в небольшой «пупырчатый» пакет. На выводах индикатора был небольшой кусочек пенопласта, остальные детали были без какой либо защиты.
Из документации только небольшой листочек формата А5 со списком радиодеталей с одной стороны и принципиальной электрической схемой с другой.
1. Принципиальная электрическая схема, используемые детали и принцип работы
Основой или «сердцем» часов является 8-ми разрядный КМОП микроконтроллер AT89C2051-24PU оснащенный Flash программируемым и стираемым ПЗУ объемом 2кб.
Узел тактового генератора
собран по схеме (рис.1) и состоит из кварцевого резонатора Y1 двух конденсаторов C2 и С3, которые образуют вместе параллельный колебательный контур.
Изменением емкости конденсаторов можно в небольших пределах изменять частоту тактового генератора и соответственно точность хода часов. На рисунке 2 показан вариант схемы тактового генератора с возможностью регулировки погрешности часов.
Узел начального сброса
служит для установки внутренних регистров микроконтроллера в начальное состояние. Он служит для подачи после подключения питания на 1 вывод МК единичного импульса длительностью не менее 1 мкс (12 периодов тактовой частоты).
Состоит из RC цепочки, образуемой резистором R1 и конденсатором C1.
Схема ввода
состоит из кнопок S1 и S2. Программно сделано так, что при одиночном нажатии любой из кнопок в динамике раздается одиночный сигнал, а при удержании двойной.
Модуль индикации
собран на четырехразрядном семисегментном индикаторе с общим катодом DS1 и резистивной сборке PR1.
Резистивная сборка представляет собой набор резисторов в одном корпусе:
Звуковая часть
схемы представляет собой схему собранную на резисторе R2 10кОм, pnp транзисторе Q1 SS8550(выполняющего роль усилителя) и пьезоэлемента LS1.
Питание
подается через разъем J1 с подключенным параллельно сглаживающим конденсатором C4. Диапазон питающих напряжений от 3 до 6В.
2. Сборка конструктора
Сборка трудностей не вызвала, на плате подписано, куда какие детали паять.
Много картинок — сборка конструктора спрятана под спойлером
Я начал с панельки, так как она единственная не является радиодеталью:
Следующим шагом я припаял резисторы. Перепутать их невозможно, они оба на 10кОм:
После этого установил на плату соблюдая полярность электролитический конденсатор, резисторную сборку (также обращая внимание на первый вывод) и элементы тактового генератора — 2 конденсатора и кварцевый резонатор
Следующим шагом припаиваю кнопки и конденсатор фильтра питания:
После этого очередь за звуковым пьезоэлементом и транзистором. В транзисторе главное установить правильной стороной и не перепутать выводы:
В последнюю очередь припаиваю индикатор и разъем питания:
Подключаю к источнику напряжением 5В. Все работает!!!
3. Установка текущего времени, будильников и ежечасового сигнала.
После включения питания дисплей находится в режиме («ЧАСЫ: МИНУТЫ») и отображает время по умолчанию 12:59. Ежечасный звуковой сигнал включен. Оба будильника включены. Первый установлен на время срабатывания 13:01, а второй – 13:02.
При каждом кратковременном нажатии на кнопку S2 дисплей будет переключаться между режимами («ЧАСЫ: МИНУТЫ») и («МИНУТЫ: СЕКУНДЫ»).
При длительном нажатии кнопки S1 происходит вход в меню настроек, состоящее из 9 подменю, обозначенных буквами A, B, C, D, E, F, G, H, I. Подменю переключаются кнопкой S1, значения изменяются кнопкой S2. После подменю I следует выход из меню настроек.
А: Установка показаний часов текущего времени
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю B.
B: Установка показаний минут текущего времени
C: Включение ежечасного звукового сигнала
По умолчанию включено (ON) – каждый час с 8:00 до 20:00 подается звуковой сигнал. При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в подменю D.
D: Включениевыключение первого будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю E и F пропускаются.
E: Установка показаний часов первого будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю F.
F: Установка показаний минут первого будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для перехода в подменю С.
G: Включениевыключение второго будильника
По умолчанию будильник включен (ON). При нажатии кнопки S2 значение изменяется между ON (Вкл.) и OFF (Выкл.). После установки значения необходимо нажать S1 для перехода в следующее подменю. Если будильник выключен, то подменю H и I пропускаются и происходит выход из меню настроек.
H: Установка показаний часов второго будильника
При нажатии кнопки S2 значение часов изменяется от 0 до 23. После установки часов необходимо нажать S1 для перехода в подменю I.
I: Установка показаний минут второго будильника
При нажатии кнопки S2 значение минут изменяется от 0 до 59. После установки минут необходимо нажать S1 для выхода из меню настроек.
Коррекция секунд
В режиме («МИНУТЫ: СЕКУНДЫ») необходимо удержать кнопку S2 для обнуления секунд. Далее коротким нажатием на кнопку S2 запустить отсчет секунд.
4. Общие впечатления от часов.
Плюсы:
+ Низкая цена
+ Легкая сборка, минимум деталей
+ Удовольствие от самостоятельной сборки
+ Достаточно низкая погрешность (у меня за сутки отстали на несколько секунд)
Минусы:
— После отключения питания не держит время
— Отсутствие какой либо документации, кроме схемы (данная статья частично решила этот минус)
— Прошивка в микроконтроллере защищена от считывания
5. Дополнительно:
1) На безграничных просторах интернета нашел инструкцию к этим часам на английском языке и перевел ее на русский. Скачать ее можно
Преимущества светодиодов неоспоримы, сегодня они везде, в том числе и часах. Что представляют себя часы на светодиодных матрицах, о плюсах и недостатках разберем в рамках статьи. В конце статьи представлено подробное пошаговое руководство для изготовления устройства своими руками.
Что это такое
Часы на светодиодных матрицах — это электронные часы, в которых для индикации используются матрицы из множества светодиодов. Применение индикаторов другого типа — единственное их отличие.
Матрица — это набор светодиодов, собранных вместе в виде сетки с единым анодом или катодом. Как правило, разрешение таких индикаторов — количество точек по вертикали и горизонтали — 8×8.
Почему же такие часы набирают популярность, преимущества:
- Цена. Светодиодные матрицы дешевле семисегментных индикаторов аналогичных размеров.
- Яркость. Светодиоды горят ярче, чем семисегментные индикаторы, их лучше видно в местах, освещенных солнечными лучами. Многие производители также предусматривают конструктивную защиту диода от воздействия солнца.
- Функциональность. При помощи матрицы из светодиодов можно выводить не только цифры, но также различные буквы, знаки препинания, символы. При помощи набора LED-матриц можно выводить некоторую информацию в виде бегущей строки.
Светодиодные матрицы имеют и недостатки:
- Увеличенная сложность управления. Из-за большого количества элементов (в стандартной матрице их 64) управлять матричными индикаторами чем семисегментными. Для этого применяются микроконтроллеры, динамическая индикация и сдвиговые регистры.
- Угол обзора. Особенность светодиодов состоит в том, что они фокусируют свет в одном направлении. Это приводит к тому, что изображение на светодиодной матрице видно хорошо только под определенным углом.
- Непереносимость высоких температур. Нагревание снижает эффективность светодиодов и уменьшает срок службы.
- Перегорание отдельных светодиодов приведет к эффекту «битого пикселя» и ухудшению качества изображения.
Самодельные часы на светодиодных матрицах
Несмотря на большую популярность часов на светодиодных матрицах, в Рунете не так уж и много схем для их самостоятельного изготовления. Рассмотрим самую популярную.
Необходимые навыки для сборки устройства:
- изготовление печатных плат;
- пайка элементов: схема предполагает SMD-исполнение, это значит, что элементы будут устанавливаться прямо на поверхность платы;
- прошивка микроконтроллеров: в схеме используется МК ATMega16A;
- программирование МК: это не обязательно, поскольку для данного устройства уже имеется прошивка контроллера. Этот навык пригодится, если вы захотите изменить режим работы часов или расширить их функционал, например, добавив дополнительные элементы такие, как датчики температуры или влажности.
Из инструментов понадобятся:
- набор для изготовления плат;
- программатор МК;
- паяльник.
Рассмотрим подробнее схему устройства. Главным управляющим элементом является МК ATMega16A, он обеспечивает следующие возможности прибора:
- Отсчет времени и календарь. Ведется даже при отключении питания.
- Будильник. Здесь их 9 штук, можно запрограммировать на работу по дням недели.
- Измерение температуры. Конструкция часов позволяет установить два датчика температуры для измерений в комнате и на улице.
- Режим бегущей строки. Выдает следующую информацию: день недели, месяц, год, температура.
- Коррекция хода часов.
Большая часть функций возложена на микроконтроллер, что позволяет максимально разгрузить схему и использовать минимальное количество элементов.
В устройстве используется лишь две микросхемы: микроконтроллер и сдвиговый регистр TPIC6B595, также можно подключить два датчика температуры DS18B20 — один уличный, и второй комнатный.
Для индикации используются три светодиодные матрицы 8×8. В качестве диода D1 лучше использовать диод Шоттки. Диод в схеме обеспечивает переход на аварийное питание, а диод Шоттки обладает наименьшим падением напряжения и высокой скоростью переключения.
Процесс изготовления:
О некоторых особенностях при сборке часов на светодиодной матрице с ATMega 16A доступно рассказывается в следующем видео.
Часы на светодиодных матрицах имеют много преимуществ перед приборами с другим типом индикации: дешевле, не засвечиваются солнцем, с их помощью можно вывести большее количество информации. Существует большое количество моделей часов на led матрицах, и каждый найдет для себя девайс с требуемым функционалом. Также такие часы несложно изготовить самому, как вы увидели из пошагового руководства выше, это не требует особенных инструментов или специальных навыков.
В продаже можно встретить много различных моделей и вариантов электронных цифровых часов, но большинство из них расчитаны на использование внутри помещений, так как цифры маленькие. Однако иногда требуется разместить часы на улице — например на стене дома, или на стадионе, площади, то есть там, где они будут видны на большом расстоянии многими людьми. Для этого и была разработана и успешно собрана данная схема больших светодиодных часов, к которым можно подключить (через внутренние транзисторные ключи) LED индикаторы сколь угодно большого размера. Увеличить принципиальную схему можно кликнув по ней:
Описание работы часов
- Часы. В данном режиме идёт стандартный вид отображения времени. Имеется цифровая коррекция точности хода часов.
- Термометр. В этом случае устройство производит измерение температуры комнаты либо воздуха на улице, с одного датчика. Диапазон от -55 до +125 градусов.
- Предусмотрен контроль источника питания.
- Вывод информации на индикатор попеременно — часов и термометра.
- Для сохранения настроек и установок при пропадании 220В, применена энергонезависимая память.
Основой устройства является МК ATMega8, который прошивают выставляя фузы согласно таблице:
Работа и управление часами
Включив часы в первый раз, на экране появится рекламная заставка, после чего переключится на отображение времени. Нажимая на кнопку SET_TIME
индикатор пойдёт по кругу из основного режима:
- режим отображения минут и секунд. Если в этом режиме одновременно нажать на кнопку PLUS
и MINUS
, то произойдет обнуление секунд; - установка минут текущего времени;
- установка часов текущего времени;
- символ t
. Настройка продолжительности отображения часов; - символ o
. Время отображения символов индикации внешней температуры (out); - величина ежесуточной коррекции точности хода часов. Символ c
и значение коррекции. Пределы установки от -25 до 25 сек. Выбранная величина будет ежесуточно в 0 часов 0 минут и 30 секунд прибавлена или вычтена из текущего времени. Более подробно читайте в инструкции, что в архиве с файлами прошивки и печатных плат.
Настройка часов
Удерживая кнопки PLUS
/MINUS
делаем ускоренную установку значений. После изменения каких-либо настроек, через 10 секунд новые значения запишутся в энергонезависимую память и будут считаны оттуда при повторном включении питания. Новые настройки вступают в силу по ходу установки. Микроконтроллер отслеживает наличие основного питания. При его отключении питание прибора осуществляется от внутреннего источника. Схема резервного модуля питания показана ниже:
Для уменьшения тока потребления отключаются индикатор, датчики и кнопки, но сами часы продолжают отсчитывать время. Как только напряжение сети 220В появится — все функции индикации восстанавливаются.
Так как устройство задумывалось как большие светодиодные часы, в них есть два дисплея: большой светодиодный — для улицы, и маленький ЖКИ — для удобства настройки основного дисплея. Большой дисплей расположен на расстоянии несколько метров от блока управления и соединен двумя кабелями по 8 проводов. В управление анодами внешнего индикатора индикаторов, применены транзисторные ключи по приведенной в архиве схеме. Авторы проекта: Александрович & SOIR.
Как видно из названия, главное предназначение данного устройства — узнавать текущее время и дату. Но оно имеет ещё множество других полезных функций. Идея его создания появилась после того, как мне на глаза попались полусломанные часы с относительно большим (для наручных) металлическим корпусом. Я подумал, что туда можно вставить самодельные часы, возможности которых ограничиваются только собственной фантазией и умением. В результате появилось устройство со следующими функциями:
1. Часы — календарь:
- Учитываются високосные годы
Отсчёт и вывод на индикатор часов, минут, секунд, дня недели, числа, месяца, года.
Наличие автоматической корректировки текущего времени, которая производится каждый час (максимальные значения +/-9999 ед., 1 ед. = 3,90625 мс.)
Вычисление дня недели по дате (для текущего столетия)
Автоматический переход на летнее и зимнее время (отключаемый)
2. Два независимых будильника (при срабатывании звучит мелодия)
3. Таймер с дискретностью 1 сек. (Максимальное время отсчета 99ч 59м 59с)
4. Двухканальный секундомер с дискретностью счета 0,01 сек. (максимальное время счета 99ч 59м 59с)
5. Секундомер с дискретностью счета 1 сек. (максимальное время счета 99 суток)
6. Термометр в диапазоне от -5°С. до 55°С (ограничен температурным диапазоном нормальной работы устройства) с шагом 0,1°С.
7. Считыватель и эмулятор электронных ключей — таблеток типа DS1990 по протоколу Dallas 1-Wire (память на 50 штук, в которой уже имеется несколько универсальных ”ключей-вездеходов”) с возможностью побайтного просмотра кода ключа.
8. Дистанционный пульт управления на ИК лучах (реализована только команда «Сделать снимок») для цифровых фотокамер «Pentax», «Nikon», «Canon»
9. Светодиодный фонарик
10. 7 мелодий
11. Звуковой сигнал в начале каждого часа (отключаемый)
12. Звуковое подтверждение нажатия кнопок (отключаемое)
13. Контроль напряжения батареи питания с функцией калибровки
14. Цифровая регулировка яркости индикатора
Может такая функциональность и избыточна, но мне нравятся универсальные вещи, ну и плюс моральное удовлетворение от того, что данные часы будут сделаны своими руками.
Принципиальная схема часов
Устройство построено на микроконтроллере АТmega168PA-AU. Часы тикают по таймеру Т2, работающему в асинхронном режиме от часового кварца на 32768 Гц. Микроконтроллер почти всё время находится в спящем режиме (индикатор при этом выключен), просыпаясь раз в секунду, чтобы добавить эту самую секунду к текущему времени и снова засыпает. В активном режиме МК тактируется от внутреннего RC осциллятора на 8 МГц, но внутренний прескалер делит её на 2, в итоге ядро тактируется от 4 МГц. Для индикации используется четыре одноразрядных светодиодных цифровых семисегментных индикатора c общим анодом и децимальной точкой. Так же имеется 7 статусных светодиодов, назначение которых следующее:
D1- Признак отрицательного значения (минус)
D2- Признак работающего секундомера (мигает)
D3- Признак включенного первого будильника
D4- Признак включенного второго будильника
D5- Признак подачи звукового сигнала в начале каждого часа
D6- Признак работающего таймера (мигает)
D7- Признак низкого напряжения батареи питания
R1-R8 — токоограничительные резисторы сегментов цифровых индикаторов HG1-HG4 и светодиодов D1-D7. R12,R13 – делитель для контроля напряжения батареи. Поскольку напряжение питания часов 3V, а белому светодиоду D9 требуется около 3,4-3,8V при номинальном токе потребления, то он светится не в полную силу (но её хватает, чтобы не споткнуться в темноте) и поэтому подключен без токоограничительного резистора. Элементы R14, Q1, R10 предназначены для управления инфракрасным светодиодом D8 (реализация дистанционного управления для цифровых фотокамер). R19, R20, R21 служат для сопряжения при общении с устройствами, имеющими интерфейс 1-Wire. Управление осуществляется тремя кнопками, которые я условно назвал: MODE (режим), UP (вверх), DOWN (вниз). Первая из них также предназначена для пробуждения МК по внешнему прерыванию (при этом индикация включается), поэтому она подключена отдельно на вход PD3. Нажатия остальных кнопок определяется при помощи АЦП и резисторов R16,R18. Если кнопки не нажимаются в течении 16 сек, то МК засыпает и индикатор гаснет. При нахождении в режиме “Пульт ДУ для фотокамер”
этот интервал составляет 32 сек., а при включенном фонарике — 1 минуту. Также МК можно усыпить вручную, используя кнопки управления. При запущенном секундомере с дискретностью счета 0,01 сек. устройство не переходит в спящий режим.
Печатная плата
Устройство собрано на двухсторонней печатной плате круглой формы по размеру внутреннего диаметра корпуса наручных часов. Но при изготовлении я использовал две односторонние платы толщиной 0,35 мм. Такую толщину опять же получил отслоив её от двухстороннего стеклотекстолита толщиной 1,5 мм. Платы затем склеил. Все это делалось потому что, у меня не было тонкого двухстороннего стеклотекстолита, а каждый сэкономленный миллиметр толщины в ограниченном внутреннем пространстве корпуса часов очень ценен, да и отпала надобность совмещения при изготовлении печатных проводников методом ЛУТ. Рисунок печатной платы и расположение деталей находятся в прилагаемых файлах. На одной стороне размещены индикаторы и токоограничительные резисторы R1-R8. На обратной — все остальные детали. Имеются два сквозных отверстия для белого и инфракрасного светодиодов.
Контакты кнопок и держатель батареи выполнены из гибкой пружинящей листовой стали толщиной 0,2…0,3мм. и залужены. Ниже приведены фото платы с двух сторон:
Конструкция, детали и их возможная замена
Микроконтроллер ATmega168PA-AU можно заменить на ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Цифровые индикаторы — 4 штуки KPSA02-105 суперяркие красного цвета свечения с высотой цифры 5,08мм. Mожно поставить из этой же серии KPSA02-xxx или KCSA02-xxx. (только не зеленые – они будут слабо светиться) Другие аналоги подобных размеров с достойной яркостью мне неизвестны. У HG1, HG3 соединение катодов сегментов отличается от HG2, HG4, потому что мне так было удобнее для разводки печатной платы. В связи с этим для них в программе применена различная таблица знакогенератора. Используемые резисторы и конденсаторы SMD для поверхностного монтажа типоразмеров 0805 и 1206, светодиоды D1-D7 типоразмера 0805. Белый и инфракрасный светодиоды диаметром 3мм. На плате имеется 13 сквозных отверстий, в которые необходимо установить перемычки. В качестве температурного датчика применён DS18B20 c интерфейсом 1-Wire. LS1 – обычная пьезоэлектрическая пищалка, вставляется в крышку. Одним контактом она соединяется с платой при помощи пружинки, установленной на ней, другим соединяется с корпусом часов самой крышкой. Кварцевый резонатор от наручных часов.
Программирование, прошивка, фьюзы
Для внутрисхемного программирования на плате имеются только 6 круглых контактных пятачка (J1), так как полноценный разъем не уместился по высоте. К программатору их подключал, используя контактное устройство, сделанное из штыревой вилки PLD2x3 и напаянных на них пружинками, прижимая их одной рукой к пятачкам. Ниже прилагается фото приспособления.
Я использовал его, так как в процессе отладки приходилось много раз перепрошивать МК. При разовой прошивке проще подпаять к пятачкам тонкие провода, подключенные к программатору, а после снова отпаять. МК удобнее прошивать без батареи, но чтобы питание поступало либо от внешнего источника +3V, либо от программатора c таким же напряжением питания. Программа написана на ассемблере в среде VMLAB 3.15. Исходные коды, прошивки для FLASH и EEPROM в приложении.
FUSE-биты микроконтроллера DD1 должны быть запрограммированы следующим образом:
CKSEL3…0 = 0010 — тактирование от внутреннего RC осциллятора 8 МГц;
SUT1…0 =10 — Start-up time: 6 CK + 64 ms;
CKDIV8 = 1 — делитель частоты на 8 отключён;
CKOUT = 1 — Output Clock on CKOUT запрещен;
BODLEVEL2…0 = 111 — контроль напряжения питания отключён;
EESAVE = 0 — стирание EEPROM при программировании кристалла запрещено;
WDTON = 1 — Нет постоянного включения Watchdog Timer;
Остальные FUSE – биты лучше не трогать. FUSE–бит запрограммирован, если установлен в “0”.
Прошивка EEPROM прилагаемым в архиве дампом обязательна.
В первых ячейках EEPROM размещается начальные параметры устройства. В приведённой ниже таблице описывается назначение некоторых из них, которые можно менять в разумных пределах.
| Адрес ячейки | Назначение | Параметр | Примечание | |
| Величина напряжения батареи, при которой происходит сигнал о её низком уровне | 260($104) (2,6V) | |||
| коэффициент для коррекции значения измеренного напряжения батареи | ||||
| интервал времени на переход в режим сна | 1 ед. = 1 сек | |||
| интервал времени на переход в режим сна при включенном фонарике | 1 ед. = 1 сек | |||
| интервал времени на переход в режим сна при нахождении в режиме ДУ для фотокамер | 1 ед. = 1 сек | |||
| Здесь хранятся номера IButton ключей |
Небольшие пояснения по пунктам:
1 пункт. Здесь указывается величина напряжения на батарее, при которой загорится светодиод, сигнализирующий о её низком значении. Я поставил 2,6V (параметр — 260). Если нужно другое, например 2,4V, то надо записать 240($00F0). В ячейку по адресу $0000 заносится младший байт, соответственно в $0001 – старший.
2 пункт. Поскольку я не установил на плату переменный резистор для подстройки точности измерения напряжения батареи питания ввиду отсутствия места, то я ввел программную калибровку. Порядок калибровки для точного измерения следующий: изначально в данной ячейке EEPROM записан коэффициент 1024($400), необходимо перевести устройство в активный режим и посмотреть на индикаторе напряжение, и тут же замерить вольтметром реальное напряжение на батарее. Коэффициент коррекции (К), который необходимо выставить, вычисляется по формуле: K=Uр/Uи*1024 где Uр – реальное напряжение, измеренное вольтметром, Uи – напряжение которое, измерило само устройство. После подсчёта коэффициента ”K” его заносят в устройство (как это делается сказано в инструкции по эксплуатации). После калибровки у меня погрешность не превысила 3%.
3 пункт. Здесь задается параметр времени, через которое устройство перейдет в спящий режим, если кнопки не нажимаются. У меня стоит 16 сек. Если допустим надо, чтобы засыпало через 30 сек, то надо записать 30($26).
В 4 и 5 пунктах аналогично.
6 пункт. По адресу $0030 хранится код семейства нулевого ключа (dallas 1-Wire), затем его 48 битный номер и CRC. И так 50 ключей последовательно.
Настройка, особенности работы
Настройка устройства сводится к калибровке измерения напряжения батареи, как описано выше. Также необходимо засечь отклонение хода часов за 1 час, посчитать и внести соответствующее значение коррекции (процедура описана в инструкции по эксплуатации).
Устройство питается от литиевой батареи CR2032 (3V) и потребляет в режиме сна примерно 4 мкА, а в активном режиме 5…20 мА в зависимости от яркости индикатора. При ежедневном пятиминутном использовании активного режима батареи должно хватить примерно на 2….8 месяцев в зависимости от яркости. Корпус часов соединен с минусом батареи.
Считывание ключей проверялось на DS1990. Эмуляция проверена на домофонах ”МЕТАКОМ”. Под порядковыми номерами от 46 до 49(последние 4) прошиты (все ключи хранятся в EEPROM, их можно изменять перед прошивкой) универсальные ключи для домофонов. Ключ, прописанный под номером 49 открывал все домофоны ”МЕТАКОМ”, которые мне попадались, остальные универсальные ключи тестировать не довелось, их коды я взял из сети.
Дистанционное управление для фотокамер проверялось на моделях Pentax optio L20, Nikon D3000. Canon не удалось заполучить для проверки.
Инструкция пользователя занимает 13 страниц, поэтому я не стал её включать в статью, а вынес в приложение в формате PDF.
Архив содержит:
Схема в и GIF;
Рисунок печатной платы и расположение элементов в формате ;
Прошивка и исходники на ассемблере;
Список радиоэлементов
| Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
|---|---|---|---|---|---|---|
| DD1 | МК AVR 8-бит | ATmega168PA | 1 | PA-AU | В блокнот | |
| U2 | Датчик температуры | DS18B20 | 1 | В блокнот | ||
| Q1 | MOSFET-транзистор | 2N7002 | 1 | В блокнот | ||
| С1, С2 | Конденсатор | 30 пФ | 2 | В блокнот | ||
| С3, С4 | Конденсатор | 0.1 мкФ | 2 | В блокнот | ||
| С5 | Электролитический конденсатор | 47 мкФ | 1 | В блокнот | ||
| R1-R8, R17 | Резистор | 100 Ом | 9 | В блокнот | ||
| R9 | Резистор | 10 кОм | 1 | В блокнот | ||
| R10 | Резистор | 8.2 Ом | 1 | В блокнот | ||
| R11 | Резистор | 300 Ом | 1 | В блокнот | ||
| R12 | Резистор | 2 МОм | 1 | В блокнот | ||
| R13 | Резистор | 220 кОм | 1 | В блокнот | ||
| R14 | Резистор | 30 кОм | 1 | В блокнот | ||
| R15, R19 | Резистор | 4.7 кОм | 2 | В блокнот | ||
| R16 | Резистор | 20 кОм | 1 |
Предлагаю для повторения схему простых электронных часов с будильником, выполненные на типа PIC16F628A. Большим плюсом данных часов является светодиодный индикатор типа АЛС, для отображения времени. Лично мне порядком надоели всевозможные ЖКИ и хочется иметь возможность видеть время из любой точки комнаты в том числе в темноте, а не только прямо с хорошим освещением. Схема содержит минимум деталей и имеет отличную повторяемость. Часы испытаны на протяжении месяца, что показало их надежность и работоспособность. Думаю из всех схем в интернете, эта наиболее простая в сборке и запуске.
Принципиальная схема электронных часов с будильником на микроконтроллере:
Как видно из схемы часов, является единственной микросхемой, используемой в данном устройстве. Для задания тактовой частоты используется кварцевый резонатор на 4 МГц. Для отображения времени использованы индикаторы красного цвета с общим анодом, каждый индикатор состоит из двух цифр с десятичными точками. В случае использования пьезоизлучателя, конденсатор С1 — 100мкФ можно не ставить.
Можно применить любые индикаторы с общим анодом, лишь бы каждая цифра имела собственный анод. Чтоб электронные часы были хорошо видны в темноте и с большой дистанции — старайтесь выбрать АЛС-ки чем покрупнее.
Индикация в часах осуществляется динамически. В данный конкретный момент времени отображается лишь одна цифра, что позволяет значительно снизить потребление тока. Аноды каждой цифры управляются микроконтроллером PIC16F628A. Сегменты всех четырех цифр соединены вместе и через токоограничивающие резисторы R1 … R8 подключены к выводам порта МК. Поскольку засвечивание индикатора происходит очень быстро, мерцание цифр становится незаметным.
Для настройки минут, часов и будильника — используются кнопки без фиксации. В качестве выхода для сигнала будильника используется вывод 10, а в качестве усилителя — каскад на транзисторах VT1,2. Звукоизлучателем является пьезоэлемент типа ЗП. Для улучшения громкости вместо него можно поставить небольшой динамик.
Питаются часы от стабилизированного источника напряжением 5В. Можно и от батареек. В часах реализовано 9 режимов индикации. Переход по режимам осуществляется кнопками «+» и «-«. Перед выводом на индикацию самих показаний, на индикаторы выводится короткая подсказка названия режима. Длительность вывода подсказки — одна секунда.
Кнопкой «Коррекция» часы — будильник переводятся в режим настроек. При этом кратковременная подсказка выводится на пол секунды, после чего корректируемое значение начинает мигать. Коррекция показаний осуществляется кнопками «+» и «-«. При длительном нажатии на кнопку, включается режим автоповтора, с заданной частотой. Все значения, кроме часов, минут и секунд, записываются в EEPROM и восстанавливаются после выключения — включении питания.
Если в течение нескольких секунд ни одна из кнопок не нажата, то электронные часы переходят в режим отображения времени. Нажатием на кнопку «Вкл/Выкл» включается или выключается будильник, это действие подтверждается коротким звуком. При включенном будильнике светится точка в младшем разряде индикатора. Думал куда бы пристроить часы на кухне, и решил вмонтировать их прямо в газовую плиту:) Материал прислал in_sane.
Обсудить статью ЭЛЕКТРОННЫЕ ЧАСЫ БУДИЛЬНИК
Вспоминаю… Тридцать лет назад шесть индикаторов были маленьким сокровищем. Тот, кто мог тогда сделать с такими индикаторами часы на ТТЛ логике, считался искушенным знатоком своего дела.
Свечение газоразрядных индикаторов казалось более теплым. Через несколько минут мне стало интересно, заработают ли эти старые лампы, и захотелось что-нибудь сделать на них. Теперь-то сделать такие часы очень просто. Достаточно взять микроконтроллер…
Поскольку тогда же я увлекался программированием микроконтроллеров на языках высокого уровня, я решил немного поиграть. Я попытался сконструировать простые часы на цифровых газоразрядных индикаторах.
Цель конструирования
Я решил, что часы должны иметь шесть цифр, а время должно устанавливаться минимальным количеством кнопок. Кроме того, я хотел попытаться использовать несколько наиболее распространенных семейств микроконтроллеров разных производителей. Программу я намеревался писать на языке C.
Газоразрядным индикаторам для работы требуется высокое напряжение. Но иметь дело с опасным сетевым напряжением я не хотел. Часы должны были питаться безвредным напряжением 12 В.
Поскольку основной моей целью была игра, вы не найдете здесь описания механической конструкции и чертежей корпуса. При желании, вы сами сможете изменить часы в соответствии со своими вкусами и опытом.
Вот что у меня получилось:
- Индикация времени: ЧЧ ММ СС
- Индикация будильника: ЧЧ ММ —
- Режим отображения времени: 24 часа
- Точность ±1 секунда в день (зависит от кварцевого резонатора)
- Напряжении питания: 12 В
- Потребляемый ток: 100 мА
Схема часов
Для устройства с шестиразрядным цифровым дисплеем естественным решением был мультиплексный режим.
Назначение большинства элементов блок-схемы (Рисунок 1) понятно без комментариев. В определенной степени нестандартной задачей было создание преобразователя уровней ТТЛ в высоковольтные сигналы управления индикаторами. Драйверы анодов сделаны на высоковольтных NPN и PNP транзисторах. Схема позаимствована у Стефана Кнеллера (http://www.stefankneller.de).
ТТЛ микросхема 74141 содержит двоично-десятичный дешифратор и высоковольтный драйвер для каждой цифры. Возможно, заказать одну микросхему будет сложно. (Хотя я не знаю, производятся ли они вообще кем-либо сейчас). Но уж если вы нашли газоразрядные индикаторы, 74141 могут оказаться где-то рядом:-). Во времена ТТЛ логики альтернативы микросхеме 74141 практически не было. Так что попробуйте найти где-нибудь одну штуку .
Индикаторам требуется напряжение порядка 170 В. Разрабатывать специальную схему для преобразователя напряжения не имеет смысла, поскольку существует огромное количество микросхем повышающих преобразователей. Я выбрал недорогую и широко доступную микросхему MC34063. Схема преобразователя почти полностью скопирована с технического описания MC34063. К ней лишь добавлен силовой ключ T13. Внутренний ключ для такого высокого напряжения не подходит. В качестве индуктивности для преобразователя я использовал дроссель. Он показан на Рисунке 2; его диаметр 8 мм, а длина 10 мм.
КПД преобразователя вполне хороший, а выходное напряжение относительно безопасно. При токе нагрузки 5 мА выходное напряжение падает до 60 В. R32 выполняет функцию токоизмерительного резистора.
Для питания логики используется линейный регулятор U4. На схеме и на плате есть место для резервного аккумулятора. (3.6 В — NiMH или NiCd). D7 и D8 — это диоды Шоттки, а резистор R37 предназначен для ограничения зарядного тока в соответствии с характеристиками аккумулятора. Если вы собираете часы просто для развлечения, аккумулятор, D7, D8 и R37 вам не потребуются.
Окончательная схема показана на Рисунке 3.
Кнопки установки времени подключены через диоды. Состояние кнопок проверяется установкой логической «1» на соответствующем выходе. В качестве бонусной функции к выходу микроконтроллера подключен пьезоизлучатель. Чтобы заткнуть этот противный писк, используйте маленький выключатель. Для этого вполне подошел бы и молоток, но это уж на крайний случай:-).
Перечень компонентов схемы, рисунок печатной платы и схему размещения элементов можно найти в разделе «Загрузки».
Процессор
Управлять эти несложным устройством может практически любой микроконтроллер с достаточным количеством выводов, минимально необходимое количество которых указано в Таблице 1.
| Таблица 1. | ||||||||||||||||
|
Каждый изготовитель разрабатывает собственные семейства и типы микроконтроллеров. Расположение выводов индивидуально для каждого типа. Я постарался сконструировать универсальную плату для нескольких типов микроконтроллеров. На плате установлена 20-контактная панелька. С помощью нескольких проволочных перемычек вы можете адаптировать ее для разных микроконтроллеров.
Ниже перечислены микроконтроллеры, проверенные в этой схеме. Вы можете поэкспериментировать с другими типами. Преимуществом схемы является возможность использования разных процессоров. Радиолюбители, как правило, используют одно семейство микроконтроллеров и имеют соответствующий программатор и программный инструментарий. С микроконтроллерами других изготовителей могут возникнуть проблемы, поэтому я дал вам возможность выбора процессора из любимого семейства.
Вся специфика включения различных микроконтроллеров отражена в Таблицах 2…5 и на Рисунках 4…7.
| Таблица 2. | ||||||||||||
|
Примечание: Параллельно кварцевому резонатору включен резистор 10 МОм.
| Таблица 3. | ||||||||||||
|
Примечание: Микросхему необходимо развернуть в панельке на 180°.
| Таблица 4. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ).
| Таблица 5. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ); выводы, отмеченные звездочками, соедините с шиной питания +Ub через SMD резисторы 3.3 кОм.
Сравнив коды для разных микроконтроллеров, вы увидите, что они очень похожи. Различия имеются в доступе к портам и определению функций прерываний, а также в том, что зависит от компонентов обвязки.
Исходный код состоит из двух секций. Функция main()
настраивает порты и запускает таймер, формирующий сигналы прерывания. После этого программа сканирует нажатые кнопки и устанавливает соответствующие значения времени и будильника. Там же в главном цикле текущее время сравнивается с будильником и включается пьезоизлучатель.
Вторая часть является подпрограммой обработки прерываний от таймера. Подпрограмма, которая вызывается через каждую миллисекунду (в зависимости от возможностей таймера), инкрементирует переменные времени и управляет цифрами дисплея. Кроме того, проверяется состояние кнопок.
Запуск схемы
Монтаж компонентов и настройку начинайте с источника питания. Запаяйте регулятор U4 и окружавшие его компоненты. Проверьте наличие напряжения 5 В для микросхемы U2 и 4.6 В для U1. Следующим шагом соберите высоковольтный преобразователь. Подстроечным резистором R36 установите напряжение 170 В. Если диапазона подстройки окажется недостаточно, немного измените сопротивление резистора R33. Теперь установите микросхему U2, транзисторы и резисторы схемы драйверов анодов и цифр. Соедините входы U2 с шиной GND и последовательно подключайте по одному из резисторов R25 — R30 к шине питания +Ub. В соответствующих позициях должны зажигаться цифры индикаторов. На последнем этапе проверки схемы соедините с землей вывод 19 микросхемы U1 — должен запищать пьезоизлучатель.
Исходные коды и откомпилированные программы вы найдете в соответствующем ZIP файле в разделе «Загрузки». После зашивки программы в микроконтроллер тщательно проверьте каждый вывод в позиции U1 и установите необходимые перемычки из проволоки и припоя. Сверяйтесь с изображениями микроконтроллеров, приведенными выше. Если микроконтроллер запрограммирован и подключен правильно, должен заработать его генератор. Вы можете установить время и будильник. Внимание! На плате есть место для еще одной кнопки — это запасная кнопка для будущих расширений:-).
Проверьте точность частоты генератора. Если она не укладывается в ожидаемый диапазон, слегка измените номиналы конденсаторов C1 и C2. (Припаяйте параллельно конденсаторы небольшой емкости или замените их другими). Точность хода часов должна улучшиться.
Заключение
Небольшие 8-битные процессоры вполне приспособлены для языков высокого уровня. Изначально язык C не предназначался для небольших микроконтроллеров, однако для простых приложений вы прекрасно можете использовать его. Ассемблер лучше подойдет для сложных задач, требующих соблюдения критических времен или максимальной загрузки процессора. Для большинства радиолюбителей подойдут как бесплатные, так и условно-бесплатные ограниченные версии компилятора C.
Программирование на C одинаково для всех микроконтроллеров. Вы должны знать функции аппаратных средств (регистров и периферии) выбранного типа микроконтроллера. Будьте осторожны с битовыми операциями — язык C к манипуляциям с отдельными битами не приспособлен, что можно увидеть на примере исходного когда для ATtiny.
Закончили? Тогда настройтесь на созерцание вакуумных ламп и смотрите…
…возвращаются старые времена … 🙂
Примечание редакции
Полным аналогом SN74141 является микросхема К155ИД1, выпускавшаяся минским ПО «Интеграл».
Микросхему без труда можно найти в сети Интернет.
Светодиодные простые часы можно сделать на дешёвом контроллере PIC16F628A. Конечно, в магазинах полно различных электронных часов, но по функциям у них может или нехватать термометра, или будильника, или они не светятся в темноте. Да и вообще, иногда прото хочется что-то спаять сам, а не покупать готовое. Чтобы увеличить рисунок схемы — клац.
В предлагаемых часах есть календарь. В нём два варианта отображения даты — месяц цифрой или слогом, всё это настрайвается после ввода даты переключением дальше кнопкой S1
во время отображения нужного параметра, термометр. есть прошивки под разные датчики. Смотрите устройство внутри корпуса:
Все знают, что кварцевые резонаторы не идеальные по точности, и в течение нескольких недель набегает погрешность. Для борьбы с этим делом, в часах предусмотрена корекция хода, которая устанавливается параметрами SH
и SL
. Подробнее:
SH=42 и SL=40 — это вперёд на 5 минут в сутки;
SH=46 и SL=40 — это назад на 3 минуты в сутки;
SH=40 и SL=40 — это вперёд на 2 минуты в сутки;
SH=45 и SL=40 — это назад на 1 минуту в сутки;
SH=44 и SL=С0 — это вперёд на 1 минуту в сутки;
SH=45 и SL=00 — это корекция отключена.
Таким образом можно добится идеальной точности. Хотя придётся несколько раз погонять коррекцию, пока выставите идеально. А теперь наглядно показывается работа электронных часов:
температура 29градусов цельсия
В качестве индикаторов можно поставить или светодиодные циферные сборки, что указаны в самой схеме, или заменить их обычными круглыми сверхяркими светодиодами — тогда эти часы будут видны издалека и их можно вывешивать даже на улице.
Часы со светодиодной подсветкой и пульсирующей минутной стрелкой на микроконтроллере Arduino
Эти уникальные часы со светодиодной подсветкой и пульсирующей минутной стрелкой удалось изготовить благодаря использованию микросхемы ШИМ-контроллера TLC5940. Его главной задачей является расширить количество контактов с ШИМ-модуляцией. Еще одной особенностью данных часов является переделанный аналоговый вольтметр в прибор измеряющий минуты. Для этого на стандартном принтере была распечатана новая шкала и наклеена поверх старой. Как таковая, 5-я минута не отсчитывается, просто в течение пятой минуты счетчик времени показывает стрелку, упершуюся в конец шкалы (зашкаливает). Основное управление реализовано на микроконтроллере Arduino Uno.
Для того чтобы подсветка часов не светилась слишком ярко в темной комнате, была реализована схема автоматической подстройки яркости в зависимости от освещенности (использовался фоторезистор).
Шаг 1: Необходимые компоненты
Вот что потребуется:
- Модуль аналогового вольтметра на 5V DC;
- Микроконтроллер Arduino UNO или другой подходящий Arduino;
- Монтажная плата Arduino (прото плата);
- Модуль часов реального времени DS1307 (RTC);
- Модуль с ШИМ-контроллером TLC5940;
- Лепестковые светодиоды подсветки – 12 шт.;
- Компоненты для сборки схемы автоматического регулирования яркости (LDR).
Также, для изготовления некоторых других компонентов проекта желательно иметь доступ к 3D-принтеру и станку лазерной резки. Предполагается, что этот доступ у вас есть, поэтому в инструкции на соответствующих этапах будут прилагаться чертежи для изготовления.
Шаг 2: Циферблат
Циферблат состоит из трех деталей (слоев) вырезанных на станке лазерной резки из 3 мм листа МДФ, которые скрепляются между собой с помощью болтов. Пластина без прорезей (внизу справа на картинке) помещается под другой пластиной для позиционирования светодиодов (внизу слева). Затем, отдельные светодиоды помещаются в соответствующие пазы, и сверху одевается лицевая панель (сверху на рисунке). По краю циферблата просверлены четыре отверстия, через которые все три детали скрепляются вместе с помощью болтов.
- Для проверки работоспособности светодиодов на этом этапе, использовалась плоская батарейка CR2032;
- Для фиксации светодиодов использовались небольшие полоски липкой ленты, которые приклеивались с задней стороны светодиодов;
- Все ножки светодиодов были предварительно согнуты соответствующим образом;
- Отверстия по краям были просверлены заново, через которые и выполнялось скрепление болтами. Оказалось, что это намного удобнее.
Технический чертеж деталей для циферблата доступен по :
Шаг 3: Разработка схемы
На этом этапе была разработана электрическая схема. Для этого использовались различные учебники и руководства. Не будем сильно углубляться в этот процесс, в двух файлах ниже представлена готовая электрическая схема, которая была использована в этом проекте.
Шаг 4: Подключение монтажной платы Arduino
- Первым делом надо распаять все игольчатые контакты на монтажных и секционных платах;
- Далее, ввиду того, что питание 5V и GND используют очень много плат и периферийных устройств, для надежности, было припаяно по два провода на 5V и GND на монтажной плате;
- Далее был установлен ШИМ-контроллер TLC5940 рядом с используемыми контактами;
- После выполняется подключение контроллера TLC5940, согласно схеме подключения;
- Для того чтобы была возможность использовать батарею, был установлен модуль RTC на краю монтажной платы. Если припаять его посередине платы, то не будет видно обозначение контактов;
- Выполнено подключение модуля RTC, согласно схеме подключения;
- Собрана схема автоматического контроля яркости (LDR), ознакомиться можно по ссылке
- Выполнено подключение проводов для вольтметра, путем подключения проводов к выводу 6 и GND.
- В конце были припаяны 13 проводов для светодиодов (На практике оказалось, что это было лучше сделать до того, как приступать к шагу 3).
Шаг 5: Программный код
Программный код, приложенный ниже, был собран из различных кусков для компонентов часов, найденных в интернете. Он был полностью отлажен и в настоящее время полностью работоспособен, к тому же были добавлены довольно подробные комментарии. Но перед загрузкой в микроконтроллер учтите следующие пункты:
- Перед прошивкой Arduino, нужно раскомментировать строку, которая устанавливает время:
rtc.adjust(DateTime(__DATE__, __TIME__))
После прошивки контроллера с этой строкой (время задано), нужно опять ее закомментировать и прошить контроллер заново. Это позволяет модулю RTC использовать батарею, для запоминания времени, если пропадет основное питание. - Каждый раз, когда вы используете «Tlc.set ()», вам нужно использовать «Tlc.update»
Шаг 6: Внешнее кольцо
Внешнее кольцо для часов было напечатано на 3D-принтере Replicator Z18. Оно прикрепляется к часам с помощью винтов на лицевой стороне часов. Ниже прилагается файл с 3D-моделью кольца для печати на 3D-принтере.
Шаг 7: Сборка часов
Микроконтроллер Arduino со всей остальной электроникой был закреплен на задней стороне часов с помощью саморезов и гаек в качестве распорок. Затем подключены все светодиоды, аналоговый вольтметр и LDR к проводам, которые ранее были подпаяны к монтажной плате. Все светодиоды соединены между собой одной ножкой и подключены к контакту VCC на контроллере TLC5940 (по кругу просто припаян кусок проволоки).
Пока все это не очень хорошо изолировано от коротких замыканий, но работа над этим будет продолжена в следующих версиях.
С динамической индикацией. По работе часов претензий нет: точный ход, удобные настройки. Но один большой минус — в дневное время плохо видно светодиодные индикаторы. Для решени проблемы перешёл на статическую индикацию и более яркие светодиоды. Как всегда в программном обеспечение огромное спасибо Soir. В общем предлагаю вашему вниманию большие уличные часы со статической индикацией, функции настройки остались как и в прежних часах.
В них два дисплея — основной (снаружи на улице) и вспомогательный на индикаторах — в помещении, на корпусе прибора. Высокая яркость достигается применением ультраярких светодиодов , с рабочим током 50мА, и микросхем-драйверов .
Схема электронных часов для улицы на ярких светодиодах
Для прошивки контроллера с файлами и используйте следующие настроки фузов:
Печатные платы часов, блока управления и внешнего модуля, в формате LAY, .
Особенности данной схемы часов:
— Формат отображения времени 24-х часовый.
— Цифровая коррекция точности хода.
— Встроенный контроль основного источника питания.
— Энергонезависимая память микроконтроллера.
— Имеется термометр, измеряющий температуру в диапазоне -55 — 125 градусов.
— Возможен поочередный вывод информации о времени и температуре на индикатор.
Нажатие на кнопку SET_TIME переводит индикатор по кругу из основного режима часов (отображение текущего времени). Во всех режимах удержанием кнопок PLUS/MINUS производится ускоренная установка. Изменения настроек через 10 секунд от последнего изменения значения запишутся в энергонезависимую память (EEPROM) и будут считаны оттуда при повторном включении питания.
Ещё один большой плюс предложенного варианта — изменилась яркость, теперь в солнечную погоду яркость прекрасная. Уменьшилась количество проводов с 14 до 5. Длина провода до основного (уличного) дисплея — 20 метров. Работой электронных часов доволен, получились полнофункциональные часы — и днем, и ночью. С Уважением, Soir–Александрович.
На фото прототип, собранный мной для отладки программы, которая будет управлять всем этим хозяйством. Вторая arduino nano в верхнем правом углу макетки не относится к проекту и торчит там просто так, внимание на нее можно не обращать.
Немного о принципе работы: ардуино берет данные у таймера DS323, перерабатывает их, определяет уровень освещенности с помощью фоторезистора, затем все посылает на MAX7219, а она в свою очередь зажигает нужные сегменты с нужной яркостью. Так же с помощью трех кнопок можно выставить год, месяц, день, и время по желанию. На фото индикаторы отображают время и температуру, которая взята с цифрового термодатчика
Основная сложность в моем случае — это то, что 2.7 дюймовые индикаторы с общим анодом, и их надо было во первых как то подружить с max7219, которая заточена под индикаторы с общим катодом, а во вторых решить проблему с их питанием, так как им нужно 7,2 вольта для свечения, чего одна max7219 обеспечить не может. Попросив помощи на одном форуме я получил таки ответ.
Решение на скриншоте:
К выходам сегментов из max7219 цепляется микросхемка , которая инвертирует сигнал, а к каждому выводу, который должен подключаться к общему катоду дисплея цепляется схемка из трех транзисторов, которые так же инвертируют его сигнал и повышают напряжение. Таким образом мы получаем возможность подключить к max7219 дисплеи с общим анодом и напряжением питания более 5 вольт
Для теста подключил один индикатор, все работает, ничего не дымит
Начинаем собирать.
Схему решил разделить на 2 части из-за огромного количества перемычек в разведенном моими кривыми лапками варианте, где все было на одной плате. Часы будут состоять из блока дисплея и блока питания и управления. Последний было решено собрать первым. Эстетов и бывалых радиолюбителей прошу не падать в обморок из-за жестокого обращения с деталями. Покупать принтер ради ЛУТа нет никакого желания, поэтому делаю по старинке — тренируюсь на бумажке, сверлю отверстия по шаблону, рисую маркером дорожки, затем травлю.
Принцип крепления индикаторов оставил тот же, как и на .
Размечаем положение индикаторов и компонентов, с помощью шаблона из оргстекла, сделанного для удобства.
Процесс разметки
Затем с помощью шаблона сверлим отверстия в нужных местах и примеряем все компоненты. Все встало безупречно.
Рисуем дорожки и травим.
купание в хлорном железе
Готово!
плата управления:
плата индикации:
Плата управления получилась отлично, на плате индикации не критично сожрало дорожку, это поправимо, настало время паять. В этот раз я лишился SMD-девственности, и включил 0805 компоненты в схему. Худо-бедно первые резисторы и конденсаторы были припаяны на места. Думаю дальше набью руку, будет легче.
Для пайки использовал флюс, который купил . Паять с ним одно удовольствие, спиртоканифоль использую теперь только для лужения.
Вот готовые платы. На плате управления имеется посадочное место для ардуино нано, часов, а так же выходы для подключения к плате дисплея и датчики (фоторезистор для автояркости и цифровой термометр ds18s20) и блок питания на с регулировкой выходного напряжения (для больших семисегментников) и для питания часов и ардуино, на плате индикации находятся посадочные гнезда для дисплеев, панельки для max2719 и uln2003a, решение для питания четырех больших семисегментников и куча перемычек.
плата управления сзади
Плата индикации сзади:
Ужасный монтаж смд:
Запуск
После припаивания всех шлейфов, кнопок и датчиков пришло время все это включить. Первый запуск выявил несколько проблем. Не светился последний большой индикатор, а остальные светились тускло. С первой проблемой расправился пропаиванием ножки смд-транзистора, со второй — регулировкой напряжения, выдаваемого lm317.
ОНО ЖИВОЕ!
Наручные самодельные часы на вакуумном индикаторе, сделанные в стиле стимпанк. Материал взят с сайта www.johngineer.com. Эти наручные часы собраны на основе ИВЛ-2 дисплея. Изначально купил несколько таких индикаторов, чтобы создать стандартные настольные часы, но после размышлений понял, что можно построить стильные наручные часы тоже. Индикатор имеет ряд особенностей, которые делают его более подходящим для этой цели, чем большинство других советских дисплеев. Вот параметры:
- Номинальный ток накала 60mA 2.4V, но работает и с 35mA 1.2V.
- Небольшой размер — всего 1.25 x 2.25″
- Может работать с относительно низким напряжением сетки 12V (до 24)
- Потребляет только 2,5 мА/сегмент при 12.5V
Все фотки можно сделать по-больше кликнув на них. Самым крупным препятствием на пути к успешному завершению проекта было питание. Поскольку эти часы задумывались как часть костюма, не беда что аккумулятор работает всего 10 часов. Остановился на AA и AAA.
Схема довольно проста. Микроконтроллер Atmel AVR ATMega88, и часы реального времени — DS3231. Но есть и другие микросхемы, намного дешевле, которые будут работать так же хорошо в генераторе.
VFD-дисплей управляется MAX6920 — 12-разрядный регистр сдвига с высоким напряжением (до 70V) выходов. Он прост в использовании, очень надежный и компактный. Также возможно для драйвера дисплея спаять кучу дискретных компонентов, но это было непрактично из-за нехватки места.
Напряжение аккумулятора питает также повышающий преобразователь на 5 В (MCP1640 SOT23-6), который нужен для нормальной работы AVR, DS3231, и MAX6920, а также выступает в качестве входного напряжения для второго повышающего преобразователя (NCP1403 SOT23-5), который производит 13V для напряжения сетки вакуумного индикатора.
В часах есть три датчика: один аналоговый и два цифровых. Аналоговый датчик — это фототранзистор, он используется для выявления уровня освещения (Q2). Цифровые датчики: BMP180 — давления и температуры, и MMA8653 — акселерометр для обнаружения движения. Оба цифровых датчика связаны по шине I2C с DS3231.
Латунные трубочки припаяны для красоты и защиты стеклянного дисплея наручных часов, а медные толстые проволоки 2 мм — для крепления кожаного ремешка. Полная принципиальная схема в оригинальной статье не приводится — смотрите подключение по даташитам к указанным микросхемам.
Часы со светодиодным семисегментным индикатором на микросхеме К145ИК1911
История этих часов появления на сайте немного иная, от других схем на сайте.
Обычный выходной, захожу на почту,роюсь, и на хожу наш читатель Федоренко Евгений, прислал схему часов,с описанием и со всеми фотографиями.
Кратко о схеме.Это схема электронных часов
своими руками
выполненная на микросхеме К145ИК1911
, и время выводится на семи сегментные светодиодные индикаторы.И так его статья.Смотрим все.
Схема часов:
Для увеличения снимка, его просто стоит увеличить нажатием.И сохранить компьютер.
Не так давно передо мной встала задача – либо купить новые часы, либо собрать новые самостоятельно. Требования к часам выдвигались простые – на дисплее должны отображаться часы и минуты, должен быть будильник, причём, в качестве устройства отображения должны использоваться светодиодные семисегментные индикаторы. Не хотелось нагромождать кучу логических микросхем, а с программированием контроллеров связываться не было желания. Выбор остановил на разработке советской электронной промышленности – микросхеме К145ИК1901
.
В магазине на тот момент её не оказалось, но был аналог, в 40 выводном корпусе – К145ИК1911. Наименование выводов данной микросхемы ничем не отличается от предыдущей, различие – в нумерации.
Минусом этих микросхем
является то, что они работают только с вакуумными люминесцентными индикаторами. Для обеспечения стыковки со светодиодным индикатором потребовалось построить схему согласования на полупроводниковых ключах.
В качестве драйверов строк – J1-J7 можно применить транзисторы
КТ3107 с буквенным индексом И, А, Б. Для драйверов выбора сегментов D1-D4 пойдут КТ3102И, либо КТ3117А, КТ660А, а также любые другие с максимальным напряжением коллектор-эмиттер не менее 35 В и током коллектора не менее 100 мА. Ток сегментов индикаторов регулируется резисторами в коллекторных цепях драйверов строк.
Для разделения разрядов часов и минут используется точка, мигающая с частотой 1 Гц.
Эта частота присутствует на выводе микросхемы Y4, после того, как начался отсчёт времени. В данной схеме также предусмотрена возможность отображения на дисплее вместо часов и минут – минут и секунд соответственно. Переход в данный режим осуществляется нажатием на кнопку «Сек.». Возврат к индикации времени часов и минут осуществляется после нажатия кнопки «Возврат». Данная микросхема обеспечивает возможность установки двух будильников одновременно, но в данной схеме второй будильник не используется за ненадобностью. В качестве звукоизлучателя использована пьезо-пищалка со встроенным генератором, с напряжением питания 12В. Сигнал включения будильника снимается с вывода Y5 микросхемы. Для обеспечения прерывистого звучания, сигнал модулируется частотой 1 Гц, используемой для индикации секундного ритма (точки). Для более подробного изучения функционала микросхемы К145ИК1901(11) можно обратиться к документации, которую в последнее время можно без труда найти в сети. Питание микросхемы должно осуществляться отрицательным напряжением -27В±10%. Согласно проведённым экспериментам, микросхема сохраняет работоспособность даже при напряжении -19В, причём точность хода часов при этом ничуть не пострадала.
Схема часов приведена на рисунке выше. В схеме были применены чип-резисторы типоразмера 1206, что позволяет существенно уменьшить габариты устройства. В качестве семисегментных индикаторов подойдут любые, с общим анодом.
Ну вот кончилась статься на данный момент.Которая будет еще дорабатываться и пополняться.А я выражаю благодарность ее автору-Федоренко Евгений,по всем вопросам а так же дать его почту.Пишите на Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Вспоминаю… Тридцать лет назад шесть индикаторов были маленьким сокровищем. Тот, кто мог тогда сделать с такими индикаторами часы на ТТЛ логике, считался искушенным знатоком своего дела.
Свечение газоразрядных индикаторов казалось более теплым. Через несколько минут мне стало интересно, заработают ли эти старые лампы, и захотелось что-нибудь сделать на них. Теперь-то сделать такие часы очень просто. Достаточно взять микроконтроллер…
Поскольку тогда же я увлекался программированием микроконтроллеров на языках высокого уровня, я решил немного поиграть. Я попытался сконструировать простые часы на цифровых газоразрядных индикаторах.
Цель конструирования
Я решил, что часы должны иметь шесть цифр, а время должно устанавливаться минимальным количеством кнопок. Кроме того, я хотел попытаться использовать несколько наиболее распространенных семейств микроконтроллеров разных производителей. Программу я намеревался писать на языке C.
Газоразрядным индикаторам для работы требуется высокое напряжение. Но иметь дело с опасным сетевым напряжением я не хотел. Часы должны были питаться безвредным напряжением 12 В.
Поскольку основной моей целью была игра, вы не найдете здесь описания механической конструкции и чертежей корпуса. При желании, вы сами сможете изменить часы в соответствии со своими вкусами и опытом.
Вот что у меня получилось:
- Индикация времени: ЧЧ ММ СС
- Индикация будильника: ЧЧ ММ —
- Режим отображения времени: 24 часа
- Точность ±1 секунда в день (зависит от кварцевого резонатора)
- Напряжении питания: 12 В
- Потребляемый ток: 100 мА
Схема часов
Для устройства с шестиразрядным цифровым дисплеем естественным решением был мультиплексный режим.
Назначение большинства элементов блок-схемы (Рисунок 1) понятно без комментариев. В определенной степени нестандартной задачей было создание преобразователя уровней ТТЛ в высоковольтные сигналы управления индикаторами. Драйверы анодов сделаны на высоковольтных NPN и PNP транзисторах. Схема позаимствована у Стефана Кнеллера (http://www.stefankneller.de).
ТТЛ микросхема 74141 содержит двоично-десятичный дешифратор и высоковольтный драйвер для каждой цифры. Возможно, заказать одну микросхему будет сложно. (Хотя я не знаю, производятся ли они вообще кем-либо сейчас). Но уж если вы нашли газоразрядные индикаторы, 74141 могут оказаться где-то рядом:-). Во времена ТТЛ логики альтернативы микросхеме 74141 практически не было. Так что попробуйте найти где-нибудь одну штуку .
Индикаторам требуется напряжение порядка 170 В. Разрабатывать специальную схему для преобразователя напряжения не имеет смысла, поскольку существует огромное количество микросхем повышающих преобразователей. Я выбрал недорогую и широко доступную микросхему MC34063. Схема преобразователя почти полностью скопирована с технического описания MC34063. К ней лишь добавлен силовой ключ T13. Внутренний ключ для такого высокого напряжения не подходит. В качестве индуктивности для преобразователя я использовал дроссель. Он показан на Рисунке 2; его диаметр 8 мм, а длина 10 мм.
КПД преобразователя вполне хороший, а выходное напряжение относительно безопасно. При токе нагрузки 5 мА выходное напряжение падает до 60 В. R32 выполняет функцию токоизмерительного резистора.
Для питания логики используется линейный регулятор U4. На схеме и на плате есть место для резервного аккумулятора. (3.6 В — NiMH или NiCd). D7 и D8 — это диоды Шоттки, а резистор R37 предназначен для ограничения зарядного тока в соответствии с характеристиками аккумулятора. Если вы собираете часы просто для развлечения, аккумулятор, D7, D8 и R37 вам не потребуются.
Окончательная схема показана на Рисунке 3.
Кнопки установки времени подключены через диоды. Состояние кнопок проверяется установкой логической «1» на соответствующем выходе. В качестве бонусной функции к выходу микроконтроллера подключен пьезоизлучатель. Чтобы заткнуть этот противный писк, используйте маленький выключатель. Для этого вполне подошел бы и молоток, но это уж на крайний случай:-).
Перечень компонентов схемы, рисунок печатной платы и схему размещения элементов можно найти в разделе «Загрузки».
Процессор
Управлять эти несложным устройством может практически любой микроконтроллер с достаточным количеством выводов, минимально необходимое количество которых указано в Таблице 1.
| Таблица 1. | ||||||||||||||||
|
Каждый изготовитель разрабатывает собственные семейства и типы микроконтроллеров. Расположение выводов индивидуально для каждого типа. Я постарался сконструировать универсальную плату для нескольких типов микроконтроллеров. На плате установлена 20-контактная панелька. С помощью нескольких проволочных перемычек вы можете адаптировать ее для разных микроконтроллеров.
Ниже перечислены микроконтроллеры, проверенные в этой схеме. Вы можете поэкспериментировать с другими типами. Преимуществом схемы является возможность использования разных процессоров. Радиолюбители, как правило, используют одно семейство микроконтроллеров и имеют соответствующий программатор и программный инструментарий. С микроконтроллерами других изготовителей могут возникнуть проблемы, поэтому я дал вам возможность выбора процессора из любимого семейства.
Вся специфика включения различных микроконтроллеров отражена в Таблицах 2…5 и на Рисунках 4…7.
| Таблица 2. | ||||||||||||
|
Примечание: Параллельно кварцевому резонатору включен резистор 10 МОм.
| Таблица 3. | ||||||||||||
|
Примечание: Микросхему необходимо развернуть в панельке на 180°.
| Таблица 4. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ).
| Таблица 5. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ); выводы, отмеченные звездочками, соедините с шиной питания +Ub через SMD резисторы 3.3 кОм.
Сравнив коды для разных микроконтроллеров, вы увидите, что они очень похожи. Различия имеются в доступе к портам и определению функций прерываний, а также в том, что зависит от компонентов обвязки.
Исходный код состоит из двух секций. Функция main()
настраивает порты и запускает таймер, формирующий сигналы прерывания. После этого программа сканирует нажатые кнопки и устанавливает соответствующие значения времени и будильника. Там же в главном цикле текущее время сравнивается с будильником и включается пьезоизлучатель.
Вторая часть является подпрограммой обработки прерываний от таймера. Подпрограмма, которая вызывается через каждую миллисекунду (в зависимости от возможностей таймера), инкрементирует переменные времени и управляет цифрами дисплея. Кроме того, проверяется состояние кнопок.
Запуск схемы
Монтаж компонентов и настройку начинайте с источника питания. Запаяйте регулятор U4 и окружавшие его компоненты. Проверьте наличие напряжения 5 В для микросхемы U2 и 4.6 В для U1. Следующим шагом соберите высоковольтный преобразователь. Подстроечным резистором R36 установите напряжение 170 В. Если диапазона подстройки окажется недостаточно, немного измените сопротивление резистора R33. Теперь установите микросхему U2, транзисторы и резисторы схемы драйверов анодов и цифр. Соедините входы U2 с шиной GND и последовательно подключайте по одному из резисторов R25 — R30 к шине питания +Ub. В соответствующих позициях должны зажигаться цифры индикаторов. На последнем этапе проверки схемы соедините с землей вывод 19 микросхемы U1 — должен запищать пьезоизлучатель.
Исходные коды и откомпилированные программы вы найдете в соответствующем ZIP файле в разделе «Загрузки». После зашивки программы в микроконтроллер тщательно проверьте каждый вывод в позиции U1 и установите необходимые перемычки из проволоки и припоя. Сверяйтесь с изображениями микроконтроллеров, приведенными выше. Если микроконтроллер запрограммирован и подключен правильно, должен заработать его генератор. Вы можете установить время и будильник. Внимание! На плате есть место для еще одной кнопки — это запасная кнопка для будущих расширений:-).
Проверьте точность частоты генератора. Если она не укладывается в ожидаемый диапазон, слегка измените номиналы конденсаторов C1 и C2. (Припаяйте параллельно конденсаторы небольшой емкости или замените их другими). Точность хода часов должна улучшиться.
Заключение
Небольшие 8-битные процессоры вполне приспособлены для языков высокого уровня. Изначально язык C не предназначался для небольших микроконтроллеров, однако для простых приложений вы прекрасно можете использовать его. Ассемблер лучше подойдет для сложных задач, требующих соблюдения критических времен или максимальной загрузки процессора. Для большинства радиолюбителей подойдут как бесплатные, так и условно-бесплатные ограниченные версии компилятора C.
Программирование на C одинаково для всех микроконтроллеров. Вы должны знать функции аппаратных средств (регистров и периферии) выбранного типа микроконтроллера. Будьте осторожны с битовыми операциями — язык C к манипуляциям с отдельными битами не приспособлен, что можно увидеть на примере исходного когда для ATtiny.
Закончили? Тогда настройтесь на созерцание вакуумных ламп и смотрите…
…возвращаются старые времена … 🙂
Примечание редакции
Полным аналогом SN74141 является микросхема К155ИД1, выпускавшаяся минским ПО «Интеграл».
Микросхему без труда можно найти в сети Интернет.
Вспоминаю… Тридцать лет назад шесть индикаторов были маленьким сокровищем. Тот, кто мог тогда сделать с такими индикаторами часы на ТТЛ логике, считался искушенным знатоком своего дела.
Свечение газоразрядных индикаторов казалось более теплым. Через несколько минут мне стало интересно, заработают ли эти старые лампы, и захотелось что-нибудь сделать на них. Теперь-то сделать такие часы очень просто. Достаточно взять микроконтроллер…
Поскольку тогда же я увлекался программированием микроконтроллеров на языках высокого уровня, я решил немного поиграть. Я попытался сконструировать простые часы на цифровых газоразрядных индикаторах.
Цель конструирования
Я решил, что часы должны иметь шесть цифр, а время должно устанавливаться минимальным количеством кнопок. Кроме того, я хотел попытаться использовать несколько наиболее распространенных семейств микроконтроллеров разных производителей. Программу я намеревался писать на языке C.
Газоразрядным индикаторам для работы требуется высокое напряжение. Но иметь дело с опасным сетевым напряжением я не хотел. Часы должны были питаться безвредным напряжением 12 В.
Поскольку основной моей целью была игра, вы не найдете здесь описания механической конструкции и чертежей корпуса. При желании, вы сами сможете изменить часы в соответствии со своими вкусами и опытом.
Вот что у меня получилось:
- Индикация времени: ЧЧ ММ СС
- Индикация будильника: ЧЧ ММ —
- Режим отображения времени: 24 часа
- Точность ±1 секунда в день (зависит от кварцевого резонатора)
- Напряжении питания: 12 В
- Потребляемый ток: 100 мА
Схема часов
Для устройства с шестиразрядным цифровым дисплеем естественным решением был мультиплексный режим.
Назначение большинства элементов блок-схемы (Рисунок 1) понятно без комментариев. В определенной степени нестандартной задачей было создание преобразователя уровней ТТЛ в высоковольтные сигналы управления индикаторами. Драйверы анодов сделаны на высоковольтных NPN и PNP транзисторах. Схема позаимствована у Стефана Кнеллера (http://www.stefankneller.de).
ТТЛ микросхема 74141 содержит двоично-десятичный дешифратор и высоковольтный драйвер для каждой цифры. Возможно, заказать одну микросхему будет сложно. (Хотя я не знаю, производятся ли они вообще кем-либо сейчас). Но уж если вы нашли газоразрядные индикаторы, 74141 могут оказаться где-то рядом:-). Во времена ТТЛ логики альтернативы микросхеме 74141 практически не было. Так что попробуйте найти где-нибудь одну штуку .
Индикаторам требуется напряжение порядка 170 В. Разрабатывать специальную схему для преобразователя напряжения не имеет смысла, поскольку существует огромное количество микросхем повышающих преобразователей. Я выбрал недорогую и широко доступную микросхему MC34063. Схема преобразователя почти полностью скопирована с технического описания MC34063. К ней лишь добавлен силовой ключ T13. Внутренний ключ для такого высокого напряжения не подходит. В качестве индуктивности для преобразователя я использовал дроссель. Он показан на Рисунке 2; его диаметр 8 мм, а длина 10 мм.
КПД преобразователя вполне хороший, а выходное напряжение относительно безопасно. При токе нагрузки 5 мА выходное напряжение падает до 60 В. R32 выполняет функцию токоизмерительного резистора.
Для питания логики используется линейный регулятор U4. На схеме и на плате есть место для резервного аккумулятора. (3.6 В — NiMH или NiCd). D7 и D8 — это диоды Шоттки, а резистор R37 предназначен для ограничения зарядного тока в соответствии с характеристиками аккумулятора. Если вы собираете часы просто для развлечения, аккумулятор, D7, D8 и R37 вам не потребуются.
Окончательная схема показана на Рисунке 3.
Кнопки установки времени подключены через диоды. Состояние кнопок проверяется установкой логической «1» на соответствующем выходе. В качестве бонусной функции к выходу микроконтроллера подключен пьезоизлучатель. Чтобы заткнуть этот противный писк, используйте маленький выключатель. Для этого вполне подошел бы и молоток, но это уж на крайний случай:-).
Перечень компонентов схемы, рисунок печатной платы и схему размещения элементов можно найти в разделе «Загрузки».
Процессор
Управлять эти несложным устройством может практически любой микроконтроллер с достаточным количеством выводов, минимально необходимое количество которых указано в Таблице 1.
| Таблица 1. | ||||||||||||||||
|
Каждый изготовитель разрабатывает собственные семейства и типы микроконтроллеров. Расположение выводов индивидуально для каждого типа. Я постарался сконструировать универсальную плату для нескольких типов микроконтроллеров. На плате установлена 20-контактная панелька. С помощью нескольких проволочных перемычек вы можете адаптировать ее для разных микроконтроллеров.
Ниже перечислены микроконтроллеры, проверенные в этой схеме. Вы можете поэкспериментировать с другими типами. Преимуществом схемы является возможность использования разных процессоров. Радиолюбители, как правило, используют одно семейство микроконтроллеров и имеют соответствующий программатор и программный инструментарий. С микроконтроллерами других изготовителей могут возникнуть проблемы, поэтому я дал вам возможность выбора процессора из любимого семейства.
Вся специфика включения различных микроконтроллеров отражена в Таблицах 2…5 и на Рисунках 4…7.
| Таблица 2. | ||||||||||||
|
Примечание: Параллельно кварцевому резонатору включен резистор 10 МОм.
| Таблица 3. | ||||||||||||
|
Примечание: Микросхему необходимо развернуть в панельке на 180°.
| Таблица 4. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ).
| Таблица 5. | ||||||||||||
|
Примечание: Добавьте SMD компоненты R и C к выводу RESET (10 кОм и 100 нФ); выводы, отмеченные звездочками, соедините с шиной питания +Ub через SMD резисторы 3.3 кОм.
Сравнив коды для разных микроконтроллеров, вы увидите, что они очень похожи. Различия имеются в доступе к портам и определению функций прерываний, а также в том, что зависит от компонентов обвязки.
Исходный код состоит из двух секций. Функция main()
настраивает порты и запускает таймер, формирующий сигналы прерывания. После этого программа сканирует нажатые кнопки и устанавливает соответствующие значения времени и будильника. Там же в главном цикле текущее время сравнивается с будильником и включается пьезоизлучатель.
Вторая часть является подпрограммой обработки прерываний от таймера. Подпрограмма, которая вызывается через каждую миллисекунду (в зависимости от возможностей таймера), инкрементирует переменные времени и управляет цифрами дисплея. Кроме того, проверяется состояние кнопок.
Запуск схемы
Монтаж компонентов и настройку начинайте с источника питания. Запаяйте регулятор U4 и окружавшие его компоненты. Проверьте наличие напряжения 5 В для микросхемы U2 и 4.6 В для U1. Следующим шагом соберите высоковольтный преобразователь. Подстроечным резистором R36 установите напряжение 170 В. Если диапазона подстройки окажется недостаточно, немного измените сопротивление резистора R33. Теперь установите микросхему U2, транзисторы и резисторы схемы драйверов анодов и цифр. Соедините входы U2 с шиной GND и последовательно подключайте по одному из резисторов R25 — R30 к шине питания +Ub. В соответствующих позициях должны зажигаться цифры индикаторов. На последнем этапе проверки схемы соедините с землей вывод 19 микросхемы U1 — должен запищать пьезоизлучатель.
Исходные коды и откомпилированные программы вы найдете в соответствующем ZIP файле в разделе «Загрузки». После зашивки программы в микроконтроллер тщательно проверьте каждый вывод в позиции U1 и установите необходимые перемычки из проволоки и припоя. Сверяйтесь с изображениями микроконтроллеров, приведенными выше. Если микроконтроллер запрограммирован и подключен правильно, должен заработать его генератор. Вы можете установить время и будильник. Внимание! На плате есть место для еще одной кнопки — это запасная кнопка для будущих расширений:-).
Проверьте точность частоты генератора. Если она не укладывается в ожидаемый диапазон, слегка измените номиналы конденсаторов C1 и C2. (Припаяйте параллельно конденсаторы небольшой емкости или замените их другими). Точность хода часов должна улучшиться.
Заключение
Небольшие 8-битные процессоры вполне приспособлены для языков высокого уровня. Изначально язык C не предназначался для небольших микроконтроллеров, однако для простых приложений вы прекрасно можете использовать его. Ассемблер лучше подойдет для сложных задач, требующих соблюдения критических времен или максимальной загрузки процессора. Для большинства радиолюбителей подойдут как бесплатные, так и условно-бесплатные ограниченные версии компилятора C.
Программирование на C одинаково для всех микроконтроллеров. Вы должны знать функции аппаратных средств (регистров и периферии) выбранного типа микроконтроллера. Будьте осторожны с битовыми операциями — язык C к манипуляциям с отдельными битами не приспособлен, что можно увидеть на примере исходного когда для ATtiny.
Закончили? Тогда настройтесь на созерцание вакуумных ламп и смотрите…
…возвращаются старые времена … 🙂
Примечание редакции
Полным аналогом SN74141 является микросхема К155ИД1, выпускавшаяся минским ПО «Интеграл».
Микросхему без труда можно найти в сети Интернет.
Предлагаю вашему вниманию электронные часы на микроконтроллере
. Схема часов очень проста, содержит минимум деталей, доступна для повторения начинающим радиолюбителям.
Конструкция собрана на микроконтроллере и часов реального времени DS1307
. В качестве индикатора текущего времени использован четырехразрядный семисегментный светодиодный индикатор (ультраяркий, голубого цвета свечения, что неплохо смотрится в темное время, и, заодно, часы играют роль ночника). Управление часами происходит двумя кнопками. Благодаря использованию микросхемы часов реального времени DS1307, алгоритм программы получился довольно простым. Общение микроконтроллера с часами реального времени происходит по шине I2C, и организованно программным путем.
Схема часов:
К сожалению, в схеме есть ошибка:
— выводы МК к базам транзисторов нужно подключать:
РВ0 к Т4, РВ1 к Т3, РВ2 к Т2, РВ3 к Т1
или поменять подключение коллекторов транзисторов к разрядам индикатора:
Т1 к DP1 ….. Т4 к DP4
Детали, используемые в схеме часов:
♦ микроконтроллер ATTiny26:
♦ часы реального времени DS1307:
♦ 4-разрядный семисегментный светодиодный индикатор – FYQ-5641UB -21 с общим катодом (ультраяркий, голубого цвета свечения):
♦ кварц 32,768 кГц, с входной емкостью 12,5 пф (можно взять с материнской платы компьютера), от этого кварца зависит точность хода часов:
♦ все транзисторы — NPN-структуры, можно применить любые (КТ3102, КТ315 и их зарубежные аналоги), я применил ВС547С
♦ микросхемный стабилизатор напряжения типа 7805
♦ все резисторы мощностью 0,125 ватт
♦ полярные конденсаторы на рабочее напряжение не ниже напряжения питания
♦ резервное питание DS1307 – 3 вольтовый литиевый элемент CR2032
Для питания часов можно использовать любое ненужное зарядное устройство сотового телефона (в этом случае, если напряжение на выходе зарядного устройства в пределах 5 вольт ± 0,5 вольта, часть схемы — стабилизатор напряжения на микросхеме типа 7805, можно исключить)
Ток потребления устройством составляет — 30 мА.
Батарейку резервного питания часов DS1307 можно и не ставить, но тогда, при пропадании напряжения в сети, текущее время придется устанавливать заново.
Печатная плата устройства не приводится, конструкция была собрана в корпусе от неисправных механических часов. Светодиод (с частотой мигания 1 Гц, от вывода SQW DS1307) служит для разделения часов и минут на индикаторе.
Установки микроконтроллера заводские: тактовая частота — 1МГц, FUSE-биты трогать не надо.
Алгоритм работы часов
(в Algorithm Builder):
1. Установка указателя стека
2. Настройка таймера Т0:
— частота СК/8
— прерывания по переполнению (при такой предустановленной частоте вызов прерывания происходит каждые 2 миллисекунды)
3. Инициализация портов (выводы РА0-6 и РВ0-3 настраиваются на выход, РА7 и РВ6 на вход)
4. Инициализация шины I2C (выводы РВ4 и РВ5)
5. Проверка 7-го бита (СН) нулевого регистра DS1307
6. Глобальное разрешение прерывания
7. Вход в цикл с проверкой нажатия кнопки
При первом включении, или повторном включении при отсутствии резервного питания DS307, происходит переход в первоначальную установку текущего времени. При этом: кнопка S1 – для установки времени, кнопка S2 – переход к следующему разряду. Установленное время – часы и минуты записываются в DS1307 (секунды устанавливаются в ноль), а также вывод SQW/OUT (7-й вывод) настраивается на генерацию прямоугольных импульсов с частотой 1 Гц.
При нажатии кнопки S2 (S4 — в программе) происходит глобальный запрет прерываний, программа переходит в подпрограмму коррекции времени. При этом, кнопками S1 и S2 устанавливаются десятки и единицы минут, затем, с 0 секунд, нажатием кнопки S2 происходит запись уточненного времени в DS1307, разрешение глобального прерывания и возвращение в основную программу.
Часы показали хорошую точность хода, уход времени за месяц — 3 секунды.
Для улучшения точности хода, кварц рекомендуется подключать к DS1307, как указано в даташите:
Программа написана в среде «Algorithm Builder».
Вы можете, на примере программы часов, ознакомиться с алгоритмом общения микроконтроллера с другими устройствами по шине I2C (в алгоритме подробно прокомментирована каждая строчка).
Фотография собранного устройства и печатная плата в формате.lay от читателя сайта Анатолия Пильгук, за что ему огромное спасибо!
В устройстве применены: Транзисторы — СМД ВС847 и ЧИП резисторы
Приложения к статье:
(42,9 KiB, 3 038 hits)
(6,3 KiB, 4 058 hits)
(3,1 KiB, 2 500 hits)
(312,1 KiB, 5 833 hits)
Второй вариант программы часов в АБ (для тех у кого нескачивается верхний)
(11,4 KiB, 1 842 hits)
Как видно из названия, главное предназначение данного устройства — узнавать текущее время и дату. Но оно имеет ещё множество других полезных функций. Идея его создания появилась после того, как мне на глаза попались полусломанные часы с относительно большим (для наручных) металлическим корпусом. Я подумал, что туда можно вставить самодельные часы, возможности которых ограничиваются только собственной фантазией и умением. В результате появилось устройство со следующими функциями:
1. Часы — календарь:
- Учитываются високосные годы
Отсчёт и вывод на индикатор часов, минут, секунд, дня недели, числа, месяца, года.
Наличие автоматической корректировки текущего времени, которая производится каждый час (максимальные значения +/-9999 ед., 1 ед. = 3,90625 мс.)
Вычисление дня недели по дате (для текущего столетия)
Автоматический переход на летнее и зимнее время (отключаемый)
2. Два независимых будильника (при срабатывании звучит мелодия)
3. Таймер с дискретностью 1 сек. (Максимальное время отсчета 99ч 59м 59с)
4. Двухканальный секундомер с дискретностью счета 0,01 сек. (максимальное время счета 99ч 59м 59с)
5. Секундомер с дискретностью счета 1 сек. (максимальное время счета 99 суток)
6. Термометр в диапазоне от -5°С. до 55°С (ограничен температурным диапазоном нормальной работы устройства) с шагом 0,1°С.
7. Считыватель и эмулятор электронных ключей — таблеток типа DS1990 по протоколу Dallas 1-Wire (память на 50 штук, в которой уже имеется несколько универсальных ”ключей-вездеходов”) с возможностью побайтного просмотра кода ключа.
8. Дистанционный пульт управления на ИК лучах (реализована только команда «Сделать снимок») для цифровых фотокамер «Pentax», «Nikon», «Canon»
9. Светодиодный фонарик
10. 7 мелодий
11. Звуковой сигнал в начале каждого часа (отключаемый)
12. Звуковое подтверждение нажатия кнопок (отключаемое)
13. Контроль напряжения батареи питания с функцией калибровки
14. Цифровая регулировка яркости индикатора
Может такая функциональность и избыточна, но мне нравятся универсальные вещи, ну и плюс моральное удовлетворение от того, что данные часы будут сделаны своими руками.
Принципиальная схема часов
Устройство построено на микроконтроллере АТmega168PA-AU. Часы тикают по таймеру Т2, работающему в асинхронном режиме от часового кварца на 32768 Гц. Микроконтроллер почти всё время находится в спящем режиме (индикатор при этом выключен), просыпаясь раз в секунду, чтобы добавить эту самую секунду к текущему времени и снова засыпает. В активном режиме МК тактируется от внутреннего RC осциллятора на 8 МГц, но внутренний прескалер делит её на 2, в итоге ядро тактируется от 4 МГц. Для индикации используется четыре одноразрядных светодиодных цифровых семисегментных индикатора c общим анодом и децимальной точкой. Так же имеется 7 статусных светодиодов, назначение которых следующее:
D1- Признак отрицательного значения (минус)
D2- Признак работающего секундомера (мигает)
D3- Признак включенного первого будильника
D4- Признак включенного второго будильника
D5- Признак подачи звукового сигнала в начале каждого часа
D6- Признак работающего таймера (мигает)
D7- Признак низкого напряжения батареи питания
R1-R8 — токоограничительные резисторы сегментов цифровых индикаторов HG1-HG4 и светодиодов D1-D7. R12,R13 – делитель для контроля напряжения батареи. Поскольку напряжение питания часов 3V, а белому светодиоду D9 требуется около 3,4-3,8V при номинальном токе потребления, то он светится не в полную силу (но её хватает, чтобы не споткнуться в темноте) и поэтому подключен без токоограничительного резистора. Элементы R14, Q1, R10 предназначены для управления инфракрасным светодиодом D8 (реализация дистанционного управления для цифровых фотокамер). R19, R20, R21 служат для сопряжения при общении с устройствами, имеющими интерфейс 1-Wire. Управление осуществляется тремя кнопками, которые я условно назвал: MODE (режим), UP (вверх), DOWN (вниз). Первая из них также предназначена для пробуждения МК по внешнему прерыванию (при этом индикация включается), поэтому она подключена отдельно на вход PD3. Нажатия остальных кнопок определяется при помощи АЦП и резисторов R16,R18. Если кнопки не нажимаются в течении 16 сек, то МК засыпает и индикатор гаснет. При нахождении в режиме “Пульт ДУ для фотокамер”
этот интервал составляет 32 сек., а при включенном фонарике — 1 минуту. Также МК можно усыпить вручную, используя кнопки управления. При запущенном секундомере с дискретностью счета 0,01 сек. устройство не переходит в спящий режим.
Печатная плата
Устройство собрано на двухсторонней печатной плате круглой формы по размеру внутреннего диаметра корпуса наручных часов. Но при изготовлении я использовал две односторонние платы толщиной 0,35 мм. Такую толщину опять же получил отслоив её от двухстороннего стеклотекстолита толщиной 1,5 мм. Платы затем склеил. Все это делалось потому что, у меня не было тонкого двухстороннего стеклотекстолита, а каждый сэкономленный миллиметр толщины в ограниченном внутреннем пространстве корпуса часов очень ценен, да и отпала надобность совмещения при изготовлении печатных проводников методом ЛУТ. Рисунок печатной платы и расположение деталей находятся в прилагаемых файлах. На одной стороне размещены индикаторы и токоограничительные резисторы R1-R8. На обратной — все остальные детали. Имеются два сквозных отверстия для белого и инфракрасного светодиодов.
Контакты кнопок и держатель батареи выполнены из гибкой пружинящей листовой стали толщиной 0,2…0,3мм. и залужены. Ниже приведены фото платы с двух сторон:
Конструкция, детали и их возможная замена
Микроконтроллер ATmega168PA-AU можно заменить на ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Цифровые индикаторы — 4 штуки KPSA02-105 суперяркие красного цвета свечения с высотой цифры 5,08мм. Mожно поставить из этой же серии KPSA02-xxx или KCSA02-xxx. (только не зеленые – они будут слабо светиться) Другие аналоги подобных размеров с достойной яркостью мне неизвестны. У HG1, HG3 соединение катодов сегментов отличается от HG2, HG4, потому что мне так было удобнее для разводки печатной платы. В связи с этим для них в программе применена различная таблица знакогенератора. Используемые резисторы и конденсаторы SMD для поверхностного монтажа типоразмеров 0805 и 1206, светодиоды D1-D7 типоразмера 0805. Белый и инфракрасный светодиоды диаметром 3мм. На плате имеется 13 сквозных отверстий, в которые необходимо установить перемычки. В качестве температурного датчика применён DS18B20 c интерфейсом 1-Wire. LS1 – обычная пьезоэлектрическая пищалка, вставляется в крышку. Одним контактом она соединяется с платой при помощи пружинки, установленной на ней, другим соединяется с корпусом часов самой крышкой. Кварцевый резонатор от наручных часов.
Программирование, прошивка, фьюзы
Для внутрисхемного программирования на плате имеются только 6 круглых контактных пятачка (J1), так как полноценный разъем не уместился по высоте. К программатору их подключал, используя контактное устройство, сделанное из штыревой вилки PLD2x3 и напаянных на них пружинками, прижимая их одной рукой к пятачкам. Ниже прилагается фото приспособления.
Я использовал его, так как в процессе отладки приходилось много раз перепрошивать МК. При разовой прошивке проще подпаять к пятачкам тонкие провода, подключенные к программатору, а после снова отпаять. МК удобнее прошивать без батареи, но чтобы питание поступало либо от внешнего источника +3V, либо от программатора c таким же напряжением питания. Программа написана на ассемблере в среде VMLAB 3.15. Исходные коды, прошивки для FLASH и EEPROM в приложении.
FUSE-биты микроконтроллера DD1 должны быть запрограммированы следующим образом:
CKSEL3…0 = 0010 — тактирование от внутреннего RC осциллятора 8 МГц;
SUT1…0 =10 — Start-up time: 6 CK + 64 ms;
CKDIV8 = 1 — делитель частоты на 8 отключён;
CKOUT = 1 — Output Clock on CKOUT запрещен;
BODLEVEL2…0 = 111 — контроль напряжения питания отключён;
EESAVE = 0 — стирание EEPROM при программировании кристалла запрещено;
WDTON = 1 — Нет постоянного включения Watchdog Timer;
Остальные FUSE – биты лучше не трогать. FUSE–бит запрограммирован, если установлен в “0”.
Прошивка EEPROM прилагаемым в архиве дампом обязательна.
В первых ячейках EEPROM размещается начальные параметры устройства. В приведённой ниже таблице описывается назначение некоторых из них, которые можно менять в разумных пределах.
| Адрес ячейки | Назначение | Параметр | Примечание | |
| Величина напряжения батареи, при которой происходит сигнал о её низком уровне | 260($104) (2,6V) | |||
| коэффициент для коррекции значения измеренного напряжения батареи | ||||
| интервал времени на переход в режим сна | 1 ед. = 1 сек | |||
| интервал времени на переход в режим сна при включенном фонарике | 1 ед. = 1 сек | |||
| интервал времени на переход в режим сна при нахождении в режиме ДУ для фотокамер | 1 ед. = 1 сек | |||
| Здесь хранятся номера IButton ключей |
Небольшие пояснения по пунктам:
1 пункт. Здесь указывается величина напряжения на батарее, при которой загорится светодиод, сигнализирующий о её низком значении. Я поставил 2,6V (параметр — 260). Если нужно другое, например 2,4V, то надо записать 240($00F0). В ячейку по адресу $0000 заносится младший байт, соответственно в $0001 – старший.
2 пункт. Поскольку я не установил на плату переменный резистор для подстройки точности измерения напряжения батареи питания ввиду отсутствия места, то я ввел программную калибровку. Порядок калибровки для точного измерения следующий: изначально в данной ячейке EEPROM записан коэффициент 1024($400), необходимо перевести устройство в активный режим и посмотреть на индикаторе напряжение, и тут же замерить вольтметром реальное напряжение на батарее. Коэффициент коррекции (К), который необходимо выставить, вычисляется по формуле: K=Uр/Uи*1024 где Uр – реальное напряжение, измеренное вольтметром, Uи – напряжение которое, измерило само устройство. После подсчёта коэффициента ”K” его заносят в устройство (как это делается сказано в инструкции по эксплуатации). После калибровки у меня погрешность не превысила 3%.
3 пункт. Здесь задается параметр времени, через которое устройство перейдет в спящий режим, если кнопки не нажимаются. У меня стоит 16 сек. Если допустим надо, чтобы засыпало через 30 сек, то надо записать 30($26).
В 4 и 5 пунктах аналогично.
6 пункт. По адресу $0030 хранится код семейства нулевого ключа (dallas 1-Wire), затем его 48 битный номер и CRC. И так 50 ключей последовательно.
Настройка, особенности работы
Настройка устройства сводится к калибровке измерения напряжения батареи, как описано выше. Также необходимо засечь отклонение хода часов за 1 час, посчитать и внести соответствующее значение коррекции (процедура описана в инструкции по эксплуатации).
Устройство питается от литиевой батареи CR2032 (3V) и потребляет в режиме сна примерно 4 мкА, а в активном режиме 5…20 мА в зависимости от яркости индикатора. При ежедневном пятиминутном использовании активного режима батареи должно хватить примерно на 2….8 месяцев в зависимости от яркости. Корпус часов соединен с минусом батареи.
Считывание ключей проверялось на DS1990. Эмуляция проверена на домофонах ”МЕТАКОМ”. Под порядковыми номерами от 46 до 49(последние 4) прошиты (все ключи хранятся в EEPROM, их можно изменять перед прошивкой) универсальные ключи для домофонов. Ключ, прописанный под номером 49 открывал все домофоны ”МЕТАКОМ”, которые мне попадались, остальные универсальные ключи тестировать не довелось, их коды я взял из сети.
Дистанционное управление для фотокамер проверялось на моделях Pentax optio L20, Nikon D3000. Canon не удалось заполучить для проверки.
Инструкция пользователя занимает 13 страниц, поэтому я не стал её включать в статью, а вынес в приложение в формате PDF.
Архив содержит:
Схема в и GIF;
Рисунок печатной платы и расположение элементов в формате ;
Прошивка и исходники на ассемблере;
Список радиоэлементов
| Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
|---|---|---|---|---|---|---|
| DD1 | МК AVR 8-бит | ATmega168PA | 1 | PA-AU | В блокнот | |
| U2 | Датчик температуры | DS18B20 | 1 | В блокнот | ||
| Q1 | MOSFET-транзистор | 2N7002 | 1 | В блокнот | ||
| С1, С2 | Конденсатор | 30 пФ | 2 | В блокнот | ||
| С3, С4 | Конденсатор | 0.1 мкФ | 2 | В блокнот | ||
| С5 | Электролитический конденсатор | 47 мкФ | 1 | В блокнот | ||
| R1-R8, R17 | Резистор | 100 Ом | 9 | В блокнот | ||
| R9 | Резистор | 10 кОм | 1 | В блокнот | ||
| R10 | Резистор | 8.2 Ом | 1 | В блокнот | ||
| R11 | Резистор | 300 Ом | 1 | В блокнот | ||
| R12 | Резистор | 2 МОм | 1 | В блокнот | ||
| R13 | Резистор | 220 кОм | 1 | В блокнот | ||
| R14 | Резистор | 30 кОм | 1 | В блокнот | ||
| R15, R19 | Резистор | 4.7 кОм | 2 | В блокнот | ||
| R16 | Резистор | 20 кОм | 1 |
Часы со светодиодной подсветкой и пульсирующей минутной стрелкой на микроконтроллере Arduino
Эти уникальные часы со светодиодной подсветкой и пульсирующей минутной стрелкой удалось изготовить благодаря использованию микросхемы ШИМ-контроллера TLC5940. Его главной задачей является расширить количество контактов с ШИМ-модуляцией. Еще одной особенностью данных часов является переделанный аналоговый вольтметр в прибор измеряющий минуты. Для этого на стандартном принтере была распечатана новая шкала и наклеена поверх старой. Как таковая, 5-я минута не отсчитывается, просто в течение пятой минуты счетчик времени показывает стрелку, упершуюся в конец шкалы (зашкаливает). Основное управление реализовано на микроконтроллере Arduino Uno.
Для того чтобы подсветка часов не светилась слишком ярко в темной комнате, была реализована схема автоматической подстройки яркости в зависимости от освещенности (использовался фоторезистор).
Шаг 1: Необходимые компоненты
Вот что потребуется:
- Модуль аналогового вольтметра на 5V DC;
- Микроконтроллер Arduino UNO или другой подходящий Arduino;
- Монтажная плата Arduino (прото плата);
- Модуль часов реального времени DS1307 (RTC);
- Модуль с ШИМ-контроллером TLC5940;
- Лепестковые светодиоды подсветки – 12 шт.;
- Компоненты для сборки схемы автоматического регулирования яркости (LDR).
Также, для изготовления некоторых других компонентов проекта желательно иметь доступ к 3D-принтеру и станку лазерной резки. Предполагается, что этот доступ у вас есть, поэтому в инструкции на соответствующих этапах будут прилагаться чертежи для изготовления.
Шаг 2: Циферблат
Циферблат состоит из трех деталей (слоев) вырезанных на станке лазерной резки из 3 мм листа МДФ, которые скрепляются между собой с помощью болтов. Пластина без прорезей (внизу справа на картинке) помещается под другой пластиной для позиционирования светодиодов (внизу слева). Затем, отдельные светодиоды помещаются в соответствующие пазы, и сверху одевается лицевая панель (сверху на рисунке). По краю циферблата просверлены четыре отверстия, через которые все три детали скрепляются вместе с помощью болтов.
- Для проверки работоспособности светодиодов на этом этапе, использовалась плоская батарейка CR2032;
- Для фиксации светодиодов использовались небольшие полоски липкой ленты, которые приклеивались с задней стороны светодиодов;
- Все ножки светодиодов были предварительно согнуты соответствующим образом;
- Отверстия по краям были просверлены заново, через которые и выполнялось скрепление болтами. Оказалось, что это намного удобнее.
Технический чертеж деталей для циферблата доступен по :
Шаг 3: Разработка схемы
На этом этапе была разработана электрическая схема. Для этого использовались различные учебники и руководства. Не будем сильно углубляться в этот процесс, в двух файлах ниже представлена готовая электрическая схема, которая была использована в этом проекте.
Шаг 4: Подключение монтажной платы Arduino
- Первым делом надо распаять все игольчатые контакты на монтажных и секционных платах;
- Далее, ввиду того, что питание 5V и GND используют очень много плат и периферийных устройств, для надежности, было припаяно по два провода на 5V и GND на монтажной плате;
- Далее был установлен ШИМ-контроллер TLC5940 рядом с используемыми контактами;
- После выполняется подключение контроллера TLC5940, согласно схеме подключения;
- Для того чтобы была возможность использовать батарею, был установлен модуль RTC на краю монтажной платы. Если припаять его посередине платы, то не будет видно обозначение контактов;
- Выполнено подключение модуля RTC, согласно схеме подключения;
- Собрана схема автоматического контроля яркости (LDR), ознакомиться можно по ссылке
- Выполнено подключение проводов для вольтметра, путем подключения проводов к выводу 6 и GND.
- В конце были припаяны 13 проводов для светодиодов (На практике оказалось, что это было лучше сделать до того, как приступать к шагу 3).
Шаг 5: Программный код
Программный код, приложенный ниже, был собран из различных кусков для компонентов часов, найденных в интернете. Он был полностью отлажен и в настоящее время полностью работоспособен, к тому же были добавлены довольно подробные комментарии. Но перед загрузкой в микроконтроллер учтите следующие пункты:
- Перед прошивкой Arduino, нужно раскомментировать строку, которая устанавливает время:
rtc.adjust(DateTime(__DATE__, __TIME__))
После прошивки контроллера с этой строкой (время задано), нужно опять ее закомментировать и прошить контроллер заново. Это позволяет модулю RTC использовать батарею, для запоминания времени, если пропадет основное питание. - Каждый раз, когда вы используете «Tlc.set ()», вам нужно использовать «Tlc.update»
Шаг 6: Внешнее кольцо
Внешнее кольцо для часов было напечатано на 3D-принтере Replicator Z18. Оно прикрепляется к часам с помощью винтов на лицевой стороне часов. Ниже прилагается файл с 3D-моделью кольца для печати на 3D-принтере.
Шаг 7: Сборка часов
Микроконтроллер Arduino со всей остальной электроникой был закреплен на задней стороне часов с помощью саморезов и гаек в качестве распорок. Затем подключены все светодиоды, аналоговый вольтметр и LDR к проводам, которые ранее были подпаяны к монтажной плате. Все светодиоды соединены между собой одной ножкой и подключены к контакту VCC на контроллере TLC5940 (по кругу просто припаян кусок проволоки).
Пока все это не очень хорошо изолировано от коротких замыканий, но работа над этим будет продолжена в следующих версиях.
Светодиодные простые часы можно сделать на дешёвом контроллере PIC16F628A. Конечно, в магазинах полно различных электронных часов, но по функциям у них может или нехватать термометра, или будильника, или они не светятся в темноте. Да и вообще, иногда прото хочется что-то спаять сам, а не покупать готовое. Чтобы увеличить рисунок схемы — клац.
В предлагаемых часах есть календарь. В нём два варианта отображения даты — месяц цифрой или слогом, всё это настрайвается после ввода даты переключением дальше кнопкой S1
во время отображения нужного параметра, термометр. есть прошивки под разные датчики. Смотрите устройство внутри корпуса:
Все знают, что кварцевые резонаторы не идеальные по точности, и в течение нескольких недель набегает погрешность. Для борьбы с этим делом, в часах предусмотрена корекция хода, которая устанавливается параметрами SH
и SL
. Подробнее:
SH=42 и SL=40 — это вперёд на 5 минут в сутки;
SH=46 и SL=40 — это назад на 3 минуты в сутки;
SH=40 и SL=40 — это вперёд на 2 минуты в сутки;
SH=45 и SL=40 — это назад на 1 минуту в сутки;
SH=44 и SL=С0 — это вперёд на 1 минуту в сутки;
SH=45 и SL=00 — это корекция отключена.
Таким образом можно добится идеальной точности. Хотя придётся несколько раз погонять коррекцию, пока выставите идеально. А теперь наглядно показывается работа электронных часов:
температура 29градусов цельсия
В качестве индикаторов можно поставить или светодиодные циферные сборки, что указаны в самой схеме, или заменить их обычными круглыми сверхяркими светодиодами — тогда эти часы будут видны издалека и их можно вывешивать даже на улице.
Наручные самодельные часы на вакуумном индикаторе, сделанные в стиле стимпанк. Материал взят с сайта www.johngineer.com. Эти наручные часы собраны на основе ИВЛ-2 дисплея. Изначально купил несколько таких индикаторов, чтобы создать стандартные настольные часы, но после размышлений понял, что можно построить стильные наручные часы тоже. Индикатор имеет ряд особенностей, которые делают его более подходящим для этой цели, чем большинство других советских дисплеев. Вот параметры:
- Номинальный ток накала 60mA 2.4V, но работает и с 35mA 1.2V.
- Небольшой размер — всего 1.25 x 2.25″
- Может работать с относительно низким напряжением сетки 12V (до 24)
- Потребляет только 2,5 мА/сегмент при 12.5V
Все фотки можно сделать по-больше кликнув на них. Самым крупным препятствием на пути к успешному завершению проекта было питание. Поскольку эти часы задумывались как часть костюма, не беда что аккумулятор работает всего 10 часов. Остановился на AA и AAA.
Схема довольно проста. Микроконтроллер Atmel AVR ATMega88, и часы реального времени — DS3231. Но есть и другие микросхемы, намного дешевле, которые будут работать так же хорошо в генераторе.
VFD-дисплей управляется MAX6920 — 12-разрядный регистр сдвига с высоким напряжением (до 70V) выходов. Он прост в использовании, очень надежный и компактный. Также возможно для драйвера дисплея спаять кучу дискретных компонентов, но это было непрактично из-за нехватки места.
Напряжение аккумулятора питает также повышающий преобразователь на 5 В (MCP1640 SOT23-6), который нужен для нормальной работы AVR, DS3231, и MAX6920, а также выступает в качестве входного напряжения для второго повышающего преобразователя (NCP1403 SOT23-5), который производит 13V для напряжения сетки вакуумного индикатора.
В часах есть три датчика: один аналоговый и два цифровых. Аналоговый датчик — это фототранзистор, он используется для выявления уровня освещения (Q2). Цифровые датчики: BMP180 — давления и температуры, и MMA8653 — акселерометр для обнаружения движения. Оба цифровых датчика связаны по шине I2C с DS3231.
Латунные трубочки припаяны для красоты и защиты стеклянного дисплея наручных часов, а медные толстые проволоки 2 мм — для крепления кожаного ремешка. Полная принципиальная схема в оригинальной статье не приводится — смотрите подключение по даташитам к указанным микросхемам.
Предлагаю для повторения схему простых электронных часов с будильником, выполненные на типа PIC16F628A. Большим плюсом данных часов является светодиодный индикатор типа АЛС, для отображения времени. Лично мне порядком надоели всевозможные ЖКИ и хочется иметь возможность видеть время из любой точки комнаты в том числе в темноте, а не только прямо с хорошим освещением. Схема содержит минимум деталей и имеет отличную повторяемость. Часы испытаны на протяжении месяца, что показало их надежность и работоспособность. Думаю из всех схем в интернете, эта наиболее простая в сборке и запуске.
Принципиальная схема электронных часов с будильником на микроконтроллере:
Как видно из схемы часов, является единственной микросхемой, используемой в данном устройстве. Для задания тактовой частоты используется кварцевый резонатор на 4 МГц. Для отображения времени использованы индикаторы красного цвета с общим анодом, каждый индикатор состоит из двух цифр с десятичными точками. В случае использования пьезоизлучателя, конденсатор С1 — 100мкФ можно не ставить.
Можно применить любые индикаторы с общим анодом, лишь бы каждая цифра имела собственный анод. Чтоб электронные часы были хорошо видны в темноте и с большой дистанции — старайтесь выбрать АЛС-ки чем покрупнее.
Индикация в часах осуществляется динамически. В данный конкретный момент времени отображается лишь одна цифра, что позволяет значительно снизить потребление тока. Аноды каждой цифры управляются микроконтроллером PIC16F628A. Сегменты всех четырех цифр соединены вместе и через токоограничивающие резисторы R1 … R8 подключены к выводам порта МК. Поскольку засвечивание индикатора происходит очень быстро, мерцание цифр становится незаметным.
Для настройки минут, часов и будильника — используются кнопки без фиксации. В качестве выхода для сигнала будильника используется вывод 10, а в качестве усилителя — каскад на транзисторах VT1,2. Звукоизлучателем является пьезоэлемент типа ЗП. Для улучшения громкости вместо него можно поставить небольшой динамик.
Питаются часы от стабилизированного источника напряжением 5В. Можно и от батареек. В часах реализовано 9 режимов индикации. Переход по режимам осуществляется кнопками «+» и «-«. Перед выводом на индикацию самих показаний, на индикаторы выводится короткая подсказка названия режима. Длительность вывода подсказки — одна секунда.
Кнопкой «Коррекция» часы — будильник переводятся в режим настроек. При этом кратковременная подсказка выводится на пол секунды, после чего корректируемое значение начинает мигать. Коррекция показаний осуществляется кнопками «+» и «-«. При длительном нажатии на кнопку, включается режим автоповтора, с заданной частотой. Все значения, кроме часов, минут и секунд, записываются в EEPROM и восстанавливаются после выключения — включении питания.
Если в течение нескольких секунд ни одна из кнопок не нажата, то электронные часы переходят в режим отображения времени. Нажатием на кнопку «Вкл/Выкл» включается или выключается будильник, это действие подтверждается коротким звуком. При включенном будильнике светится точка в младшем разряде индикатора. Думал куда бы пристроить часы на кухне, и решил вмонтировать их прямо в газовую плиту:) Материал прислал in_sane.
Обсудить статью ЭЛЕКТРОННЫЕ ЧАСЫ БУДИЛЬНИК
Светодиодные простые часы можно сделать на дешёвом контроллере PIC16F628A. Конечно, в магазинах полно различных электронных часов, но по функциям у них может или нехватать термометра, или будильника, или они не светятся в темноте. Да и вообще, иногда прото хочется что-то спаять сам, а не покупать готовое. Чтобы увеличить рисунок схемы — клац.
В предлагаемых часах есть календарь. В нём два варианта отображения даты — месяц цифрой или слогом, всё это настрайвается после ввода даты переключением дальше кнопкой S1
во время отображения нужного параметра, термометр. есть прошивки под разные датчики. Смотрите устройство внутри корпуса:
Все знают, что кварцевые резонаторы не идеальные по точности, и в течение нескольких недель набегает погрешность. Для борьбы с этим делом, в часах предусмотрена корекция хода, которая устанавливается параметрами SH
и SL
. Подробнее:
SH=42 и SL=40 — это вперёд на 5 минут в сутки;
SH=46 и SL=40 — это назад на 3 минуты в сутки;
SH=40 и SL=40 — это вперёд на 2 минуты в сутки;
SH=45 и SL=40 — это назад на 1 минуту в сутки;
SH=44 и SL=С0 — это вперёд на 1 минуту в сутки;
SH=45 и SL=00 — это корекция отключена.
Таким образом можно добится идеальной точности. Хотя придётся несколько раз погонять коррекцию, пока выставите идеально. А теперь наглядно показывается работа электронных часов:
температура 29градусов цельсия
В качестве индикаторов можно поставить или светодиодные циферные сборки, что указаны в самой схеме, или заменить их обычными круглыми сверхяркими светодиодами — тогда эти часы будут видны издалека и их можно вывешивать даже на улице.
С динамической индикацией. По работе часов претензий нет: точный ход, удобные настройки. Но один большой минус — в дневное время плохо видно светодиодные индикаторы. Для решени проблемы перешёл на статическую индикацию и более яркие светодиоды. Как всегда в программном обеспечение огромное спасибо Soir. В общем предлагаю вашему вниманию большие уличные часы со статической индикацией, функции настройки остались как и в прежних часах.
В них два дисплея — основной (снаружи на улице) и вспомогательный на индикаторах — в помещении, на корпусе прибора. Высокая яркость достигается применением ультраярких светодиодов , с рабочим током 50мА, и микросхем-драйверов .
Схема электронных часов для улицы на ярких светодиодах
Для прошивки контроллера с файлами и используйте следующие настроки фузов:
Печатные платы часов, блока управления и внешнего модуля, в формате LAY, .
Особенности данной схемы часов:
— Формат отображения времени 24-х часовый.
— Цифровая коррекция точности хода.
— Встроенный контроль основного источника питания.
— Энергонезависимая память микроконтроллера.
— Имеется термометр, измеряющий температуру в диапазоне -55 — 125 градусов.
— Возможен поочередный вывод информации о времени и температуре на индикатор.
Нажатие на кнопку SET_TIME переводит индикатор по кругу из основного режима часов (отображение текущего времени). Во всех режимах удержанием кнопок PLUS/MINUS производится ускоренная установка. Изменения настроек через 10 секунд от последнего изменения значения запишутся в энергонезависимую память (EEPROM) и будут считаны оттуда при повторном включении питания.
Ещё один большой плюс предложенного варианта — изменилась яркость, теперь в солнечную погоду яркость прекрасная. Уменьшилась количество проводов с 14 до 5. Длина провода до основного (уличного) дисплея — 20 метров. Работой электронных часов доволен, получились полнофункциональные часы — и днем, и ночью. С Уважением, Soir–Александрович.
Для тех, кто хоть немного разбирается в микроконтроллерах, а также хочет создать несложное и полезное устройство для дома, нет ничего лучше сборки с LED индикаторами. Такая вещь может украсить вашу комнату, а может пойти на уникальный подарок, сделанный своими руками, от чего приобретёт дополнительную ценность. Схема работает как часы и как термометр — режимы переключаются кнопкой или автоматически.
Схема электрическая самодельных часов с термометром
Микроконтроллер PIC18F25K22
берёт на себя всю обработку данных и отсчёт времени, а на долю ULN2803A
остаётся согласование его выходов со светодиодным индикатором. Небольшая микросхема DS1302
работает как таймер точных секундных сигналов, частота её стабилизирована стандартным кварцевым резонатором 32768 Гц. Это несколько усложняет конструкцию, зато вам не придётся постоянно подстраивать и корректировать время, которое будет неизбежно запаздывать или спешить, если обойтись случайным ненастроенным кварцевым резонатором на несколько МГц. Подобные часы скорее простая игрушка, чем качественный точный хронометр.
При необходимости, датчики температуры могут быть расположены далеко от основного блока — они соединяются с ним трёхпроводным кабелем. В нашем случае один температурный датчик установлен в блок, а другой расположен снаружи, на кабеле длинной около 50 см. Когда пробовали кабель 5 м, то тоже прекрасно функционировало.
Дисплей часов изготовлен из четырех больших светодиодных цифровых индикаторов. Первоначально они были с общим катодом, но изменены на общий анод в финальной версии. Вы можете ставить любые другие, потом просто подберёте токоограничительные резисторы R1-R7 исходя из требуемой яркости. Можно было разместить его на общей, с электронной частью часов, плате, но так гораздо универсальнее — вдруг вы захотите поставить очень большой LED индикатор, чтоб их было видно на дальнем расстоянии. Пример такой конструкции уличных часов есть тут.
Сама электроника запускается от 5 В, но для яркого свечения светодиодов необходимо использовать 12 В. Из сети, питание поступает через понижающий трансформатор адаптер на стабилизатор 7805
, который образует напряжение строго 5 В. Обратите внимание на небольшую зелёную цилиндрическую батарейку — она служит источником резервного питания, на случай пропадания сети 220 В. Её не обязательно брать на 5 В — достаточно литий-ионного или Ni-MH аккумулятора на 3,6 вольта.
Для корпуса можно задействовать различные материалы — дерево, пластик, металл, либо встроить всю конструкция самодельных часов в готовый промышленный, например от мультиметра, тюнера, радиоприёмника и так далее. Мы сделали из оргстекла, потому что оно легко обрабатывается, позволяет увидеть внутренности, чтоб все видели — эти часы собраны своими руками. И, главное, оно было в наличии:)
Здесь вы сможете найти все необходимые детали предлагаемой конструкции самодельных цифровых часов, в том числе схему, топологию печатной платы, прошивки PIC и
Часы со светодиодной подсветкой и пульсирующей минутной стрелкой на микроконтроллере Arduino
Эти уникальные часы со светодиодной подсветкой и пульсирующей минутной стрелкой удалось изготовить благодаря использованию микросхемы ШИМ-контроллера TLC5940. Его главной задачей является расширить количество контактов с ШИМ-модуляцией. Еще одной особенностью данных часов является переделанный аналоговый вольтметр в прибор измеряющий минуты. Для этого на стандартном принтере была распечатана новая шкала и наклеена поверх старой. Как таковая, 5-я минута не отсчитывается, просто в течение пятой минуты счетчик времени показывает стрелку, упершуюся в конец шкалы (зашкаливает). Основное управление реализовано на микроконтроллере Arduino Uno.
Для того чтобы подсветка часов не светилась слишком ярко в темной комнате, была реализована схема автоматической подстройки яркости в зависимости от освещенности (использовался фоторезистор).
Шаг 1: Необходимые компоненты
Вот что потребуется:
- Модуль аналогового вольтметра на 5V DC;
- Микроконтроллер Arduino UNO или другой подходящий Arduino;
- Монтажная плата Arduino (прото плата);
- Модуль часов реального времени DS1307 (RTC);
- Модуль с ШИМ-контроллером TLC5940;
- Лепестковые светодиоды подсветки – 12 шт.;
- Компоненты для сборки схемы автоматического регулирования яркости (LDR).
Также, для изготовления некоторых других компонентов проекта желательно иметь доступ к 3D-принтеру и станку лазерной резки. Предполагается, что этот доступ у вас есть, поэтому в инструкции на соответствующих этапах будут прилагаться чертежи для изготовления.
Шаг 2: Циферблат
Циферблат состоит из трех деталей (слоев) вырезанных на станке лазерной резки из 3 мм листа МДФ, которые скрепляются между собой с помощью болтов. Пластина без прорезей (внизу справа на картинке) помещается под другой пластиной для позиционирования светодиодов (внизу слева). Затем, отдельные светодиоды помещаются в соответствующие пазы, и сверху одевается лицевая панель (сверху на рисунке). По краю циферблата просверлены четыре отверстия, через которые все три детали скрепляются вместе с помощью болтов.
- Для проверки работоспособности светодиодов на этом этапе, использовалась плоская батарейка CR2032;
- Для фиксации светодиодов использовались небольшие полоски липкой ленты, которые приклеивались с задней стороны светодиодов;
- Все ножки светодиодов были предварительно согнуты соответствующим образом;
- Отверстия по краям были просверлены заново, через которые и выполнялось скрепление болтами. Оказалось, что это намного удобнее.
Технический чертеж деталей для циферблата доступен по :
Шаг 3: Разработка схемы
На этом этапе была разработана электрическая схема. Для этого использовались различные учебники и руководства. Не будем сильно углубляться в этот процесс, в двух файлах ниже представлена готовая электрическая схема, которая была использована в этом проекте.
Шаг 4: Подключение монтажной платы Arduino
- Первым делом надо распаять все игольчатые контакты на монтажных и секционных платах;
- Далее, ввиду того, что питание 5V и GND используют очень много плат и периферийных устройств, для надежности, было припаяно по два провода на 5V и GND на монтажной плате;
- Далее был установлен ШИМ-контроллер TLC5940 рядом с используемыми контактами;
- После выполняется подключение контроллера TLC5940, согласно схеме подключения;
- Для того чтобы была возможность использовать батарею, был установлен модуль RTC на краю монтажной платы. Если припаять его посередине платы, то не будет видно обозначение контактов;
- Выполнено подключение модуля RTC, согласно схеме подключения;
- Собрана схема автоматического контроля яркости (LDR), ознакомиться можно по ссылке
- Выполнено подключение проводов для вольтметра, путем подключения проводов к выводу 6 и GND.
- В конце были припаяны 13 проводов для светодиодов (На практике оказалось, что это было лучше сделать до того, как приступать к шагу 3).
Шаг 5: Программный код
Программный код, приложенный ниже, был собран из различных кусков для компонентов часов, найденных в интернете. Он был полностью отлажен и в настоящее время полностью работоспособен, к тому же были добавлены довольно подробные комментарии. Но перед загрузкой в микроконтроллер учтите следующие пункты:
- Перед прошивкой Arduino, нужно раскомментировать строку, которая устанавливает время:
rtc.adjust(DateTime(__DATE__, __TIME__))
После прошивки контроллера с этой строкой (время задано), нужно опять ее закомментировать и прошить контроллер заново. Это позволяет модулю RTC использовать батарею, для запоминания времени, если пропадет основное питание. - Каждый раз, когда вы используете «Tlc.set ()», вам нужно использовать «Tlc.update»
Шаг 6: Внешнее кольцо
Внешнее кольцо для часов было напечатано на 3D-принтере Replicator Z18. Оно прикрепляется к часам с помощью винтов на лицевой стороне часов. Ниже прилагается файл с 3D-моделью кольца для печати на 3D-принтере.
Шаг 7: Сборка часов
Микроконтроллер Arduino со всей остальной электроникой был закреплен на задней стороне часов с помощью саморезов и гаек в качестве распорок. Затем подключены все светодиоды, аналоговый вольтметр и LDR к проводам, которые ранее были подпаяны к монтажной плате. Все светодиоды соединены между собой одной ножкой и подключены к контакту VCC на контроллере TLC5940 (по кругу просто припаян кусок проволоки).
Пока все это не очень хорошо изолировано от коротких замыканий, но работа над этим будет продолжена в следующих версиях.
С динамической индикацией. По работе часов претензий нет: точный ход, удобные настройки. Но один большой минус — в дневное время плохо видно светодиодные индикаторы. Для решени проблемы перешёл на статическую индикацию и более яркие светодиоды. Как всегда в программном обеспечение огромное спасибо Soir. В общем предлагаю вашему вниманию большие уличные часы со статической индикацией, функции настройки остались как и в прежних часах.
В них два дисплея — основной (снаружи на улице) и вспомогательный на индикаторах — в помещении, на корпусе прибора. Высокая яркость достигается применением ультраярких светодиодов , с рабочим током 50мА, и микросхем-драйверов .
Схема электронных часов для улицы на ярких светодиодах
Для прошивки контроллера с файлами и используйте следующие настроки фузов:
Печатные платы часов, блока управления и внешнего модуля, в формате LAY, .
Особенности данной схемы часов:
— Формат отображения времени 24-х часовый.
— Цифровая коррекция точности хода.
— Встроенный контроль основного источника питания.
— Энергонезависимая память микроконтроллера.
— Имеется термометр, измеряющий температуру в диапазоне -55 — 125 градусов.
— Возможен поочередный вывод информации о времени и температуре на индикатор.
Нажатие на кнопку SET_TIME переводит индикатор по кругу из основного режима часов (отображение текущего времени). Во всех режимах удержанием кнопок PLUS/MINUS производится ускоренная установка. Изменения настроек через 10 секунд от последнего изменения значения запишутся в энергонезависимую память (EEPROM) и будут считаны оттуда при повторном включении питания.
Ещё один большой плюс предложенного варианта — изменилась яркость, теперь в солнечную погоду яркость прекрасная. Уменьшилась количество проводов с 14 до 5. Длина провода до основного (уличного) дисплея — 20 метров. Работой электронных часов доволен, получились полнофункциональные часы — и днем, и ночью. С Уважением, Soir–Александрович.
Часов с звуковым сигналом будильника таймер для управления бытовыми приборами.
Та́ймер это прибор который в установленное время включает или выключает оборудование своими коммутирующими контактами. Таймеры реального времени позволяют установить время срабатывания в установленное время суток. Самым простым примером такого таймера будет будильник.
Область применения таймера обширная:
-управление осветительными приборами;
-управление поливом домашних и садовых растений;
-управление вентиляцией;
— управление аквариумом;
— управление электрообогревателями и так далее.
Предлагаемый таймер может быстро и недорого сделать даже начинающий радиолюбитель.
Я сделал его на базе конструктора часов . ()
Применять таймер мне нужно было для управления поливом растений на даче.
Весь процесс изготовления посмотреть в видео:
Перечень инструментов и материалов
— любые электронные часы со звуковым сигналом будильника;
-отвертка;
— ножницы;
-паяльник;
-кембрик;
— два реле на 12В;
-блок питания на 12В от адаптера;
-соединительные провода;
-фольгированный текстолит для печатной платы или макетная плата;
-реле времени промышленное или самодельное;
-резистор;
-транзисторы КТ815(или аналоги);
-диод.
Шаг первый. Распайка платы таймера.
Схема таймера
Все что необходимо это распаять по схеме компоненты на макетную плату и припаять два провода от пъезоизлучателя часов. Собираем простейшую схему с промежуточным реле и транзисторным ключом. При подаче первого импульса звукового сигнала с часов включается реле Р1 , нормально-разомкнутый контакт замыкается и включает нагрузку, одновременно через второй нормально-разомкнутый контакт реле Р1 и нормально-замкнутый контакт реле времени происходит самоблокировка реле Р1. Вместе с нагрузкой включается реле времени РВ- начинается отсчет заданного времени работы нагрузки. По окончанию этого времени РВ размыкает контакт и реле Р1 обесточивается, нагрузка выключена. Схема готова к следующему циклу. Диод служит для предотвращения обратного импульса в схему часов(можно использовать любой маломощный диод). Светодиод для индикация включения нагрузки. В этой схеме нужно промежуточное реле с двумя нормально разомкнутыми контактами, но у меня в наличии не было -я применил два китайских реле(катушки подключены параллельно).Если нагрузка будет более мощной,то соответственно надо использовать реле с более мощными контактами. У меня был адаптер на 12В, я установил его схему прямо на макетную плату. В принципе можно применить любой маломощный источник питания на 12В.
Если короче то часы включают нагрузку а реле времени по истечению выдержки отключают.
Если у Вас нет промышленного реле времени то можно сделать самостоятельно по простой схеме. С увеличением емкости конденсатора С1 увеличивается время работы реле.
Шаг второй. Проверка работы таймера.
У меня схема заработала при первом включении.
Осталось задать время будильника. В моих часах есть две установки времени будильника. Для моего случая как раз достаточно –включить полив например утром в 7часов на выдержку в один час, а вечером в 20 часов еще раз полить. При нажатии кнопок часов издаются звуковые сигналы, поэтому при настройке схему таймера надо обесточить, чтобы исключить ложные срабатывания. В моих часах есть функция «куранты» -каждый час с 8 до 20часов то есть можно кроме будильника использовать при необходимости эти сигналы. Если не нужно то есть функция «куранты» отключается.
Вот такая получилась конструкция выходного дня. Было интересно обкатать новую схему поэтому все делалось по быстрому. В перспективе надо будет сделать корпус и поместить туда плату и реле времени. Сделать самостоятельно такой таймер по силам начинающему без больших затрат времени и финансов. А где применить их это уже решайте сами.
На весь работу пошло пару выходных вечеров и 75 рублей (
Наручные самодельные часы на вакуумном индикаторе, сделанные в стиле стимпанк. Материал взят с сайта www.johngineer.com. Эти наручные часы собраны на основе ИВЛ-2 дисплея. Изначально купил несколько таких индикаторов, чтобы создать стандартные настольные часы, но после размышлений понял, что можно построить стильные наручные часы тоже. Индикатор имеет ряд особенностей, которые делают его более подходящим для этой цели, чем большинство других советских дисплеев. Вот параметры:
- Номинальный ток накала 60mA 2.4V, но работает и с 35mA 1.2V.
- Небольшой размер — всего 1.25 x 2.25″
- Может работать с относительно низким напряжением сетки 12V (до 24)
- Потребляет только 2,5 мА/сегмент при 12.5V
Все фотки можно сделать по-больше кликнув на них. Самым крупным препятствием на пути к успешному завершению проекта было питание. Поскольку эти часы задумывались как часть костюма, не беда что аккумулятор работает всего 10 часов. Остановился на AA и AAA.
Схема довольно проста. Микроконтроллер Atmel AVR ATMega88, и часы реального времени — DS3231. Но есть и другие микросхемы, намного дешевле, которые будут работать так же хорошо в генераторе.
VFD-дисплей управляется MAX6920 — 12-разрядный регистр сдвига с высоким напряжением (до 70V) выходов. Он прост в использовании, очень надежный и компактный. Также возможно для драйвера дисплея спаять кучу дискретных компонентов, но это было непрактично из-за нехватки места.
Напряжение аккумулятора питает также повышающий преобразователь на 5 В (MCP1640 SOT23-6), который нужен для нормальной работы AVR, DS3231, и MAX6920, а также выступает в качестве входного напряжения для второго повышающего преобразователя (NCP1403 SOT23-5), который производит 13V для напряжения сетки вакуумного индикатора.
В часах есть три датчика: один аналоговый и два цифровых. Аналоговый датчик — это фототранзистор, он используется для выявления уровня освещения (Q2). Цифровые датчики: BMP180 — давления и температуры, и MMA8653 — акселерометр для обнаружения движения. Оба цифровых датчика связаны по шине I2C с DS3231.
Латунные трубочки припаяны для красоты и защиты стеклянного дисплея наручных часов, а медные толстые проволоки 2 мм — для крепления кожаного ремешка. Полная принципиальная схема в оригинальной статье не приводится — смотрите подключение по даташитам к указанным микросхемам.
Совсем не давно появилась необходимость в доме заиметь часы, но только электронные
, так как я не люблю стрелочные, потому что они тикают. У меня есть не малый опыт в пайке и вытравки схем. Порыскав по просторам Интернета и почитав некоторую литературу, я решил выбрать самую простую схему, так как мне не нужны часы с будильником.
Выбрал эту схему так как по ней легко сделать часы своими руками
Приступим, так что же нам надо для того, чтобы сделать себе часы своими руками? Ну конечно руки, умение (даже не большое) чтения схем, паяльник и детали. Вот полный перечень того, что я использовал:
Кварц на 10 мГц – 1 шт, микроконтроллер ATtiny 2313, резисторы на 100 Ом – 8 шт., 3 шт. на 10 кОм, 2 конденсатора по 22 пФ, 4 транзистора, 2 кнопки, светодиодный индикатор 4 разрядный KEM-5641-ASR (RL-F5610SBAW/D15). Монтаж я выполнял на одностороннем текстолите.
Но в этой схеме есть недостаток
: на выводы микроконтроллера (далее МК), которые отвечают за управление разрядами, поступает довольно таки приличная нагрузка. Ток в общей сумме намного превышается от максимального тока порта, но при динамической индикации МК не успевает перегреваться. Для того чтобы МК не вышел из строя, добавляем в цепи разрядов 100 Ом резисторы.
В этой схеме управление индикатора осуществляется по принципу динамической индикации, в соответствии с которой сегменты индикатора управляются сигналами с соответствующих выводов МК. Частота повторения этих сигналов более 25 Гц и из-за этого свечение цифр индикатора кажется непрерывным.
Электронные часы, выполненные по выше указанной схеме, могут только показывать время (часы и минуты), а секунды показывает точка между сегментами
, которая мигает. Для управления режимом работы часов в их структуре предусмотрены кнопочные переключатели, которые управляют настройкой часов и минут. Питание данной схемы осуществляется от блока питания в 5В. При изготовлении печатной платы в схему был включен 5В стабилитрон.
Так как у меня имеется БП на 5В, я из схемы исключил стабилитрон.
Чтобы изготовить плату, выполнялось нанесение схемы с помощью утюга. То есть печатная схема распечатывалась на струйном принтере с использованием глянцевой бумаги, ее можно взять с современных глянцевых журналов. После вырезался текстолит нужных размеров. У меня размер получился 36*26 мм. Такой маленький размер из-за того, что все детали выбраны в SMD корпусе.
Вытравка платы осуществлялась с помощью хлорного железа (FeCl
3
) . По времени вытравка заняла примерно час, так как ванночка с платной стояла на камине, высокая температура влияет на время вытравки, не используемой меди в плате. Но не стоит переусердствовать с температурой.
Пока шел процесс вытравки, дабы не ломать себе голову и не писать прошивку для работы часов, пошел на просторы Интернета и нашел под данную схему прошивку. Как прошивать МК, так же можно найти в Интернете. Мною был использован программатор, который прошивает только МК компании ATMEGA.
И вот наконец-то наша плата готова и мы можем приступить к пайке наших часов. Для пайки нужен паяльник на 25 Вт с тонким жалом для того, чтобы не спалить МК и другие детали. Пайку осуществляем осторожно и желательно с первого раза припаиваем все ножки МК, но только по отдельности. Для тех, кто не в теме знайте, что детали, выполненные в SMD корпусе, имеют на своих выводах олово, для быстрой пайки.
А вот так вот выглядит плата с припаянными деталями.


























































































































































