Comments 19
Страшно за инженеров из Ikea — куча микросхем сзади матрицы — это регистры.
И если использовать динамическую индикацию — а ее нужно использовать — их все можно было убрать, использовав чарлиплексинг. Либо оставить 1 на ряд и 1 на столбец (эти регистры 16-битные). Дальше ШИМ (как и делал автор) и все.

Вобщем, схемотехника тихий ужас и прошлый век.
Так при динамической индикации яркость упадёт. Потребуется существенно больший ток на светодиоды выдавать, хоть и в импульсе. А их там 256.
А ШИМ, может быть, стоит на BAM заменить — ресурсов контроллера требуется меньше и вроде как для глаза приятнее.
А разве BAM не будет хуже аппаратного ШИМ, который есть почти на всех микроконтроллерах?
Ну, если каналов ШИМ хватает, то программный BAM, конечно, будет для процессора хуже. Если же не хватает, то лучше. Но тут меня другое интересует: я где-то читал, что BAM для глаза приятнее, чем ШИМ.
Hardare-канал шим нужен всего один при динамической индикации, его просто надо будет переключать, другое дело что при чарлиплексинге это сложнее.
BAM действительно приятнее при низхких частотах — часто про это пишут, но это, зачастую, связано с тем, что люди просто ШИМят и все, не используюя таблицу гамма-коррекции — потому и неприятно глазу.
Во-первых, автор BAM и сделал, это прямо написано в тексте.
Во-вторых, у BAM есть неприятная особенность при градиентном включении (не важно, вниз или вверх): при проходе через 128 получается скачок яркости (127 это 01111111, 128 это 1000000, составляем вместе — и получаем полностью все время включенный светодиод в течение целого цикла, а не половинки, как нужно). Так что медленные мерцания от темного к светлому или наоборот этой технологии противопоказаны, и у автора это явно заметно в кадрах, когда он показывает видео с камеры и машет пальцем.
Во-первых, автор BAM и сделал, это прямо написано в тексте.


Действительно! Самое удивительное, что я как-то это пропустил в тексте! :) И, похоже, не один я. :)
Так при динамической индикации яркость упадёт

Это с чего вдруг? Все зависит от того, какой будет ШИМ.

BAM тоже можно, он более экономиный, если делать софтово. Но лучше все-таки hardware-шим.

Ну и таблица гаммы, разумеется, чтобы яркость нормально регулировать.
Это с чего вдруг?


Это с того, что у вас появится развёртка на 256 диодов, которые вы будете зажигать по очереди.
Это с того, что у вас появится развёртка на 256 диодов, которые вы будете зажигать по очереди.

Вы про 24 кадра помните? И частоту современных процов? :)
Яркость на глаз будет точно такая-же, поверьте.
Яркость на глаз будет точно такая-же, поверьте.


Так интервал времени горения светодиода t=(1/f)*(1/n), где n- количество светодиодов, а f- частота обновления всей матрицы в секунду. Тогда ток за секунду, проходящий через светодиод будет I=f*i*t=i/n, где i-ток одного импульса светодиода. Таким образом, I не зависит от частоты обновления матрицы, но зависит от количества светодиодов.
Инерционность глаза забыли.
Ну и ток надо смотреть не за секунду, а за момент импульса.
Да что-то не помогает. Много раз проверял на часах с ГРИ и ВЛИ — хоть ты тресни, ток нужно повышать.
За счёт инерционности вы вместо ярких вспышек и темноты будете видеть непрерывный неяркий свет. Но видимая яркость его будет соответствовать энергии, получаемой глазом за единицу времени. Иначе, как, по-вашему, ШИМ-регулировка яркости работает?
… предполагаете что нибудь аналогично семейству STM32F103xx или ESP32 смотрелось органично в подобном устройстве?
Я думаю, что любой микроконтроллер, у которого хватило бы линий смотрелся бы тут лучше. Ну а если нужен WiFi тогда однозначно ESP.

Автор оригинальной статьи работает в Espressif, поэтому ESP для него это очевидный выбор.

Only those users with full accounts are able to leave comments. Log in, please.