СоХабр закрыт.

С 13.05.2019 изменения постов больше не отслеживаются, и новые посты не сохраняются.

| сохранено

H Цветомузыка на светодиодной ленте WS2812 в черновиках

Привет дорогой читатель.

Предлагаю к сборке еще один вариант цветомузыки. Данный вариант построен на модуле с микроконтроллером STM32F103C8T6.

Схема цветомузыки:



Для сборки контроллера вам потребуется:

  • Модуль с микроконтроллером STM32F103C8T6;
  • Модуль микрофона;
  • Светодиодная лента с пиксельной адресацией WS2812B;
  • Модуль bluetooth (если требуется управление со смартфона).

Программа модуля микроконтроллера может снимать аудио сигнал с входов A0 и A1. Вы можете выбрать контакт аналогового входа A0 или A1 подключением вывода A15 к общему (G) выводу или оставив A15 не подключённым.

Второй вход вы можете использовать для подключения к линейному выходу устройства воспроизведения аудио. Используйте буферный усилитель для согласования выходного уровня с входным уровнем АЦП модуля микроконтроллера 0-3,3В. Каждая из схем имеет свои плюсы, и минусы. Для линейного входа нужен кабель, а микрофон принимает посторонние звуки.

Назначение кнопок:

Кнопка (контакт) B9 – Сохранение установленного режима как режима при включении питания;
Кнопка (контакт) B8 – Установка количества активных светодиодов в ленте;
Кнопка (контакт) B7 – Выбор динамической программы;
Кнопка (контакт) B6 – Выбор музыкальной программы;
Кнопка (контакт) B5 – Включение/выключение режима перебора динамических программ;
Кнопка (контакт) B4 – Установка яркости ленты;
Кнопка (контакт) B3 – Установка темпа переключения.

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

Программа для микроконтроллера STM32F103C8T6 доступна для скачивания c google диска. Выберите прошивку MC_**led.HEX c номером совпадающим с количеством светодиодов в вашей ленте: 30, 60, 72, 90, 120, 144, 150, 180, 210, 216, 240. Если позднее у вас изменится количество светодиодов в ленте вы сможете настроить их количество с помощью кнопки подключённой к выводу B8. Нажмите и удерживайте кнопку пока все светодиоды не будут задействованы.
Сохраните режим после установки количества светодиодов в ленте!

Кнопка подключённая к выводу B9 сохраняет установленный режим как режим по умолчанию. Для выполнения сохранения нажмите и удерживайте кнопку 3-4 секунды.

Наиболее просто программирование STM32F103C8T6 выполняется с помощью программы Flash loader demonstrator по UART. Для этого вам понадобится переходник USB-UART. В интернете есть несколько описаний процесса программирования STM32 по UART. Вы можете выбрать описание которое вам покажется более понятным. Будьте внимательны при подключении модуля микроконтроллера к программатору. Помните входы STM32F103C8T6 расчитаны на 3,3В.

Управление возможно c кнопок и/или из приложения под Android.

Программа “Цветомузыка“ под Android доступна для скачивания на Google Play.






Видео работы цветомузыки выложено на youtube:



+12
~2000

комментарии (8)

0
batja84 ,  
Алекс Гайвер тоже делал подобное.
0
FDA ,  
Классный проект! Сам давно подобное хотел сделать, но всё руки не доходили!
0
j_wayne ,  
Рекомендую программу залить на github.
0
saag ,  
До чего техника дошла, вспоминаешь свое первое знакомство на четырех П214 с простыми полосовыми фильтрами…
0
REPISOT ,  
Не понятно, умеет ли она «тру» цветомузыку, когда цвет зависит от частоты?
0
GarryC ,  
Я давно на 80с2051 делал фильтр АОН сигналов (8 частот), причем 8-битный, думаю, на Ардуино можно сделать не хуже.
0
OFFenderD ,  
Не, на github он прогу не вы зальёт, она платная. Парень решил тут немного заработать
0
juraspb ,  
Можно не использовать bluetooth. Все рулится с кнопок. Исходники на предыдущую версию на Arduino + ПК я выложил. В этом проекте упаковал два проекта в одну STM.