Двухканальный пиковый VU-метр на ATmega8. Двухканальный пиковый VU-метр на ATmega8 Переходим к конструкции

В проекте задействованы ATMega32 и ЖКИ индикатор 16х2 подключенный по 4-х битной шине. Само устройство по большому счету выполняет роль двух канального вольтметра, только вывод информации организован не в линейной зависимости, а в логарифмической. Это связано с нашей анатомической особенностью восприятия звука.

В собранном виде работа устройства выглядит следующим образом:

Сигнал заводится на два первых канала АЦП (РА0 и РА1). Для того чтобы не ловить мусор из вне необходимо прижать порты к земле резисторами сопротивлением 10к. В зависимости от значения напряжения на входе, происходит заполнение жки индикатора залитыми символами (в памяти контроллера ЖКИ номер символа 255).

Схема индикатора уровня стереосигнала:

Я не стал использовать фильтры и операционный усилитель на входе, пустил сигнал напрямую в мк. Как выяснилось, в подобных проектах, когда необходимо быстро обновлять информацию на дисплее, лучше использовать стандартное 8-и битное подключение. Иначе дисплей может не успевать выводить информацию и изображение будет заметно мерцать. Скачать файлы проекта (~150кб) можно по ссылке.


C этой схемой также часто просматривают:

Индикатор уровня сигнала 2 x 20 LED на ATMEGA8.

На одном из зарубежных сайтов нашел материал по сборке индикатора уровня сигнала, построенного на микроконтроллере Atmel AVR ATmega8A или более старой Atmega8 или Atmega8L. Переводить статью дословно нет смысла, потому что автор собирал схему на макетке, но тем не менее работу индикатора вы можете посмотреть в ролике, который найдете в архиве. Индикатор имеет 20 светодиодных делений на каждом канале. Диапазон отображения - от -34 до +4 дБ. В качестве индикаторных светодиодов вы можете использовать монолитные столбы типа DC20/20GGGWA, именно под эти светодиодные матрицы я рисовал лейку платы. Для начала приведу принципиальную схему индикатора уровня сигнала:

При реализации схемы так же можно применить две линейки по 20 обычных светодиодов. Резисторы R1 ... R4 определяют ток и, следовательно, яркость светодиодов. Сигналы левого и правого каналов подключены к входам аналого-цифрового преобразователя ADC0 и ADC1. Время падения (затухание) шкалы составляет около 600 мс. В устройстве имеется функция отображения пиковых уровней сигнала, активировать её можно замыканием перемычки «IM» (Indicator of Maximum), вместо перемычки можно поставить кнопку ON/OFF с фиксацией.

Вид светодиодной сборки и её размеры приведены на изображениях ниже:

Вид платы светодиодного индикатора уровня сигнала в формате LAY6:

Прошивку микроконтроллера найдете в архиве (файл с расширением hex) . Настройка битов конфигурации в PonyProg показана на следующем изображении.
(Шестнадцатеричные значения: Low Fuse: A4, High Fuse: D9.)

Предупреждение!!! Схема в железе мной не тестировалась.

Размер архива с материалами по индикатору уровня сигнала на AVR Atmega8A 2 x 20 LED - 4,8 Mb.

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

Я представляю вам еще один простой стереофонический индикатор уровня звука для усилителя или другого аудиооборудования. Индикатор имеет 2 столбца из 20 светодиодов и возможность индикации максимального уровня. Он управляется микроконтроллером IO1 - Atmel AVR ATmega8A или более старыми ATmega8 или ATmega8L . Это единственная интегральная микросхема в устройстве которая обеспечивает индикацию обоих аудиоканалов.

Индикатор имеет 20 светодиодных делений на каждом канале, 1 деление соответствует 2 дБ. Диапазон отображения от -34 до +4 дБ. При превышении уровня аудиосигнала 0 дБ (18-й светодиод) происходит перегрузка. В качестве светодиодов индикации вы можете использовать монолитные столбцы (линейки светодиодов) или отдельные светодиоды. Светодиоды управляются мультиплексным способом в 10 шагов, по 4 светодиода на каждом шаге, частота мультиплексирования составляет около 100 Гц. Резисторы R1 ... R4 определяют ток и, следовательно, яркость светодиодов. Сигналы левого и правого каналов подключены к входам аналого-цифрового преобразователя ADC0 и ADC1. Время падения (затухание) шкалы составляет около 600 мс.

Устройство также оснащено индикацией пикового уровня, который может быть активирован с помощью перемычки на плате с надписью IM (Индикатор максимума). Индикатор уровня звука питается от источника питания 5 В, а потребление всех светодиодов составляет около 45 мА. Конденсаторы C1 и C2 должны быть расположены как можно ближе к микроконтроллеру IO1.

Архив для статьи "Индикатор уровня аудиосигнала 2x20 светодиодов на Atmega8"
Описание: Исходный код(Ассемблер), файл прошивки микроконтроллера
Размер файла: 2.64 KB Количество загрузок: 798

Представляю Вам простой проект индикатора аудио-сигнала, отличительной особенностью этого проекта от других является то, что в схеме на каждый канал я примел по 32 светодиода, получилась длинная линейка. В основе устройства - микроконтроллер AVR ATmega8535, ULN2803 - 8-канальный ключ Дарлингтона, кроме того, применен операционный усилитель, его назначение думаю так же понятно. Чувствительность индикатора регулируется резисторами R32 и R33, для каждого канала отдельно. Данный проект является моей дипломной работой, которую я делал пару лет назад, наткнулся на схему когда шарился в папках на своем ПК, и решил отправить на сайт.

Схема достаточно объемная, сокращать обозначение светодиодов не стал, схему можете посмотреть ниже:

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

Все устройство собиралось на макетной плате, печатную плату рисовать не стал, кому понравился проект может нарисовать печатную плату и прислать ее на форум. Все радиодетали в схеме можно заменять на аналогичные, номиналы резисторов и конденсаторов можно ставить близкие по номиналу. Транзисторы можно заменить на любые другие, аналогичные. Кварцевый генератор можно поставить на 14-16 МГц, не критично. Фотографии устройства ниже:

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

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

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
IC1 МК AVR 8-бит

ATmega8535

1 В блокнот
IC2, IC3 Составной транзистор

ULN2803

2 В блокнот
IC4A, IC4B Операционный усилитель

LM358

1 В блокнот
Q1-Q4 Биполярный транзистор

BD140

4 В блокнот
Q5 Кварцевый резонатор 16 МГц 1 В блокнот
С1-С4, С11, С14 Конденсатор 100 нФ 6 В блокнот
С5-С8 Конденсатор 10 нФ 4 В блокнот
С9, С10, С15, С16 Конденсатор 220 нФ 4 В блокнот
С12, С13 Электролитический конденсатор 10 мкФ 2 В блокнот
С17, С18 Конденсатор 22 пФ 2 В блокнот
R1-R16 Резистор

68 Ом

16 В блокнот
R17-R20, R23, R24, R30, R31, R36, R37 Резистор

1 кОм

10 В блокнот
R21, R22, R29 Резистор

1.5 кОм

3 В блокнот
R25, R26, R34, R35 Резистор

47 кОм

4 В блокнот
R27 Подстроечный резистор 100 Ом 1 В блокнот
R28 Резистор

470 Ом

1 В блокнот
R32, R33 Подстроечный резистор 20 кОм 2

Продолжая тему «Подстраиваемого светодиода» и преследуя цель опробовать в деле умную светодиодную ленту на базе WS 2812 B (NeoPixels) родилось новое устройство — Adjusty strip — продвинутый индикатор уровня!

Ленту на пробу мне предоставил магазин Если Вам понравится устройство и Вы захотите его повторить, то ленту в Украине можно приобрести в этом-же магазине — ссылка на ленты . Для России ее можно приобрести еще у одного моего партнера TIXER.RU (обещались в ближайшее время пополнить ассортимент).


Переходим к конструкции.

Схема элементарна – на несколько деталек и ATtyni13. Надеюсь, знаете, как записать в МК прошивку? Нет? Тогда Вам .

Длина ленты по умолчанию — 30 пикселей. Количество пикселей отображения можно изменить, указав в исходнике значение константы «Number_Pixels» равное реальному количеству пикселей (эффекты автоматически пересчитаются под новое значение).

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


Устройство
– визуально отображает на ленте уровень входного сигнала . Это, своего рода, большой светодиодный столбик.

Индикатор умеет работать в 9-ти режимах отображения входного уровня. Для перебора режимов нужно нажимать на кнопку «Режим ». Выбранный режим запоминается в энергонезависимую память и при повторном старте устройства будет автоматически активирован.

Режимы:
0 – Off – лента выключена
1 – Simple – обычная одноцветная полоса
2 – Bar – линейка от синего к белому по палитре
3 – Inv_Bar – линейка от белого к синему по палитре
4 – Color – вся линейка подсвечивается одним цветом в зависимости от длины
5 – Point – цветная точка, отображающая уровень
6 – Solid_Color – все пиксели горят цветом, зависящим от величины уровня
7 – Fire – стилизованный огонь — чем больше уровень, тем больше пламя
8 – Chaos – хаотичные засветки пикселей (изменяются от уровня)
9 – Scroll – сдвиг уровня по полосе

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

Так как устройство элементарно, для демонстрации его возможностей я собрал его на макетке, за пару минут:

И вот что получилось:



Материалы для сборки устройства:
- Материалы для сборки устройства

Область применения индикатора уровня Adjusty strip :

— Первое, что приходит на ум – визуализация музыки.
— Еще, думаю здорово будет смотреться, если им подсвечивать тахометр в машине (в зависимости от оборотов подсветка будет менять цвет).
— Дальше – подсветка ручек регуляторов уровня.
— Еще создание оригинальных светильников для автономной работы в демо-режиме (режим огня смотрится очень эффектно даже сам по себе).
— Визуализация температуры (например, можно задействовать дешевый аналоговый градусник LM35) …


Обновление 2016
viktor001 проделал большую работу по подключению звука к устройству. Получилось здорово. Прошивка тоже немного изменена — смотрите в архиве.


Схема к индикатору получилась до безобразия простой и собственно соответствует поставленной задаче — простата, легкодоступные компоненты и 100 процентная повторяемость. При правильной сборке работает сразу. Вся настройка сводится к выставлению уровней компрессии и выхода микрофонного усилителя. Главное и единственное требование — не выставлять усиление по максимуму. Наличие компрессора не является таблеткой от всех болезней и при работе от микрофона всё же имеет свои границы регулирования. Можно конечно «зажать» сигнал регулятором компрессии, но тогда страдает подвижность индикации. Лучшим средством является предусмотренный регулятор усиления Ку на первом операционнике фильтра нч. При работе от линейного входа, компрессор замечательно справляется без дополнительных регулировок.

С питанием схемы всё ещё проще. Выбор блока питания исходил от требования ленты WS2812B, точнее от потребления тока, плюс небольшой запас. 10 вольт получаем через DC/DC преобразователь.

Схема к индикатору получилась до безобразия простой и собственно соответствует поставленной задаче — простата, легкодоступные компоненты и 100 процентная повторяемость. При правильной сборке работает сразу. Вся настройка сводится к выставлению уровней компрессии и выхода микрофонного усилителя. Главное и единственное требование — не выставлять усиление по максимуму. Наличие компрессора не является таблеткой от всех болезней и при работе от микрофона всё же имеет свои границы регулирования. Можно конечно «зажать» сигнал регулятором компрессии, но тогда страдает подвижность индикации. Лучшим средством является предусмотренный регулятор усиления Ку на первом операционнике фильтра нч. При работе от линейного входа, компрессор замечательно справляется без дополнительных регулировок.С питанием схемы всё ещё проще. Выбор блока питания исходил от требования ленты WS2812B, точнее от потребления тока, плюс небольшой запас. 10 вольт получаем через DC/DC преобразователь.

Кстати, что бы первые пиксели не светились в паузе между треками, на вход МК надо повесить резистор на 100к относительно массы. Я когда рисовал схему упустил этот момент.


В архиве есть печатки усилителей. Расположение деталей микрофонного усилителя я не стал указывать. Поэтому прилагаю плату МУ как отдельный блок. На ней всё указано. Обратите внимание на перемычки.


(Visited 21 101 times, 1 visits today)