MAX7219 8×8 LED Matrix

Один MAX7219 + одна матрица 8×8, вход DIN/CLK/CS

Светодиодный индикатор с аппаратным сканированием и регулировкой яркости.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьЛегко
Проекты с компонентом

О МОДУЛЕ

Что делает Один MAX7219 + одна матрица 8×8, вход DIN/CLK/CS

Модуль объединяет одиночную матрицу 8×8 и драйвер MAX7219: сканирование строк выполняется аппаратно, поэтому контроллеру достаточно отправлять изменения. Он подходит для пиктограмм и простых анимаций. Описано исполнение с одним драйвером, не четырёхсекционный FC-16.

Расположение строк и столбцов зависит от разводки конкретной платы. Тест ниже последовательно зажигает точки, позволяя увидеть порядок без предположения о типе матрицы; симметричный крест должен получаться при обычном повороте или отражении. Для текста затем нужно выбрать подтверждённую карту координат. Ток определяется RSET на плате и яркостью, поэтому параметры одной сборки не гарантируют параметры другой.

На фото один модуль MAX7219CNG с матрицей 8×8; производитель платы не установлен. MAX7219 single 8x8 matrix. Фото: Nevit Dilmen. Оригинал: https://commons.wikimedia.org/wiki/File:LED_Light-emitting_diode_1480262_3_4_HDR_Enhancer.jpg . Лицензия фотографии: CC BY-SA 3.0, https://creativecommons.org/licenses/by-sa/3.0/ . Изменения: Удалён исходный фон вокруг полного модуля и между внешними контактами; очищены видимые просветы монтажных отверстий. Пропорциональное масштабирование, размещение на предоставленном фоне и JPEG-сжатие. Геометрия, цвет, маркировка и видимые детали не перерисовывались. Адаптация фотографии распространяется по той же лицензии.

Схема распиновки

Авторская карта входного разъёма одиночного MAX7219CNG-модуля: вид со стороны светодиодов, вход снизу. Производитель платы неизвестен; порядок верхнего разъёма на фото не читается и не указан. Для GPIO 3,3 В требуется согласование уровней.

Источники: 1, 2. Авторская схема SLDV LAB по документации микросхемы и читаемой маркировке платы; скрытый порядок верхнего разъёма не реконструировался.

Характеристики

Контроллер
MAX7219
Индикация
Одна матрица 8 × 8
Драйверов в примере
1
Ступеней цифровой яркости
16
Линии управления
DIN, CLK, LOAD/CS; последовательный SPI-подобный протокол
Интерфейс
SPI
Питание модуля
Модуль питается от стабилизированных 5 В; MAX7219 требует логическую «1» не ниже 3,5 В. В примере UNO R3 с 5-В GPIO; прямое управление от ESP32 3,3 В не гарантировано.

ПРАКТИКА

Подключение

Контакт модуляКонтакт платыНазначение
VCCВнешний стабилизированный источник 5 ВИсточник выбрать по току реальной платы; не питать дисплей от GPIO. UNO в примере питается USB, его 5V с внешним +5V не соединять
GNDGND UNO и минус источникаОбщая земля обязательна
DIN (вход)D12LedControl использует программную передачу; это не аппаратный MOSI UNO
CLKD11Программный clock LedControl
CS / LOADD10Arduino UNO R3 (ATmega328P), 5 В
DOUT (выход)Не подключатьДля одного модуля; при каскаде идёт в DIN следующего

Подходит для Arduino. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги подключить MAX7219 8×8 LED Matrix. Уточни контроллер, среду, число драйверов, маркировку входов и ток конкретного модуля. Подготовь питание 5 В с общей землёй и совместимые уровни DIN/CLK/LOAD; для ESP32 проверь преобразование 3,3→5 В. Используй LedControl 1.0.6 и полный пример с малой начальной яркостью. Проверь направление передачи, порядок строк и столбцов и объясни, что библиотека не читает подтверждение присутствия MAX7219.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Библиотека
LedControl 1.0.6

Нужен только LedControl.h; SPI.h для этого программного интерфейса не требуется.

Конструктор
LedControl display(12, 11, 10, 1);

DIN, CLK, LOAD/CS, количество драйверов; выводы относятся к UNO R3.

Запуск
display.shutdown(0, false);

Первый драйвер имеет индекс 0.

Начальная яркость
display.setIntensity(0, 1);

Диапазон 0–15; программная яркость не заменяет правильный RSET.

Arduino UNO R3: проверка координат и мигающий крест

cpp
#include <LedControl.h>
LedControl display(12, 11, 10, 1); // DIN, CLK, LOAD, count

void setup() {
  display.shutdown(0, false);
  display.setScanLimit(0, 7);
  display.setIntensity(0, 1);
  display.clearDisplay(0);
  for (uint8_t row = 0; row < 8; ++row) {
    for (uint8_t col = 0; col < 8; ++col) {
      display.clearDisplay(0);
      display.setLed(0, row, col, true);
      delay(80);
    }
  }
  display.clearDisplay(0);
}
void loop() {
  for (uint8_t row = 0; row < 8; ++row) {
    uint8_t pattern = (1U << row) | (1U << (7 - row));
    display.setRow(0, row, pattern);
  }
  delay(1000);
  display.clearDisplay(0);
  delay(1000);
}

Полный скетч для Arduino UNO R3, Arduino AVR Boards 1.8.6 и LedControl 1.0.6. API сверено с исходниками, физический тест не выполнялся. Тест показывает фактический порядок адресации; не объявляет любую плату FC-16 или PAROLA. При другой разводке адаптируйте карту пикселей после наблюдения. При мерцании проверьте напряжение под нагрузкой, общую землю и развязку питания у модуля. У MAX7219 нет ACK: выполнение кода не подтверждает подключение.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты