Меню Закрыть

Обновление от 24.11.2018

Друзья, наконец собрался с силами и опубликовал новую версию прошивки. На самом деле было более 3-х промежуточных версий, которые строились на различных конфигурациях таймингов и таблиц яркостей. Очень трудно было выбрать фаворита, ибо на разном музыкальном материале смотрелась лучше то одна версия, то вторая. После продолжительных “втыканий” в моргающие лампочки, в конечном итоге, решил пока оставить изначальные значения таблицы яркости. В будущем, вполне вероятно, кривая экспоненты таблицы яркости будет не такая резкая. В этом случае будет доступно больше ступеней яркости, что позволит плавнее гаснуть светодиодам и улучшит дифференциацию уровня сигнала каждого канала.

Ключевыми изменениями в данной версии можно отметить оптимизацию отображения эффектов и их алгоритмов работы, изменение алгоритмов работы VU-метра, добавление возможности динамического изменения количества задействованных светодиодов, а также попытка адаптации эффектов под малое количество светодиодов. При количестве светодиодов до 50 будут использованы другие значения таймингов, однако от тенденции “меньшее количество светодиодов = более быстрая работа” никуда не денешься.

  • Устранено возможное мерцание эффектов ввиду несогласованности момента отправки данных на ленту и прерывания, в котором готовится массив данных на отправку;
  • Обработка затухания эффектов вынесена на отдельный 8-и битный таймер. Таймер включается при переходе в режим паузы и выключается при выходе из него;
  • Убрана подмена значений RGB при работе в разных цветовых пространствах, теперь библиотека возвращает сразу нужные значения;
  • Полностью переписаны алгоритмы работы режимов VU-метра. Обработка вынесена в отдельный цикл. Теперь расчет осуществляется сразу на половину ленты, а затем зеркалируется на вторую половину. Затухание реализовано попиксельно сверху-вниз, а не по всей длине, что вызвало паразитное мерцание. Положение Fadespeed влияет на скорость затухания. Исправлен расчет цветов в зависимости от количества светодиодов. Режимы VU-метра включены в случайный выбор при активации Demo-режима;
  • Уменьшен шаг изменения скорости затухания для разных положений “Fadespeed”;
  • Эксперементально добавлена возможность отключения функции окна библиотеки FHT. Библиотека будет отрабатывать чуть быстрее, ценой качества разделения по каналам. В будущем ее место займет что-нибудь более полезное. Настройку можно сохранить. Настройку можно сбросить на значение по-умолчанию – выключено;
  • Добавлена возможность динамического изменения количества задействованных светодиодов. Теперь нет необходимости делать кучу прошивок под разное количество светодиодов. Есть одна прошивка в которую можно растянуть/ужать на необходимое количество светодиодов и нет необходимости каждый раз перепрошивать МК. Шаг изменения – по 8. Диапазон – от 8 до 240. По умолчанию установлено 8х3=24 светодиода. Настройку можно сохранить. Настройку можно сбросить на значение по-умолчанию – 8х3=24;
  • Если количество светодиодов меньше 50, то добавляется один пустой цикл в обработку таймера обработки кнопок/эффектов и применяется больший коэффициент к значению затухания, что должно немного сдержать скорость работы эффектов в режиме паузы на малом количестве светодиодов.

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

Прошивка от 24.11.2018, исходные коды и более краткий changelog, опубликованы в разделе прошивок. Обращу внимание, что в отличии от предыдущих версий теперь исполняемый hex-файл один, а не “зоопарк” заранее подготовленных под некоторое количество светодиодов прошивок. Необходимое количество светодиодов устанавливается в процессе работы устройства с возможностью сохранения данного значения в память.

18 комментариев

  1. ArtMax
    ArtMax

    Отлично! Спасибо огромное m1x, наконец то появилась возможность изменять количество светодиодов! И еще очень много приятных изменений! Очень рад что проект не заброшен и развивается дальше!!! Успехов вам!

  2. m1x
    m1x

    Что имеется ввиду под чувствительностью? Если чувствительность устройства к уровню входящего аудио сигнала, то его можно немного программно поднять. Правда для этого придется пожертвовать некоторым количеством градаций яркости. Возьму на заметку. Если это не скажется негативно на работе, то можно будет попробовать.

    • m1x
      m1x

      Уже думал обновить видео, поэтому недавно заказал на али ленту в 1 метр на 96 светодиодов. Когда приедет можно будет сделать новое видео.

  3. m1x
    m1x

    По поводу АРУ думаю немного другое имелось ввиду. Наверное что-то вроде MAX9814 – это микрофонный предусилитель с АРУ на борту. Недавно пару платок приехало с али, но пока не разбирался как оно работает.

      • ArtMax
        ArtMax

        Сколько микрофончиков не перепробовал, лучший эффект достигается только на max4466, MAX9814 и им подобные отвратительно работают, после резкого пика заваливают усиление на 0, и все пропадает на 1сек примерно, что для них свойственно как для АРУ, заваливает низкие частоты очень сильно, вообщем минусов настолько много, что АРУ не успевает отрабатывать, АРУ в виде микросхемы здесь не нужно.

  4. pechon
    pechon

    Здравствуйте M1X!
    Давно слежу за вашей работой над цветомузыкой и есть желание повторить вашу работу, но чтобы начать хочу поинтересоваться, не планируете ли Вы использовать в проекте инфракрасное ДУ? По идее можно использовать любой пульт, от любого телевизора. Уменьшится количество кнопок на самом устройстве, проще будет разводка платы, удобство использования опять же.

    • m1x
      m1x

      Привет! Да, в планах такое есть. Пока не очень понятно как сделать удобно вход в режим обучения, процесс обучения, и индикацию обучения… Как вариант брать определенный перечень комманд и жмякать по порядку кнопки на пульте… Тут надо хорошенько подумать.

Добавить комментарий

Translate »