Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

ЧАСЫ ЭЛЕКТРОННЫЕ СВЕТОДИОДНЫЕ

   Еще в юности мне хотелось собрать электронные часы. Мне казалось, что собрать часы, это было вершиной мастерства. В итоге я собрал часы с календарем и будильником на серии К176. Сейчас они уже морально устарели и мне захотелось собрать что-нибудь более современное. После долгих поисков по интернету (никогда не думал, что мне так трудно угодить;)) понравилась эта схема. Отличие от приведенной схемы в том, что не используется редкая микросхема ТРIC6В595, а ее составной и более мощный аналог на микросхемах 74HC595 и ULN2003. Исправления в схеме приведены ниже.



Схема электронных LED часов бегущая строка

   Автор схемы уважаемый ОLED, прошивка тоже его. Часы индицируют текущее время, год, месяц и день недели а также температуру на улице и внутри дома бегущей строкой. Имеют 9 независимых будильников.

Имеется возможность подстройки (коррекции) хода +- минуту в сутки, выбор скорости бега строки, смена яркости свечения светодиодов, в зависимости от времени суток.

   При пропадании электричества, часы питаются либо от ионистора (емкости 1 Фарад хватает на 4 суток хода), либо от батарейки. Кому что по душе, плата рассчитана на установку того и другого. Имеют очень удобное и понятное меню управления (все управления производится всего двумя кнопками). В часах использованы следующие детали (все детали в СМД корпусах):

Микроконтролер АтМЕГА 16А

 –
Сдвиговый регистр 74HC595

 –
Микросхема ULN2803 (восемь ключей Дарлингтона)

 –
Датчики температуры DS18B20 (устанавливаются по желанию)

 –
25 резисторов на 75 Ом (типономинала 0805)

 –
3 резистора 4.7кОм

 –
2 резистора 1.5 кОм

 –
1 резистор 3.6 кОм

 –
6 СМД конденсаторов емкостью 0. 1 мкф

 –
1 конденсатор на 220 мкф

 –
Часовой кварц на частоту 32768 герц.

 –
Матрицы3 штуки марки 23088-АSR 60х60 мм – общий катод

 –
Бузер любой на 5 вольт.



Плата печатная электронных LED часов бегущая строка

   Для жителей Украины подскажу, матрицы есть в магазине Луганского радиомаркета. Преимущества часов перед другими аналогичными устройствами это минимум деталей и высокая повторяемость. Светодиодные часы начинают работать сразу после прошивки, если конечно отсутствуют косяки в монтаже. Прошивается микроконтроллер внутрисхемно, для этого на плате предусмотрены специальные выводы. Я прошивал программой Понипрог. Скрины фьюзов для программ понипрог и AVR приведены ниже, также выложены файлы прошивки на украинском и русском языке, кому что роднее. 

   Если Вам не нужны датчики температуры, то их можно не устанавливать. Часы автоматически распознают подключение датчиков, и если один или оба датчика отсутствуют, то устройство просто перестаёт отображать температуру (если отсутствует один датчик, то не отображается температура на улице, если оба – то не отображается температура вообще).

Самодельный корпус для LED часов

   Для демонстрации работы часов приведено видео, оно не высокого качества, поскольку снималось фотоаппаратом, но уж какое есть. 

Видеоролик работы часов


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

   Обсуждение конструкции

что это и как сделать своими руками

Главная » Светодиоды » Матрицы

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

Что это такое

Часы на светодиодных матрицах — это электронные часы, в которых для индикации используются матрицы из множества светодиодов. Применение индикаторов другого типа — единственное их отличие.

Матрица — это набор светодиодов, собранных вместе в виде сетки с единым анодом или катодом. Как правило, разрешение таких индикаторов — количество точек по вертикали и горизонтали — 8×8.

Почему же такие часы набирают популярность, преимущества:

  1. Цена. Светодиодные матрицы дешевле семисегментных индикаторов аналогичных размеров.
  2. Яркость. Светодиоды горят ярче, чем семисегментные индикаторы, их лучше видно в местах, освещенных солнечными лучами. Многие производители также предусматривают конструктивную защиту диода от воздействия солнца.
  3. Функциональность. При помощи матрицы из светодиодов можно выводить не только цифры, но также различные буквы, знаки препинания, символы. При помощи набора LED-матриц можно выводить некоторую информацию в виде бегущей строки.

Светодиодные матрицы имеют и недостатки:

  • Увеличенная сложность управления. Из-за большого количества элементов (в стандартной матрице их 64) управлять матричными индикаторами чем семисегментными. Для этого применяются микроконтроллеры, динамическая индикация и сдвиговые регистры.
  • Угол обзора. Особенность светодиодов состоит в том, что они фокусируют свет в одном направлении. Это приводит к тому, что изображение на светодиодной матрице видно хорошо только под определенным углом.
  • Непереносимость высоких температур. Нагревание снижает эффективность светодиодов и уменьшает срок службы.
  • Перегорание отдельных светодиодов приведет к эффекту «битого пикселя» и ухудшению качества изображения.

Самодельные часы на светодиодных матрицах

Несмотря на большую популярность часов на светодиодных матрицах, в Рунете не так уж и много схем для их самостоятельного изготовления. Рассмотрим самую популярную.

Необходимые навыки для сборки устройства:

  • изготовление печатных плат;
  • пайка элементов: схема предполагает SMD-исполнение, это значит, что элементы будут устанавливаться прямо на поверхность платы;
  • прошивка микроконтроллеров: в схеме используется МК ATMega16A;
  • программирование МК: это не обязательно, поскольку для данного устройства уже имеется прошивка контроллера. Этот навык пригодится, если вы захотите изменить режим работы часов или расширить их функционал, например, добавив дополнительные элементы такие, как датчики температуры или влажности.

Из инструментов понадобятся:

  • набор для изготовления плат;
  • программатор МК;
  • паяльник.

Рассмотрим подробнее схему устройства. Главным управляющим элементом является МК ATMega16A, он обеспечивает следующие возможности прибора:

  1. Отсчет времени и календарь. Ведется даже при отключении питания.
  2. Будильник. Здесь их 9 штук, можно запрограммировать на работу по дням недели.
  3. Измерение температуры. Конструкция часов позволяет установить два датчика температуры для измерений в комнате и на улице.
  4. Режим бегущей строки. Выдает следующую информацию: день недели, месяц, год, температура.
  5. Коррекция хода часов.

Большая часть функций возложена на микроконтроллер, что позволяет максимально разгрузить схему и использовать минимальное количество элементов.

В устройстве используется лишь две микросхемы: микроконтроллер и сдвиговый регистр TPIC6B595, также можно подключить два датчика температуры DS18B20 — один уличный, и второй комнатный.

Для индикации используются три светодиодные матрицы 8×8. В качестве диода D1 лучше использовать диод Шоттки. Диод в схеме обеспечивает переход на аварийное питание, а диод Шоттки обладает наименьшим падением напряжения и высокой скоростью переключения.

Процесс изготовления:

  1. Необходимо изготовить плату. Для этого потребуется: фольгированный текстолит, лазерный принтер, утюг и 150г хлористого железа. Сначала нужно распечатать чертеж платы на глянцевой бумаге с помощью лазерного принтера. Полученную распечатку следует приложить рисунком к текстолиту так, чтобы поверхность бумаги была ровной. Горячим утюгом нужно аккуратно провести по распечатке, чтобы не смять и не сместить её. Тонер расплавится и приклеит распечатку к текстолиту. Чтобы удалить бумагу, заготовку платы помещают в теплую воду. В результате мы получим чертеж платы, напечатанный на текстолите.
    Весь тонер должен быть перенесен на поверхность платы, в дорожках не должно быть разрывов.
    Теперь нужно протравить плату. Для этого заготовку на некоторое время помещают в раствор хлористого железа. Раствор готовится из расчета 150г порошка на 200мл воды. Плата будет готова, когда все лишнее медное покрытие растворится, и останутся лишь участки защищенные тонером. Протравленную плату нужно промыть в холодной воде. Тонер удаляется с помощью ацетона. Дорожки нужно покрыть припоем при помощи паяльника, площадки под SMD-элементы должны быть покрыты ровным слоем, без капель. Плата готова.
  2. С помощью программатора нужно прошить микроконтроллер. Для прошивки контроллера ATMega16A нужен программатор и софт. Используем недорогой и удобный программатор USBasp и программу AVRdude с графической оболочкой для удобства работы. Для подключения МК к компьютеру нужно найти по документации ножки SCK, RESET, MOSI, MISO и соединить их с соответствующими ножками программатора. После этого программатор можно подключать к порту USB. В программе AVRdude следует выбрать тип микроконтроллера — Atmega16A, и прошивку.
    Чтобы прошить контроллер нужно нажать кнопку Write для записи. Микроконтроллер прошит.
  3. Все элементы следует припаять к плате согласно схеме. На этом этапе нужно обратить внимание на правильное расположение микроконтроллера и аккуратно припаять его ножки так, чтобы случайно не замкнуть.
  4. С лицевой стороны платы устанавливаются светодиодные индикаторы, чтобы получился цельный блок.
  5. Полученную конструкцию можно поместить в какой-либо корпус, а индикаторы защитить при помощи стекла или прозрачного пластика. В зависимости от яркости светодиодов, можно выбрать затемненное защитное стекло — это улучшит читаемость.

О некоторых особенностях при сборке часов на светодиодной матрице с ATMega 16A доступно рассказывается в следующем видео.

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

0

Понравилась статья? Поделиться с друзьями:

Сборка аналоговых светодиодных часов — Часть 1 Линии ввода-вывода. Я сразу подумал, что хорошим применением этой техники было бы изготовление часов. Он будет иметь три круга по 60 светодиодов в каждом. Внешний круг светодиодов будет обозначать секунды, средний круг — минуты, а внутренний круг — часы. Хотя для отображения часов потребуется всего 12 светодиодов, я подумал, что было бы более симметрично, если бы я использовал 60 и увеличивал их каждые 12 минут. Я предполагал использовать как светодиоды T1 (3 мм), так и T1-3/4 (5 мм); светодиоды большего размера будут использоваться в каждой пятой позиции на каждой часовой отметке.

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

Решения, Решения

Я хотел использовать микроконтроллер с наименьшим возможным количеством выводов. Я решил, что смогу управлять светодиодами с 14 контактами ввода-вывода, используя Charlieplexing (подробнее об этом позже). Еще два контакта ввода-вывода будут использоваться для чтения двух кнопок, используемых для установки часов.

Я уже выбрал микроконтроллер, который хотел использовать. Я много лет экспериментировал с продуктами Microchip, поэтому выбрал PIC16F627A. Это был 18-контактный контроллер с 16 линиями ввода-вывода — именно столько линий ввода-вывода, сколько мне было нужно.

Однако мой профессор настоял, чтобы я добавил функцию будильника. Теперь мне нужно было добавить зуммер для будильника и, возможно, еще пару кнопок для его установки. Кроме того, необходим еще один светодиод для индикации включения сигнализации.

Я решил включить еще один светодиод для индикатора PM, чтобы будильник, установленный, скажем, на 6:00, не звучал в 18:00. Затем я подумал, что буду запускать микроконтроллер с его внутренним генератором, который, вероятно, не был таким уж стабильным; часы не будут показывать точное время. Гораздо точнее было бы контролировать 60 Гц от электросети для временной базы (см. врезку). Сколько еще контактов ввода-вывода теперь потребуется?

Хотя у Microchip есть множество микроконтроллеров с более чем достаточным количеством контактов ввода/вывода для этого проекта, я действительно не хотел увеличивать количество контактов контроллера! Действительно ли можно было управлять 182 светодиодами и зуммером, а также контролировать четыре кнопки и частоту сети всего с 16 контактами ввода-вывода? Или моя гордость навлекла на меня неприятности (почему я не мог просто добавить несколько булавок)?

Зуммеру определенно нужна отдельная выделенная линия ввода/вывода. Для светодиодов потребуется 14 контактов ввода/вывода. Это оставило бы только один контакт для чтения кнопок и контроля частоты линии.

Мне пришла в голову пара идей. У меня было смутное представление о том, что я могу подключить кнопки и сигнал 60 Гц через сеть резисторов к контакту ввода-вывода. Аналоговый вход для обнаружения изменений напряжения может использоваться для интерпретации нажатой в данный момент комбинации кнопок и в то же время контролировать линию 60 Гц. Другая мысль заключалась в том, чтобы использовать четыре контакта ввода-вывода светодиодов для стробирования кнопок и, используя диоды для изоляции, соединить кнопки и 60 Гц вместе с выводом ввода-вывода.

Беглый взгляд на техническое описание PIC16F627A показал, что у него есть все необходимые функции для запуска часов. У него было 16 линий ввода-вывода с возможностью сильного тока для прямого управления светодиодами, внутренний генератор и возможность аналогового ввода. Если 1Кбайт памяти программ было недостаточно, можно было использовать либо PIC16F628A, либо PIC16F648A, которые имеют 2К или 4Кбайт памяти программ соответственно. В остальном они идентичны PIC16F627A.

Управление 182 светодиодами всего с 14 контактами ввода-вывода

Дополнительный привод светодиодов, также известный как Charlieplexing, позволяет управлять большим количеством светодиодов с относительно небольшим количеством контактов ввода-вывода, как упоминалось ранее. Charlieplexing назван в честь Чарли Аллена из Maxim Integrated.

Он использовал эту технику для создания микросхем драйверов светодиодов для Maxim в 1990-х годах ( www.maximintegrated.com/en/app-notes/index.mvp/id/1880 ). Идея Чарлиплексирования проста: при каждой возможной комбинации двух портов ввода-вывода подключите между ними два светодиода, причем два светодиода будут параллельны и направлены в противоположные стороны.

Другой способ взглянуть на Чарлиплексирование — рассмотреть стандартную матрицу 4×4 светодиодов ( Рисунок 1 ).

РИСУНОК 1. Стандартная светодиодная матрица 4×4.


Имеется четыре строки и четыре столбца, для управления 16 светодиодами требуется восемь линий ввода-вывода. Вы заметите, что у каждого столбца есть токоограничивающий резистор. Чтобы зажечь светодиод, вы должны подать + 5 В на столбец и заземлить на ряд. На этом перекрестке загорится светодиод. Например, чтобы зажечь D7, вы должны подать + 5 В на столбец 3 (показан красным) и подать землю на ряд 2 (показан зеленым). В результате загорается D7.

Теперь предположим, что вы удалили диагональные светодиоды и на этих пересечениях соединили строки со столбцами. Теперь строки больше не нужны и их можно удалить. В результате 12 светодиодов подключены всего к четырем линиям ввода-вывода (, рис. 2, ). Это Чарлиплексинг.

Чтобы зажечь светодиод, вы должны подать +5 В на столбец, как и раньше, но заземление будет подаваться на другой столбец. Например, чтобы зажечь D7, вы должны подать +5 В на столбец 3 и землю на столбец 2. В результате загорится только D7. В этой конфигурации ток протекает через два резистора: R3 и R2. Светодиод будет иметь напряжение от 2 В до 2,4 В, в зависимости от светодиода и его характеристик. Следовательно, на резисторах R2 и R3 будет падение напряжения от 1,3 до 1,5 В.

Несмотря на то, что к D10 подключены питание и заземление, он имеет обратное смещение и не загорается. Имеются дополнительные пути тока прямого смещения; например, через D3 и D5. Однако на любом таком пути есть как минимум два светодиода. Поскольку D7 выдерживает падение не более 2,4 В, ни один другой светодиод в матрице не будет иметь напряжения более 1,2 В. Этого напряжения недостаточно для пробоя PN-перехода; следовательно, ток не будет течь, и никакие другие светодиоды не загорятся.

Важно, чтобы все остальные столбцы были плавающими; то есть они не подключены к +5В или земле. Это достигается путем перевода этих линий ввода-вывода микроконтроллера в их состояние ввода, что создает условия с высоким импедансом, чтобы они не потребляли и не получали никакого тока.

Как при заданном количестве линий ввода-вывода (N) рассчитать количество управляемых светодиодов? Рисунок 2 дает визуальное представление ответа.

РИСУНОК 2. Четырёхстрочная матрица Чарлиплекса.


Количество светодиодов, которые можно сложить по Чарли, равно N (количество строк) умножить на N (количество столбцов) минус N (количество удаленных диагональных светодиодов). В этом примере количество светодиодов, которыми могут управлять четыре контакта ввода-вывода, можно рассчитать следующим образом:

светодиода = ( N•N ) – N = (4•4) – 4 = 12 = ( N•N ) – N = (14•14) – 14 = 182

Именно столько светодиодов нам нужно для светодиодных часов!

В матрице Charlieplex одновременно может гореть только один светодиод. Чтобы создать иллюзию одновременного включения до пяти светодиодов, светодиоды загораются по одному в быстрой последовательности — достаточно быстро, чтобы человеческий глаз не мог различить мерцание. Я решил использовать светодиоды высокой интенсивности, так как каждый из них будет гореть примерно 20% времени.

Я решил построить меньшую схему из 12 светодиодов на макетной плате, чтобы протестировать концепцию и начать разработку программного обеспечения. Однако самой большой проблемой было выяснить, как считывать несколько кнопок и сигнал 60 Гц, используя только один контакт ввода-вывода.

Использование 60 Гц для хронометража

Мне часто задают вопрос: «Насколько точны 60 Гц от электроснабжения?» Простой ответ заключается в том, что он удивительно точен.

В 1920-х годах Лоренс Хаммонд изобрел электрические часы, приводимые в движение синхронным двигателем переменного тока. Он отсчитывал время, используя двигатель, синхронизированный с частотой 60 Гц, генерируемой коммунальными предприятиями. Он раздал сотни этих часов электростанциям в качестве стимула для поддержания постоянной частоты, что позволило использовать его недорогие часы в любой точке Северной Америки.

Хаммонд помог создать орган Хаммонда, который использовал синхронный двигатель переменного тока для привода генератора «тонового колеса», который создавал идеальную высоту звука для инструмента.

Почти все, что имеет часы и подключается к стене, использует для синхронизации 60 Гц. У меня на тумбочке стоит недорогой будильник, который при отключении питания гаснет дисплей, но держит время на батарейке. При подключении к сети часы показывают отличное время. Если я отключу его от сети и возьму с собой в поездку, когда через несколько часов доберусь до пункта назначения, часы неизменно отстают или отстают на несколько минут.

В 2010 году я сделал таймер обратного отсчета, который использовал 60 Гц от электросети в качестве базы времени. Я использовал часы, которые синхронизировались с атомными часами в Боулдере, штат Колорадо, чтобы проверить точность моего таймера. В то время я заметил, что таймер смещается на 5 или 10 секунд в течение дня. Я никогда не видел, чтобы он отставал более чем на 10 секунд, и он всегда возвращался к правильному времени примерно в одно и то же время каждый день.

С тех пор коммунальные предприятия стали менее требовательны к точности генерируемой частоты 60 Гц. Для поддержания точности производится корректировка частоты, известная как коррекция временных ошибок (TEC). Чем чаще будут производиться ТИКи, тем более точными будут часы, отсчитывающие на них свое время. Энергетические предприятия, используемые для обеспечения правильности общего количества циклов за 24 часа, используя ежедневные ТЭО. Теперь TEC создается, когда совокупная ошибка превышает определенный порог. В результате частота не такая точная, как раньше, но все же очень точная.

Я запускал таймер обратного отсчета, а также аналоговые светодиодные часы, периодически сверяя их друг с другом и с атомными часами. Год спустя таймер обратного отсчета и светодиодные часы идеально синхронизированы друг с другом (как и следовало ожидать), и оба опережают атомные часы на 24 секунды. Максимальное отклонение моего таймера и часов от атомного времени составляло 52 секунды. Я думаю, что любые часы, которые в течение года идут с точностью до минуты, очень точны.

К сожалению, в Северной Америке предпринимаются попытки отменить требования для TEC. Было подсчитано, что если бы TEC не были реализованы в 2016 году, часы, использующие эту частоту для своей базы времени, потеряли бы около семи минут в течение года. Все еще не так уж плохо; определенно намного лучше, чем часы в моей машине!

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


Подробнее о микроконтроллере PIC16F627A

PIC16F627A имеет 16 контактов ввода/вывода, но только 14 из них могут подавать и принимать ток. Один контакт (RA4) мог только потреблять ток, а оставшийся контакт (RA5) был только входом. Причина ограниченных возможностей RA4 и RA5 заключалась в том, что они одновременно использовались как контакты для программирования чипа. Это позволяет программисту манипулировать этими контактами без вмешательства работающей программы.

Поскольку все контакты в матрице Charlieplex должны быть способны подавать и потреблять ток, 14 контактов ввода-вывода, которые могут и то, и другое, должны были использоваться для светодиодов. Линия ввода-вывода, которая может потреблять только ток, будет работать для управления зуммером. Это оставило контакт только для ввода для чтения переключателей и 60 Гц. Все идет нормально.

Однако RA5 — контакт только для ввода — не имел аналоговых возможностей; его нельзя было подключить к внутреннему компаратору микросхемы. Мало того, что RA5 была просто входной линией, это была только цифровая входная линия. Поэтому моя первая идея использовать резисторную сеть для подачи переменного напряжения на входной контакт не сработала. Тем не менее, вторая идея со стробированием кнопок четырьмя светодиодными линиями может быть вполне оправдана.

Тестовая схема

Готовую тестовую схему можно увидеть на Рис. 3 .

РИСУНОК 3. Тестовая схема на макетной плате.


Для питания цепи я использовал настенную розетку с выходом переменного тока на девять вольт. Он подключается к J1 и J2 схемы, показанной на рис. 4 .

РИСУНОК 4. Схема тестовой схемы с блоком питания, микроконтроллером и светодиодами.


Я построил мостовой выпрямитель (D5-D8), затем стабилизатор +5 В (U1), а затем соответствующие фильтрующие конденсаторы (C1-C2) для создания источника питания. Затем 12-светодиодная матрица Charlieplex (DH00-DH03, DM00-DM03, DS00-DS03) была подключена к четырем контактам ввода-вывода через соответствующие токоограничивающие резисторы (R1-R4). Узлы, которые после токоограничивающих резисторов – СР01-СР04.

В тестовом коде микроконтроллер запускал последовательность этих 12 светодиодов — аналогичную той, которая будет использоваться для готовых часов, при этом каждый светодиод горит 20% времени. Я обнаружил пару вещей.

Во-первых, светодиоды Charlieplexing работают на удивление хорошо. Я ожидал увидеть небольшое количество света, исходящего от выключенных светодиодов, поскольку через них все равно будет протекать небольшой ток. Даже в кромешной тьме с полностью закрытыми горящими светодиодами я не смог обнаружить никакого света, исходящего от негорящих светодиодов.

Во-вторых, я был удивлен, обнаружив, что для правильного баланса кажущейся яркости светодиодов светодиоды T1-3/4 (5 мм) должны быть более чем в два раза ярче, чем светодиоды T1 (3 мм). . Это имело смысл, когда я подсчитал, что большие светодиоды имеют площадь поперечного сечения примерно в 2,8 раза больше, чем меньшие. Оказалось, что очень хорошо работают маленькие светодиоды с яркостью от 250 до 310 мкд и большие светодиоды с яркостью от 680 до 700 мкд.

Давай пошумим

Затем я подключил зуммер (BZ1) между линией ввода-вывода и +5 В ( Рисунок 5 ). Я добавил 150 Ом (R9) последовательно для некоторого ограничения тока, так как зуммер был рассчитан на работу с тремя вольтами. Позже я определил, что 33 Ом было достаточно, и в итоге использовал два резистора по 75 Вт, включенных параллельно, для эквивалентного сопротивления 37,5 Ом.

РИСУНОК 5. Схема тестовой цепи с добавленным зуммером.


Было довольно просто заставить его гудеть вблизи его резонансной частоты 2 кГц. Я уже настроил прерывание на запуск каждые 256 мкс (о программном обеспечении я расскажу во второй части). Все, что мне нужно было сделать, это отключить выходную линию при одном прерывании, а затем освободить ее при следующем прерывании; это создало прямоугольную волну с периодом 512 мкс, или 1,953 Гц.

Вход 60 Гц

У меня возникла идея соединить каждую кнопку с линией в светодиодной матрице. Другая сторона кнопок и сигнал 60 Гц будут соединены вместе — добавление диодов последовательно для изоляции — к контакту только для ввода (RA5). К входной линии добавляется подтягивающий резистор к +5В.

Чтобы считать переключатели, я подтягивал линию к одному переключателю (в то время как все остальные светодиодные линии плавали в высокоимпедансном состоянии) и считывал результат на RA5.

Одна из проблем с этой схемой заключалась в том, что пока кнопка удерживалась нажатой, подтягивающий резистор подавал напряжение на светодиодную матрицу. Даже при достаточно высоком значении подтягивающего резистора это приведет к случайному свечению светодиодов.

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

Другие линии не упадут на землю, но будут удерживаться на уровне около двух вольт или около того. Цифровой вход не смог бы надежно различить разницу; поэтому программное обеспечение не сможет определить, какие переключатели были активированы. Удерживание одной линии переключателя на низком уровне при удерживании трех других на высоком уровне предотвратило бы эту проблему, но было бы неприемлемо, поскольку это привело бы к включению светодиодов.

Стало очевидным, что необходимо использовать аналоговый вывод для кнопки ввода. Поэтому я решил выделить RA5 для мониторинга линии 60 Гц. Поскольку линия переменного тока колеблется далеко за пределами диапазона напряжения входного контакта, я добавил токоограничивающий резистор (R5).

Входной контакт RA5 имеет внутренний диод для фиксации входа на землю, но нет внутреннего диода для фиксации входа на +5В. Это связано с тем, что микросхема переводится в режим программирования путем поднятия этого вывода выше пяти вольт. Мне не хотелось, чтобы микросхема переходила в программный режим, поэтому я добавил D5, чтобы зажать вход на +5В ( Рисунок 6 ).

РИСУНОК 6. Схема тестовой цепи с добавленным входом переменного тока.


Тестирование

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

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

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


Кнопки

Мне нужно было придумать способ считывания переключателей с помощью аналогового вывода. Разумеется, все аналоговые входные контакты использовались для управления светодиодной матрицей. Что бы я ни пробовал, либо загорались нежелательные светодиоды, либо не читалось состояние переключателей. Как раз когда я собирался использовать микроконтроллер с большим количеством контактов ввода-вывода, я наткнулся на решение!

Цепь кнопки была подключена к узлам CP01-CP04, которые стоят после токоограничивающих резисторов R1-R4 светодиода; см. Рисунок 7 .

РИСУНОК 7. Схема тестовой цепи с добавленными кнопками.


Делитель напряжения был создан с R6 и R7, который обеспечивает 2,5 В, которые подаются на CP04 через резистор R8. Кнопки S1-S3 были подключены к выходу делителя напряжения. Другая сторона кнопок была подключена к CP01-CP03 через диоды (D1-D3). Эти диоды изолируют CP01-CP03 друг от друга при одновременном нажатии более одной кнопки.

Как работает схема

Вспомним, что когда микроконтроллер управляет светодиодом, на каждом из двух задействованных токоограничивающих резисторов возникает падение не менее 1,3 В. Следовательно, ток в узле-приемнике будет не менее 1,3 вольт, а в узле-источнике тока – не более 3,7 вольт. Если CP04 не управляет светодиодом, он находится в состоянии высокого импеданса.

Следовательно, на CP04 появляется выход делителя напряжения 2,5 вольта. В этом случае напряжение на любом пораженном светодиоде в матрице не превысит 1,2 В (3,7–2,5 В или 2,5–1,3 В), что недостаточно для его включения.

Предположим, что S2 нажата, когда CP02 потребляет ток. Выходное напряжение делителя падает не менее чем до 2,0 В из-за падения 0,7 В на D2. Если CP04 находится в режиме высокого импеданса, это подаст 2,0 вольта в цепь Чарлиплекса в этой точке. Исходная линия Charlieplexed может давать падение до 1,7 В на светодиоде (3,7–2,0 В), в то время как отводящая линия может давать падение до 0,7 В (2,0–1,3 В) — ни того, ни другого недостаточно. чтобы включить светодиод.

Я обнаружил, что когда CP04 подает ток в матрицу, это приводит к увеличению выходного напряжения делителя напряжения с 2,5 В до 2,9 В.вольт. Предположим, что в это время нажимается кнопка S2. Ток может проходить через эту кнопку и D2 в матрицу на CP02. Из-за падения напряжения на D2 на 0,7 В в матрицу можно было бы поместить источник тока не более 2,2 В. Это даст не более 0,9 вольта на любой светодиод — опять же, намного ниже того, что требуется для его включения.

Когда CP04 используется для отвода тока в светодиодной матрице, выходное напряжение делителя напряжения падает примерно до 2,1 вольта. Если, например, нажата кнопка S2, D2 не позволяет этому напряжению обеспечить сток тока в матрицу. На CP02 появляется источник тока с напряжением 1,4 вольта, всего на 0,1 вольта выше линии, на которую подается низкий уровень — этого явно недостаточно для включения светодиода.

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

Для определения состояния кнопки линия ввода-вывода для этой кнопки переводится в низкий уровень, а все остальные линии ввода-вывода в светодиодной матрице остаются в состоянии ввода с высоким импедансом.

Например, чтобы считать S1, CP01 (который подключен к S1 через D1) должен быть установлен на низкий уровень вывода. Если кнопка не нажата, 2,5 В с делителя напряжения через R8 подается на CP04. Светодиод DM03, катод которого подключен к CP01, а анод к CP04, приведет к падению выходного напряжения делителя до рабочего напряжения этого светодиода — между 2,0 В и 2,4 В.

Это напряжение появляется на микроконтроллере на RA2 через R4. Ток, проходящий через DM03, сильно ограничен резисторами R6 и R8, и, поскольку кнопка считывается за несколько микросекунд, через светодиод будет протекать ток, недостаточный для того, чтобы он светился для человеческого глаза.

Если нажать S1, ток через D1 вызовет падение напряжения на выходе делителя до 0,7 вольт. Это напряжение проходит через R8 и R4 и появляется на RA2. Таким образом, чтобы определить, нажата ли кнопка, микроконтроллер переводит линию ввода-вывода этой кнопки в низкий уровень, а затем смотрит на результирующее напряжение на RA2.

Если около 0,7 вольта, то кнопка нажата; если два и более вольта, то нет. Каждая кнопка считывается по одной, переводя линию этой кнопки в низкий уровень, в то время как другие линии Charlieplexed остаются в состоянии высокого импеданса.

Микроконтроллер имеет встроенный компаратор и встроенный программируемый источник опорного напряжения, который можно использовать для обнаружения небольших изменений напряжения. Я запрограммировал микроконтроллер так, что RA2 подключен к инвертирующему (-) входу компаратора, а неинвертирующий (+) вход подключен к программируемому опорному напряжению. Я установил опорное напряжение на 1,042 В.

Если кнопка нажата, напряжение на контакте ввода-вывода составляет 0,7 В, и на выходе компаратора появляется высокий уровень. Если кнопка не нажата, входное напряжение составляет не менее 2,0 В, а выход компаратора становится низким. Выход компаратора считывается микроконтроллером как 1 или 0.

Время вышло

На этом первая часть заканчивается. Во второй части мы завершим схему, изготовим печатную плату, создадим часы и посмотрим, как работает программное обеспечение. Тем временем вы можете найти исходные файлы программного обеспечения с загрузками статей, если хотите заглянуть. Увидимся в следующий раз! NV


Комплект можно приобрести в интернет-магазине Nuts & Volts по адресу https://store.nutsvolts. com/project-kits/sku15871 .


Загрузки

201803-Gill.zip

Что в архиве?
Файлы печатных плат
Код

201803-Gill-Manual.zip

Что в почтовом индексе?
Руководство по сборке

72 Схема светодиодных часов и инструкции

подобные схемы

домой :: таймер :: 72 светодиодные часы



Описание

В приведенной ниже схеме 60 отдельных светодиодов используются для индикации минут часов, а 12 светодиодов — часов. Схема источника питания и базы времени такая же, как описано выше в схеме часов с 28 светодиодами. Минутная секция часов состоит из восьми регистров сдвига 74HCT164, соединенных каскадом, так что один бит может быть рециркулирован через 60 ступеней, указывающих соответствующую минуту часа. Только два минутных регистра сдвига показаны подключенными к 16 светодиодам. Контакт 13 каждого регистра соединяется с контактом 1 следующего для 7 регистров. Контакт 6 8-го регистра должен соединиться с контактом 1 первого регистра с помощью резистора 47K. Пины 2,9,8, 14 и 7 всех 8-минутных регистров (74HC164) должны быть соединены параллельно (вывод 8 к выводу 8, вывод 9 к выводу 9 и т. д.). Секция часов содержит два 8-битных сдвиговых регистра и работает так же, как минуты, отображая 1 из 12 часов. Контакт 9 всех 74HCT164 (часы и минуты) должен быть соединен вместе. Для работы на частоте 50 Гц секция временной развертки схемы может быть изменена, как показано на нижнем рисунке с пометкой «Временная база светодиодных часов 50 Гц». Для этого вам понадобится дополнительная микросхема (74HC30), поскольку она требует декодирования 7 бит счетчика вместо 4. Два вентиля И-НЕ с двойным входом (1/2 74HC00), которые не используются в 50-герцовой модификации, должны иметь свои входы. подключен к земле.

При подаче питания в первую ступень минутного и часового регистров загружается один бит «1». Для этого во все регистры (на выводе 9) посылается мгновенный низкий сигнал сброса, а также на логический элемент И-НЕ, чтобы заблокировать любые переходы часов на выводе 8 минутных регистров. В то же время высокий уровень подается на линии ввода данных минутного и часового регистров на выводе 1. В конце сигнала сброса генерируется одиночный положительный тактовый импульс (на выводе 8), который загружает высокий уровень в первую очередь протокола. Нарастающий фронт выхода первой ступени на выводе 3 переводит часы вперед (на выводе 8), и один бит также загружается в регистр часов. Питание должно оставаться отключенным в течение примерно 3 секунд или более перед повторным включением, чтобы позволить фильтру и времязадающим конденсаторам разрядиться. Через конденсатор фильтра 1000 мкФ используется продувочный резистор 1 кОм, чтобы разрядить его примерно за 3 секунды. На временной диаграмме показана последовательность включения питания, где T1 — это время подачи питания и начала сигнала сброса, T2 — конец сигнала сброса, T3 — тактовый сигнал для перемещения высокого уровня на выводе 1 в первый регистр. , T4 — конец сигнала данных. Временная задержка от T2 до T3 преувеличена на чертеже и на самом деле представляет собой очень короткое время просто задержки распространения через инвертор и затвор.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *