ARDUINO Светодиодный индикатор громкости на адресной светодиодной ленте RGB.

Leon111_09

★★★✩✩✩✩
6 Июн 2021
441
110
53
Таганрог
forum.wisecomp.ru
Добрый день ребят. Мне, как в той песне "дело было вечером,делать было нечего." У меня есть сделанная по Гайверовской схеме (и программе) цветомузыка. Мне там понравился эффект VU_Meter-радуга. И решил его вынести в отдельный скетч, ну чтоб типа отдельный кусочек ленты сзади монитора моргал. Но,по старой привычке (чтоб "не изобретать велосипед") решил посмотреть в интернете: а вдруг уже есть готовое решение. и оказался прав. Правда,решение оказалось получше моей задумки: там в общей сложности четырнадцать разных эффектов, почти половина которых статические (типа подсветки),а вторая часть динамические,зависящие от звука. да и скетч рассчитан на две полосы. я его немного переработал и сделал, так сказать, моно-вариант: на одну ленту. оригинал взял отсюда:
VU метр. Светодиодный индикатор громкости. VU meter

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

Pasha_ZP_UA

✩✩✩✩✩✩✩
18 Окт 2019
14
2
Здравствуйте, при проверке прошивки в самой программе Ардуино выдает ошибки, что не так???
 

Pasha_ZP_UA

✩✩✩✩✩✩✩
18 Окт 2019
14
2
Вот ошибки.

Проверил оригинальную прошивку и все нормально.

Вот
 

Вложения

  • 326.2 KB Просмотры: 17
  • 250.1 KB Просмотры: 16
  • 539.5 KB Просмотры: 13

Leon111_09

★★★✩✩✩✩
6 Июн 2021
441
110
53
Таганрог
forum.wisecomp.ru
Установил версию 1.8.16
у меня установлена 1.8.15. вполне может быть что у вас какая-то библиотека устаревшая. посмотрите в шапке скетча библиотеки, и проверьте их на предмет обновления.
 

Elektronik

✩✩✩✩✩✩✩
27 Апр 2021
7
0
В схеме ошибка.Входы А4 иА5.А так всё работает.Пульта не хватает.
 

Pit_RS

✩✩✩✩✩✩✩
29 Дек 2021
2
0
Добрый день, а есть возможность прикрутить регулировку чувствительности на переменном резисторе? Сам к сожалению не силён в программировании.
 

Leon111_09

★★★✩✩✩✩
6 Июн 2021
441
110
53
Таганрог
forum.wisecomp.ru
@Pit_RS, На физическом уровне нет (не будете же вы ставить переменку в цепь выхода с микрофона на МК). На программном уровне это не тяжело: там в прошивке изменяется одна цифра чувствительности (вроде бы так-память подводит :)), но не будете же вы каждый раз,как хочется изменить чувствительность микрофона перешивать МК. В принципе, можно было бы дописать кусок кода,отвечающий за это,ввести еще один элемент управления в схему, но, если честно,мне сейчас не до этого. Если хотите-попробуйте сами это сделать: код открытый, я ,тем более, не автор его (так,модифицировал малехо)-возражать не буду :). Заодно и программированию подучитесь :).
Могу предложить самый бюджетный вариант решения вашей проблемы: установить какое нибудь препятствие перед микрофоном для прохождения звука. Этим вы ограничите чувствительность микрофона на нужный уровень ничего не меняя ни в прошивке ни в конструкции :).
 

poty

★★★★★★✩
19 Фев 2020
2,000
607
@Pit_RS, а прикрутить переменный резистор на выход микрофона (по типу громкости в усилителях) не вариант? Или и в электронике тоже не сильны?
 

Leon111_09

★★★✩✩✩✩
6 Июн 2021
441
110
53
Таганрог
forum.wisecomp.ru
прикрутить переменный резистор на выход микрофона
Это не вариант: там и так достаточно слабый сигнал выходит с микрофона: практически любой переменный резистор на минимуме его погасит чуть ли не до нуля.
 

Pit_RS

✩✩✩✩✩✩✩
29 Дек 2021
2
0
@Leon111_09, Я не использую микрофон, сигнал беру с выхода усилителя. Для разных источников уровень гуляет, проблема со слабым сигналом, на некоторых мигает только 10 светодиодов из 50. Я пробовал поставить в место одного резистора в делители переменный резистор, да уровень поднимается, но при отсутствии сигнала треть светодиодов просто светиться. Я нашёл проект похожего индикатора, там используется регулировка чувствительности. Я примерно понимаю как он работает, считывается данные с переменного резистора на аналоговом входе делятся на данные при выводе на ленту, но вот все это написать в коде у меня не получается, не знаю я С+.
Спасибо, что откликнулись, буду разбирается дальше.
 

poty

★★★★★★✩
19 Фев 2020
2,000
607
@Leon111_09, микрофон на вход, скорее всего, подключается через буфер или усилитель (в зависимости от модуля), так что не погасит.
@Pit_RS, если сигнала недостаточно, то проще его усилить с помощью одного каскада на транзисторе, а после него поставить переменный резистор (а лучше - добавить ещё эмиттерный повторитель). Изменение делителя лишь изменяет уровень нуля, не мудрено, что у Вас начинает светиться часть ленты.
В коде это потенциально можно поправить, но за счёт потери динамического диапазона (т.е. маленькие сигналы не будут выводиться вовсе, а большие - гореть постоянно полная линия светодиодов). А он там и так не ахти какой.
 
  • Лойс +1
Реакции: Leon111_09

Leon111_09

★★★✩✩✩✩
6 Июн 2021
441
110
53
Таганрог
forum.wisecomp.ru
а как сделать так что бы запоминался последний выбранный режим?
Добавьте в программу сохранение режима в энергонезависимую память через,например, 30 секунд выбора и работы действующего режима.