Индикатор уровня аудио сигнала усилителя VU-метр.

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

Здравствуйте. 

Есть желание сделать индикатор уровня аудиосигнала для усилителя мощности. Это столбец со светодиодами, чем выше уровень сигнала, тем больше светодиодов загорается в линейке.

Пробовал искать скетчи, но там маленькое кол-во всетодиодов в столбце. Я хочу замутить около 50 светодиодов в столбец.

С выводами я вроде бы определился, буду ставить микросхемы расширения портов. А вот с программной частью у меня небольшой затык. Как замутить зажигание столбика микросхем в зависимости от уровня поданного сигнала? Создать массив с контрольными точками уровней и сравнивать? Это массив 5х10. Но сколько времени уйдет на опрос и сравнение входящего сигнала и контрольных точек? будет ли скорость опроса и зажигания светодиодов достаточной для реального отображения уровня звукового сигнала?

П.с.  А нет ли готовых решений таких VU-метров?

 

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

Бред написал, сейчас по другому сформулирую.

Я хочу собрать две линейки по 64 светодиода на 8-ми разрядных сдвиговых регистрах. Как вариант я захочу одновременно помигать всеми 120 светодиодов. Сколько раз в секунду светодиоды могут засветится и погаснуть?

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

bigmaxxx пишет:

Бред написал, сейчас по другому сформулирую.

Я хочу собрать две линейки по 64 светодиода на 8-ми разрядных сдвиговых регистрах. Как вариант я захочу одновременно помигать всеми 120 светодиодов. Сколько раз в секунду светодиоды могут засветится и погаснуть?

Значит так. На весьма интересном сайте http://mk90.blogspot.com/2009/12/arduino-1.html сказано следующее:

"На вывод одного разряда необходимо как минимум выполнить одну ассемблерную инструкцию сдвига, одну - вывода в порт и две - на переход в цикле. МК построен по RISC-архитектуре и выполняет одну операцию за такт, работая на частоте 16 МГц. Значит, четыре такта он обрабатывает за 250 нс. Таким образом байт будет выведен не менее, чем за 2 мкс, а предельная частота составит 0,5 МГц (это грубая прикидка верхнего значения - буду признателен, если кто-то подсчитает точнее)."

в моем случае это составит 136х250=34мкс или по другому 30000 раз в секунду я смогу хажечь все 136 светодиодов.

rembo
Offline
Зарегистрирован: 14.11.2012

по идее количество столбцов зависит от частот которые будут визуализироваться. вы звук как снимаете? датчиком (как в старых светомузыках) или обрабатываете аудио сигнал?

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

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

rembo
Offline
Зарегистрирован: 14.11.2012

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

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

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

rembo
Offline
Зарегистрирован: 14.11.2012
bigmaxxx
Offline
Зарегистрирован: 26.02.2013

Не совсем. Мне надо только два канала, т.е. два столбика. У меня вопрос в следующем: отслеживать уровень сигнала я смогу, го как мне отследить превышение определенного уровня, при условии что у меня 128 светодиодов, каждый соответствует своему уровню. Создать два массива по 64 уровня?