Библиотека GitHub

RGBmatrixPanel

Библиотека RGB-matrix-Panel для Arduino: модифицированная версия Adafruit для работы с RGB матрицами 64x32 и 32x16 на драйверах 6126A, поддержка графических примитивов, текста и заливки.

tremaru / RGB-matrix-Panel Обновлено 12:53 04.12.2025 Ветка master

Описание

Общие сведения

Данная библиотека предназначена для работы со светодиодными матрицами RGB матрица 64х32 P2.5 и RGB матрица 64х32 P3. В данную версию библиотеки добавлена возможность работы с матрицей 64x32 с драйверами 6126A

основная информация по библиотеке находится тут: Wiki - RGB матрица 64х32

Подключение библиотеки

  • Если Вы используете матрицу 32х16, тогда закомментируйте строку с константой D, и удалите её в дальнейшем в строке объявления объекта;
  • Если Вы используете матрицу 32х32, тогда удалите из строки объявления объекта значение 64 в конце;
  • Если Вы используете матрицу 64х32, тогда оставьте всё, как есть;

Функции библиотеки

  • Функция begin() — инициирует работу светодиодной матрицы;
  • Функция fillScreen() — заливка всей матрицы указанным цветом;
  • Функция drawPixel() — заливка одного светодиода указанным цветом;
  • Функция drawLine() — заливка линии толщиной 1 пиксель указанным цветом;
  • Функция drawRect() — заливка рамки прямоугольника толщиной 1 пиксель указанным цветом;
  • Функция fillRect() — заливка прямоугольника указанным цветом;
  • Функция drawCircle() — заливка рамки окружности толщиной 1 пиксель указанным цветом;
  • Функция fillCircle() — заливка окружности указанным цветом;
  • Функция drawBitmap() — вывод произвольного изображения;
  • Функция setCursor() — указание верхней левой точки начала вывода текста;
  • Функция setTextWrap() — перенос текста на следующую строку;
  • Функция setTextSize() — задание размера букв текста;
  • Функция setTextColor() — задание цвета выводимому тексту;
  • Функция print() — вывод текста;
  • Функция backBuffer() — возвращает адрес буфера матрицы;
  • Функция включения двойной буферизации — добавляет двойную буферизацию для сглаживания эффектов анимации и уменьшения эффекта "мерцания";
  • Функция swapBuffers() — при включенном двойном буфере - выводит из двойного буфер обмена данные;
  • Функции width() и height() — позволяют получить значение размера матрицы;

Функции задания цвета

Изначально, библиотека была рассчитана на вывод цвета в формате 3R3G3B (3 бита на канал).

В дальнейшем, после внесения в неё изменений, формат вывода менялся на 4R4G4B (4 бита) и 8R8G8B (8 бит), а в последней версии стал универсальным для всех дисплеев и матриц, и теперь выводится в формате 5R6G5B.

В связи с этим, у библиотеки есть несколько функций задачи цвета, которые в конечном итоге выводят цвет в формате 5R6G5B:

  • Функция Color333() — заливка пикселя(ей) указанным цветом;
  • Функция Color444() — заливка пикселя(ей) указанным цветом;
  • Функция Color888() — заливка пикселя(ей) указанным цветом;
  • Функция ColorHSV() — заливка пикселя(ей) указанным цветом;