«Привет паяльник!» или «светодинамическая установка на микроконтроллере AVR».
Опус о том, как я вспомнил свое детское увлечение.
Вступление (можно не читать).
В детстве и трава зеленее
и солнце ярче и воздух чище
Народная мудрость
Помню, когда я был подростком и ходил в радиокружок, то пацаны с придыханием произносили: «вот бы цветомузыку собрать…». Мой дядя, тоже радиолюбитель, показывал мне схему цветомузыки. Тогда она казалось чем-то совершенно невероятно сложным.
Вообще, в советской радиолюбительской среде, цветомузыка была символом. Если ты молодой радиолюбитель и собрал цветомузыку, то начинаешь ходить, задрав нос и безосновательно считать себя профессионалом (а если еще понимаешь, почему и как она работает, то вообще ни с кем не здороваешься). Каждый уважающий себя радиолюбитель должен был ее собрать, иначе он – лошара.
Прошло много лет. Паяльник покрылся черным, несмываемым налетом. Радиодетали уныло лежали в столе кверху ножками. Университетский курс электроники и схемотехники прошел как-то мимо меня (что-то сдавал, что-то делал, а как — сам не понимаю).
Однажды, придя в квартиру родителей, я увидел на полке свою старую книжку: «Начинающему радиолюбителю». И тут вся жизнь пронеслась перед глазами: обожженные паяльником пальцы; тошнотворная вонь дымящегося аспирина; резисторы; диоды; транзисторы; друг Леха, орущий в собранное нами переговорное устройство: «Работает!!! Юрик! Оно работает!!!».
Так я снова открыл для себя чудный мир радиоэлектроники.
Начал с самого начала. Разбирался как работают приемники, усилители, супергеттеродины… Ради тренировки спаял пару «мультивибраторов» (жене понравилось). И вот дошел до цветомузыки. Пытался собрать сначала на LC фильтрах, но хватило меня намотать только одну катушку, и то я ее запорол. Вторую собрал на RC фильтрах. Она уже работала и весело мигала под музыку тремя светодиодами, правда собирал я ее «навесным монтажом» и схема напоминала жуткого паука размером с тарелку.
Но на дворе 21-ый век. И сейчас, куда ни плюнь, попадешь в микроконтроллер. Плюй в стиральную машинку – попал, в микроволновку – попал, посудомойка – тоже, скоро и в чайник плюнуть нельзя будет.
Дабы изучить работу с микроконтроллерами и спаять наконец, что-то, что можно потрогать руками и оно не развалится, я решил сделать «светодинамическую установку». Все! Вступление окончено! Впереди самое интересное.
Цель
Ставь цель и добивайся!
м\ф «В поисках немо»
Собрать устройство, которое при поступлении на вход звукового сигнала, будет зажигать один из 8-ми светодиодов, в зависимости от частоты звукового сигнала. При отсутствии звукового сигнала на входе, устройство должно мигать всяческими красивыми эффектами. Получается не просто цветомузыка, а «светодинамическая установка».
Теория
Теоретически, мы миллионеры,
а практически – у нас две бл..ди и один пид..рас
Анекдот
Цветомузыка – это устройство, включающее лампочку определенного цвета, в зависимости от частоты входящего звукового сигнала. Т.е. устройство должно определить какой частоты звук на входе и зажечь лампочку, которая соответствует данной частоте.
Среднее человеческое ухо воспринимает от 20Гц до 20 кГц. В проектируемом устройстве мы имеем 8 световых каналов (светодиодов).
В простейшем случае можно было бы поступить так:
20000 (Гц) / 8 = 2500 Гц на один канал. Т.е. при частоте от 0 до 2500 Гц горит один светодиод от 2500 Гц до 5000 Гц второй и т.д.
Но тут возникает очень интересная ситуация. Если взять «генератор звуковой частоты» и послушать звук частотой 2500 Гц, то можно услышать, что 2,5 кГц это очень высокий звук. При таком распределении каналов мы получим только 1-2-3 горящие лампочки, остальные будут погашены, т.к. очень высоких частот в музыке мало.
Я пустился в поиски. Каково же распределение звуковых частот в средней музыкальной композиции? Оказалось, что таких исследований в интернете нет. Зато я узнал, что при сжатии в mp3 формат, тупо режутся частоты выше 15 кГц. Ибо их можно услышать только на профессиональном оборудовании, а ни один профессионал mp3 слушать не станет. Значит верхний порог опускаем до 15 кГц.
Но потом я чудным образом нашел статью.
Прочитав ее, я сделал для себя такую таблицу распределения каналов по частотам:
Диапазон частот (Гц) | Номер канала |
---|---|
20-80 | 1,8 |
80-160 | 2 |
160-300 | 3 |
300-500 | 4 |
500-1000 | 5 |
1000-4000 | 6 |
> 4000 | 7 |
Разработка принципиальной схемы
Не мешайте мне грабить!!!
Бендер. Футурама
Схему с нуля я разрабатывать не стал. Зачем? В интернете полно схем цветомузыки. Надо только их выкрасть, выбрать наиболее подходящую и модифицировать под себя. Что я и сделал. Взал схему которая так и называлась «ЦМУ/СДУ на микроконтроллере (8 каналов)».
Только она была на микроконтроллере семейства PIC. А я, начитавшись умных форумов, сделал вывод, что самые адекватные микроконтроллеры для обучения и вообще – AVR. Но никто схему «с листа» драть и не собирался. Значит вносим изменения:
1. Меняем микроконтроллер с PIC на ATmega16 (я очень хотел сделать на ATmega8, но оббегав пол города, их не нашел).
2. Источник питания меняем с 12V на 19V. Это не от крутости – это от бедности. У меня такой блок питания от ноутбука.
3. Меняем все отечественные детали на импортные. Ибо когда тычешь в морду продавцу списком отечественных элементов, то он смотрит на тебя как на барана. Заменить придется только транзисторы: КТ315 на BC847B, КТ817 на TIP31.
4. Убираем внешний «кварц» Qz1 и вместе с ним конденсаторы C6 и C7. Т.к. в ATmega16 есть встроенный кварц.
5. Убираем клавиши S1-S4. Никакого интерактива! Все автоматом!
6. В исходной схеме на выходе использовался следующий механизм. Транзисторы КТ315 выступали в качестве ключа для включения светодиодов на плате. Как описал автор, это типа нужно, чтобы видеть, что там работает, конечному пользователю они не видны… Лишнее! Убираем эти транзисторы и светодиоды с платы. Оставляем только транзисторы КТ817, которые будут включать лампочки, видимые конечному пользователю.
7. Т.к. мы поменяли источник питания с 12 до 19 Вольт, то дабы не спалить светодиоды, увеличим сопротивление резисторов идущих от транзисторов КТ817 к светодиодам.
8. Я напрочь не понял назначение конденсатора C4. Он только мешался. Убрал.
Вот что из этого вышло:
Как это работает
в основу работы синхрофазотрона ,
положен принцип ускорения заряженных частиц магнитным полем ,
по-ле-м , пойдем дальше
к\ф «Операция Ы и другие приключения Шурика»
В схеме имеется однокаскадный усилитель на транзисторе Q1. На разъем J9 подается звуковой сигнал (напряжением, примерно 2.5V). Конденсаторы C1 и C2 служат фильтрами, пропускающими только переменную составляющую с источника звукового сигнала. Транзистор Q1 работает в режиме усиления сигнала: когда через его переход ЭБ идет переменный ток, то с такой же частотой, через переход ЭК идет ток от источника питания, через стабилизатор напряжения U1.
Стабилизатор напряжения U1 преобразует напряжение от источника питания в напряжение 5V и вместе с подключенными к нему конденсаторами, позволяет формировать импульсы прямоугольной формы. Эти импульсы подаются на INT0 микроконтроллера.
На осциллографе видно, как звуковой синусоидальный сигнал преобразуется в сигнал прямоугольной формы.
Теперь все в руках микроконтроллера. Ему необходимо определить частоту импульсов и в зависимости от частоты (по табличке выше) подать логическую единичку (5V) на один из своих выводов (PB0-PB7). Напряжение с ножки микроконтроллера попадает на базу соответствующего транзистора (Q2-Q9), которые работают в режиме ключа. При возникновении напряжения на переходе ЭБ транзистора, открывается переход ЭК, через который течет ток на светодиод от источника питания.
Внутренний мир микроконтроллера
У меня очень богатый внутренний мир,
а они только на мои сиськи смотрят!
Цитата с женского форума
Рассмотрим теперь, что твориться внутри микроконтроллера. Микроконтроллер работает на частоте 1МГц (я не стал менять частоту, установленную по умолчанию).
Нам необходимо подсчитать количество импульсов, пришедших на вход микроконтроллера от источника звукового сигнала, за определенный промежуток времени. Нехитрой формулой из этих данных вычисляется частота сигнала.
Тут есть одна проблема с низкими частотами: нельзя делать этот период очень большим или очень маленьким. В стандартной музыкальной композиции частота звука меняется постоянно. Если сделать время замера большим (например 1 сек), то если 0,8 сек звучал звук 80 Гц, а 0,2 сек 12кГц – мы получим звук высокой частоты и потеряем всю низкую. Если сделать время замера маленьким, то мы банально можем не успеть замерять звук низкой частоты, т.к. время замера будет меньше чем частота звукового сигнала.
Посидев 5 минут со счетами, я вычислил, что вполне приемлемое время замера – 0,065536 сек.
Получил такую табличку:
Частота (Гц) | Импульсов за 0,065536 (сек) |
---|---|
0 — 80 | 0 — 6 |
80 — 160 | 6 — 10 |
160 — 300 | 10 — 20 |
300 — 500 | 20 — 33 |
500 — 1000 | 33 — 65 |
1000 — 4000 | 65 — 265 |
> 4000 | >265 |
Дело «за малым» — написать программу для микроконтроллера. Что я, собственно, и сделал. Вот она.
Реализация
Вытирая тряпочкой электролит с пола,
я понял почему лучше не ошибаться в полярности
электролитических конденсаторов
Из личного опыта.
Получив работающую модель устройства в программе схемотехнического моделирования, я принялся воплощать ее в железе.
Разводка печатной платы:
Плату изготавливал по лазерно-утюжной технологии
Вот как выглядела плата в идеале:
А так реально:
Разместить все решил в коробке от CD дисков (на 4 диска, которая):
А вот готовое устройство:
Схемы на микроконтроллерах, самодельные устройства и программаторы (Страница 3)
Программаторы Узлы и модули
Часы с календарем на индикаторах ИН-12
Предлагаемые часы показывают текущее время и дату, обладают функциями будильника. Их особенность — использование газоразрядных цифровых индикаторов ИН-12. Подобные индикаторы широко применялись в электронных часах и цифровых измерительных приборах в семидесятые годы прошлого века. Индикаторы …
1 3583 0
Автоматическое управления вентиляцией помещения, схема на МК ATtiny2313A
Схема самодельного устройства, автоматически включающего и выключающего принудительную вентиляцию помещения. Работа устройства осуществляется в зависимости от относительной влажности воздуха в помещении и скорости её изменения. Оно не содержит дефицитных деталей и может быть помещено в стандартный …
0 3027 0
Схема самодельных двоичных часов на микроконтроллере PIC16F628A и светодиодах. Эти необычные карманные часы могут стать оригинальным подарком. Индикатор времени в них построен всего на шести единичных светодиодах. Секрет в том, что число часов и число минут текущего времени отображаются ими …
1 2008 0
Термометр на микроконтроллере для четырех датчиков DS18B20
Схема самодельного термометра, предназначенного для отображения данных с четырех датчиков DS18B20, используется микроконтроллер. К этому микроконтроллерному термометру можно подключить до четырёх цифровых датчиков температуры DS18B20, расположив их в тех местах, где необходимо контролировать …
1 2434 0
Схемы двух телеграфных E-CW-ключей на МК PIC12F675
Две схемы самодельных телеграфных ключей E-CW, которые выполнены на микроконтроллерах PIC12F675. Несколько необычное название телеграфного ключа E-CW родилось в процессе написания статьи и поиска автором описаний аналогичных устройств в Интернете. Как правило, большая часть статей имела названия …
1 2036 0
Самодельная бегущая строка, установка текста через компьютерную клавиатуру
Схема и фото самодельной светодиодной бегущей строки, текст для которой задается с помощью клавиатуры от компьютера, собрано на микроконтроллере. Это устройство разработано для демонстрации различных объявлений и предназначено для установки, например, на заднем стекле автомобиля. Среди имеющихся …
1 2122 0
Самодельный генератор качающейся частоты (ГКЧ) с индикатором АЧХ
Схема самодельного генератора качающейся частоты (ГКЧ) с жидкокристаллическим индикатором АЧХ. Этот прибор создан на базе двух конструкций — функционального генератора и карманного осциллографа, описания которых опубликованы ранее в нашем журнале. С его помощью можно определить резонансную частоту …
1 7011 1
Дублирующий электронный счетчик показаний использования воды (PIC16F84A)
Предлагаемое устройство даёт возможность постоянно дублировать показания квартирных счётчиков расхода горячей и холодной воды, часто установленных в весьма неудобных для снятия показаний местах. Его же можно применить и для других целей, например, как счётчик витков, деталей на конвейере …
1 1623 0
Схема светодиодного куба 5x5x5, описание и конструкция (на МК PIC16F877A)
Схема сборки светодиодного куба 5x5x5 своими руками, ее основа — микроконтроллер PIC16F877A, куб трехмерный, содержит 5 уровней по 25 светодиодов. Автор этой статьи предлагает несложный по схеме вариант. В нём реализованы десять сменяющихся циклически придуманных автором световых эффектов плюс …
1 1208 0
Дистанционное управление на ИК-лучах (Arduino UNO)
Была поставлена задача сделать систему дистанционного управления на ИК-лучах, использующую готовый пульт ДУ, и позволяющую включать и выключать четыре нагрузки независимо друг от друга. При этом было необходимо, чтобы система не конфликтовала с имеющейся дома аппаратурой, то есть, аппаратура …
0 1444 0
1 2 3 4 5 6 7 … 11
Microchip PIC16F628A-I/SS, 8-битный микроконтроллер PIC, PIC16F, 20 МГц, 2048 x 14 слов, 128 байт флэш-памяти, 20-контактный SSOP
Посмотреть все микроконтроллеры
Доступно для заказа.
Добавить в корзинуЭтот продукт в настоящее время недоступен для заказа.
К сожалению, этого товара нет на складе, и в настоящее время он недоступен для заказа.
tickAdded
Посмотреть корзину
Цена за штуку
Было 37,26 HK$
You pay
HK$30.95
units | Per unit |
1 — 16 | HK$30.95 |
17 — 33 | HK$30.27 |
34 + | HK$29. 62 |
Варианты упаковки:
checkmarkСтандартная упаковка
empty-checkmarkПроизводственная упаковка
- RS Артикул:
- 623-0308
- Производитель. Деталь №:
- PIC16F628A-I/SS
- Manufacturer:
- Microchip
Product overview and Technical data sheets
- docPdfDatasheet
- docPdfPIC16F627A/628A/648A FLASH-Based 8-Bit CMOS Data Sheet
- docZipSchematic Symbol & PCB Footprint
Законодательство и соответствие
Подробная информация о продукте
Микроконтроллеры PIC16F627A/628A/648A
Линейка микроконтроллеров PIC16F от Microchip представляет собой 8-разрядные микроконтроллеры, которые включают в себя различные варианты архитектуры pin, а также PIC Microchips. от компактных 14-контактных устройств до многофункциональных 64-контактных устройств. Устройства с архитектурой Baseline, Mid-Range или Enhanced Mid-Range доступны с множеством различных комбинаций периферийных устройств, что дает разработчикам гибкость и выбор для их приложений.
Семейство микроконтроллеров PIC16F627A/628A/648A основано на ядре Microchip Mid-Range с 8-уровневым аппаратным стеком и 35 инструкциями. Эти микроконтроллеры обеспечивают до 5 MIPS, до 3,5 Кбайт памяти программ, 224 байта RAM и Data EEPROM до 128 байт. На борту находится осциллятор, откалиброванный на заводе с точностью ±1%.
Особенности микроконтроллера
20 МГц Макс. Скорость ЦП
35 Инструкции
8-уровневый аппаратный стек
16 контактов ввода/вывода
Сброс при включении питания (POR)
Таймер включения питания (PWRT)
Таймер запуска генератора (OST)
Сброс пониженного напряжения (BOR)
Сторожевой таймер (WDT)
Программирование низкого напряжения (LVP)
Внутрисхемное последовательное программирование (ICSP)
Периферийные устройства
Два компаратора
Capture/Compare/ШИМ Модуль
Два 8-битных таймера
Один 16-битный таймер
Спецификации
ATTRIBUT0027 | PIC16F | ||
Package Type | SSOP | ||
Mounting Type | Surface Mount | ||
Pin Count | |||
Device Core | PIC | ||
Data Bus Width | 8bit | ||
Объем памяти программы | 2048 x 14 слов, 128 Б | ||
Максимальная частота | 20 МГц | ||
224 B | |||
USB Channels | 0 | ||
Number of PWM Units | 1 x 10 bit | ||
Number of SPI Channels | 0 | ||
Number of USART Channels | 1 | ||
Количество каналов UART | 0 | ||
Количество каналов I2C | 0 | ||
Типовое рабочее напряжение питания | 90 | 90 9027 В 5,5 В0142 Number of CAN Channels | 0 |
Instruction Set Architecture | RISC | ||
-40 °C | |||
Height | 1. |