MAX7219 (обновлено: 20 Apr 2021, 08:28:48)

MAX7219

Для отправки сообщения через GET запрос необходимо отправить команду /matrixmsg?txt=text&shift=0,

где shift - скорость бегущей строки в мс. 0 - бегущая строка выключена, просто вывод.

Управление яркостью /matrixbr?mode=X, где X - число 0...15.

Функция доступна в конструкторе кода. Вывод текста через MQTT по ссылке login/hostname/matrix/msgX,

где X - интервал бегущей строки, параметр не обязательный. Управление яркостью по ссылке login/hostname/matrix/light


MAX7219 - это матрицы из отдельных модулей на 8х8 точек. Соединяются последовательно. Прошивка поддерживает до 10 модулей.

Демонстрация матрицы видео на ютуб.

Подключение матриц

Матрицам необходимо подключить питание 5в. Необходимо выставить в настройках прошивки на вкладке "Matrix Disp" выводы GPIO CLK, DATAIN, CS.

К выбранным GPIO подключаем соответствующие выводы матрицы.


Настройка матриц

Кроме настройки GPIO указанных выше требуется выбрать тип матрицы, поворот дисплея на 90 градусов если требуется. Необходимо выбрать количество используемых матриц.

Для вывода своего текста на матрицу необходимо установить опцию "конструктор строк" в конструкторе прошивки.

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

Ниже необходимо установить соответствующие опции вывода времени, а так же выбрать профили конструктора строки, которые необходимо вывести.

Можно выбрать несколько профилей, они будут склеены.

Для плавного хода бегущей строки - рекомендуется в конце и в начале строки добавить несколько пробелов.

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

Пример: _TIME_ Дома _VS11_°C _VS12_% Улица _NM2_°C Прогноз Сегодня _GTT_°C, Завтра _GYT_°C _TIME_

Дополнительно можно настроить с какой секунды текущей минуты запускать бегущую строку в поле "Line print", а так же установить скорость бегущей строки в "Speed print", при установленной скорости равной нулю строка не будет бегать. Указать интервал бегущей строки в минутах можно в поле Interval.


Управление GET запросами

Для отправки сообщения через GET запрос необходимо отправить команду по адресу IP_Адрес/matrixmsg?txt=text.

Дополнительные параметры: &shift=Y - скорость бегущей строки в мс. Y=0 - бегущая строка выключена, просто вывод.

Управление яркостью доступно через запрос IP_Адрес/matrixbr?mode=X, где X - число 0..15. Значение 100 выключит дисплей.


Управление через MQTT

Текст на матрицу необходимо отправить в топик login/hostname/[set/]matrix/msgX, где X - скорость бегущей строки, параметр не обязательный.

Топик  login/hostname/[set/]matrix/light - Управление яркостью.

Топик - set добавляется, если включены отдельные топики.

Управление через Interpreter

Через опцию Interpreter доступно управление и вывод любых данных по условиям ,используя шаблоны или метрики через функцию printm(скорость строки, текст) ,  например: printm(0, _TIMES_ _DATE_) 

Подробнее в документации Interpreter


Управление яркостью через планировщик заданий(Scheduler) и Logic2

При установленном модуле планировщика заданий доступно управлением яркостью дисплея по времени.

Для этого необходимо на вкладке Scheduler модуля выбрать задачу matrix и указать в полях время и дни недели.

В поле state указать желаемую яркость дисплея. Значение 100 выключит дисплей.

При установленном модуле Logic2 (Логический модуль2) возможно управлять яркостью по цепочке условий, например по датчику освещенности и/или по времени комбинируя условия.

На вкладке event требуется указать событие Matrix brightness. Более подробное описание доступно на странице данной опции.

Управление бегущей строкой

Бегущая строка вызывается по интервалу, указанному в поле Interval настроек модуля, а так же при обращению к GPIO 198.

К примеру можно вызвать бегущую строку через ИК пульт, Радио пульт, прерывание (KEY), по событию в логическом модуле, указав данный GPIO в настройках опции.