Как подключить светодиодную матрицу 8х8 к Arduino. Какие библиотеки использовать для управления матрицей. Как написать программу для вывода изображений на светодиодную матрицу 8х8.
Что такое светодиодная матрица 8х8 и как она работает
Светодиодная матрица 8х8 представляет собой квадратный дисплей размером 8×8 светодиодов, организованных в виде сетки. Каждый светодиод может быть индивидуально включен или выключен, что позволяет отображать различные изображения, символы и анимации.
Основные характеристики светодиодной матрицы 8х8:
- 64 отдельных светодиода, организованных в сетку 8×8
- Возможность управления каждым светодиодом по отдельности
- Низкое энергопотребление
- Компактные размеры (обычно около 32×32 мм)
- Простота подключения к микроконтроллерам
Как работает светодиодная матрица 8х8? Каждый светодиод подключен к определенной строке и столбцу матрицы. Для управления матрицей используется метод мультиплексирования — поочередное включение строк и подача сигналов на нужные столбцы. За счет высокой скорости переключения создается иллюзия одновременного свечения всех светодиодов.
![](/800/600/https/i.ytimg.com/vi/6B8ncOktfaU/maxresdefault.jpg)
Подключение светодиодной матрицы 8х8 к Arduino
Для подключения светодиодной матрицы 8х8 к Arduino понадобится:
- Плата Arduino (например, Arduino Uno)
- Светодиодная матрица 8х8 с драйвером MAX7219
- 4 соединительных провода
- Макетная плата (необязательно)
Схема подключения светодиодной матрицы 8х8 к Arduino:
- VCC матрицы → 5V Arduino
- GND матрицы → GND Arduino
- DIN матрицы → пин 12 Arduino
- CS матрицы → пин 10 Arduino
- CLK матрицы → пин 11 Arduino
Обратите внимание, что некоторые модули матриц могут иметь другую маркировку выводов. В этом случае обратитесь к документации вашего конкретного модуля.
Установка необходимых библиотек для работы с матрицей
Для удобной работы со светодиодной матрицей 8х8 рекомендуется использовать специализированные библиотеки. Наиболее популярной является библиотека LedControl.
Чтобы установить библиотеку LedControl, выполните следующие шаги:
- Откройте Arduino IDE
- Перейдите в меню «Скетч» → «Подключить библиотеку» → «Управлять библиотеками»
- В поиске введите «LedControl»
- Найдите библиотеку LedControl и нажмите «Установить»
После установки библиотеки перезапустите Arduino IDE, чтобы изменения вступили в силу.
![](/800/600/https/1.bp.blogspot.com/-GDMJEuVad9M/VS5YPZEF-DI/AAAAAAAANHg/03g-UUZILvQ/s1600/Uno8x8Matrix.png)
Базовый скетч для управления светодиодной матрицей 8х8
Вот простой пример скетча для вывода изображения на светодиодную матрицу 8х8:
«`cpp #include- Подключает библиотеку LedControl
- Настраивает пины для подключения матрицы
- Инициализирует матрицу в функции setup()
- В цикле loop() отображает смайлик на матрице
- Очищает дисплей и повторяет цикл
Отображение текста на светодиодной матрице 8х8
Для вывода текста на светодиодную матрицу 8х8 можно использовать специальные функции библиотеки LedControl. Вот пример скетча для отображения бегущей строки:
![](/800/600/https/ampermarket.kz/images/1588-Matrix-Pinout.png)
Этот скетч демонстрирует, как можно отобразить бегущую строку на светодиодной матрице 8х8. Для полной работоспособности необходимо добавить битовые карты для всех букв алфавита.
![](/800/600/https/3.bp.blogspot.com/-sjOBo-PclS4/VWfqx7sJ_OI/AAAAAAAAEng/03yWhcg8cGk/s1600/schematic_matrix_zps977d653a.png)
Создание анимаций на светодиодной матрице 8х8
Светодиодная матрица 8х8 отлично подходит для создания простых анимаций. Вот пример скетча, который демонстрирует простую анимацию:
«`cpp #includeЭтот скетч создает анимацию пульсирующего круга на светодиодной матрице 8х8. Анимация состоит из 4 кадров, которые циклически отображаются в прямом и обратном порядке.
![](/800/600/https/wreckage.ru/wp-content/uploads/2019/04/dice-schematic.png)
Советы по оптимизации работы со светодиодной матрицей 8х8
При работе со светодиодной матрицей 8х8 следует учитывать несколько важных моментов:
- Энергопотребление: Старайтесь не включать все светодиоды на максимальную яркость одновременно, это может привести к большому потреблению тока.
- Обновление дисплея: Обновляйте только те части дисплея, которые изменились, чтобы уменьшить мерцание.
- Использование буфера: Для сложных анимаций используйте буфер в памяти, обновляя его, а затем отображая на матрице целиком.
- Яркость: Регулируйте яркость матрицы в зависимости от условий освещения и требований к энергопотреблению.
- Частота обновления: Экспериментируйте с частотой обновления для достижения баланса между плавностью анимации и нагрузкой на процессор.
Расширенные возможности: управление несколькими матрицами
Библиотека LedControl позволяет управлять несколькими светодиодными матрицами одновременно. Это дает возможность создавать более крупные дисплеи или сложные световые инсталляции.
Для подключения нескольких матриц:
![](/800/600/https/ae01.alicdn.com/kf/Heb9683940cc74b958826de60aeec1530p/MAX7219-Dot-Matrix-Module-Microcontroller-4-In-One-Display-with-5P-Line-red.png)
- Соедините выход DOUT первой матрицы с входом DIN второй
- Подключите CS и CLK всех матриц параллельно
- При инициализации LedControl укажите количество подключенных устройств
Пример инициализации для двух матриц:
Arduino Придбати в Києві, Україна
Arduino Придбати в Києві, Україна
Каталог
Arduino Arduino Original ARM AVR bluetooth CPLD dc-dc DISCOVERY DIY ESP32 ESP8266 Ethernet FPGA FPV GPS GSM IR LCD LED LoRa Micro:Bit MSP Nucleo NXP Odroid OrangePi PIC Raspberry Pi RFID RTC SD card servo Sonoff STEM STM32 TFT LCD Wi-Fi WiFi XBee Zigbee Драйвер Зарядное Игрушка измерения инструмент Книги коннекторы Корпус Набор KIT переходник Питание реле Шаговый |
|
Светодиодные матрицы
Сортировка: По умолчаниюНазвание (А — Я)Название (Я — А)Цена (низкая > высокая)Цена (высокая > низкая)Рейтинг (начиная с высокого)Рейтинг (начиная с низкого)Модель (А — Я)Модель (Я — А)
Выводить по: 25305075100
1
3002
В наличии: 65
1
2643
В наличии: 35
1
1908
В наличии: 109
1
2644
В наличии: 28
1
10298
В наличии: 76
1
2645
В наличии: 99
1
1910
В наличии: 22
1
3003
В наличии: 24
1
1909
В наличии: 25
1
2964
В наличии: 15
Модуль светодиодной матрицы 16х16
Модуль из 4 светодиодных матриц 8х8 точек, с управляющими микросхемами 74HC. .
660 ₽
1
548
В наличии: 8
Модуль светодиодной матрицы 32х8
Модуль из 4 светодиодных матриц 8х8 точек, с управляющей микросхемой M..
538 ₽
1
2337
В наличии: 24
Модуль светодиодной матрицы 64х8
Модуль из 8 светодиодных матриц 8х8 точек, с управляющей микросхемой M..
975 ₽
1
2673
В наличии: 59
Модуль светодиодной матрицы 8х8
Модуль светодиодной матрицы 8х8 точек, с управляющей микросхемой MAX72..
168 ₽
1
5551
В наличии: 20
1
2717
В наличии: 151
Светодиодная матрица NMM-20884AS11
Яркая светодиодная матрица 8х8 с общим катодом, красного цвета. Размер 61 x..
112 ₽
269
DIY набор «Светодиодная матрица»
DIY набор, в собранном виде представляющий из себя удобную в управлении све..
168 ₽
3001
1065
1064
2297
3264
766
1053
1940
2336
461
Модуль светодиодной матрицы 8х8
Модуль светодиодной матрицы 8х8 точек, с управляющей микросхемой MAX72..
168 ₽
2719
Светодиодная матрица 1088AS
Яркая светодиодная матрица 8х8, общий катод, небольшое энергопотребление. Ц..
89.5 ₽
2720
Светодиодная матрица 1088BS
Яркая светодиодная матрица 8х8, общий анод, небольшое энергопотребление. Цв..
89.5 ₽
2721
Светодиодная матрица 1588AS
Яркая светодиодная матрица 8х8, общий катод, небольшое энергопотребление. Ц..
102 ₽
2722
Светодиодная матрица 1588BS
Яркая светодиодная матрица 8х8, общий анод, небольшое энергопотребление. Цв..
102 ₽
Показано с 1 по 30 из 32 (всего 2 страниц)
Взаимодействие светодиодной матрицы 8×8 с использованием драйвера MAX7219 и Arduino…
Здесь мы продемонстрируем, как соединить модуль светодиодной матрицы 8×8 с Arduino UNO при использовании светодиодного драйвера MAX7219. Драйвер светодиодов MAX7219 можно использовать для управления 7-сегментными дисплеями, отображающими до 8 цифр, гистограммами или 64 отдельными светодиодами. Драйвер связывается с Arduino через SPI, поэтому вам нужно всего три провода для управления дисплеем. Поскольку MAX7219 может управлять максимум 64 светодиодами, максимальный размер точечно-матричного дисплея, который он может использовать, составляет 8×8 пикселей. Тем не менее, вы можете последовательно подключить несколько дисплеев для создания одного большого дисплея, подключив DOUT первого дисплея к DIN следующего дисплея. VCC, GND, CLK и CS являются общими для всех дисплеев. В интерфейсе SPI всегда есть одно ведущее устройство (Arduino), которое управляет периферийными устройствами (также известными как ведомые). Вы можете управлять дисплеем либо через аппаратный интерфейс SPI микроконтроллера AVR Arduino, либо через три произвольных цифровых контакта (программный SPI). Аппаратные контакты SPI (MOSI, MISO и SCK) находятся в определенном месте на каждой плате Arduino. Этот интерфейс быстрее, чем использование программного SPI.
ХАРАКТЕРИСТИКА
- Напряжение питания (Вс): 4,0–5,5 В
- Потребляемый ток: 330 мА
- Ток источника привода сегмента: -40 мА
- Ток выключения: 150 мкА
- Частота сканирования: 500–1300 Гц, 800 Гц (тип.)
- Интерфейс: SPI (четырехпроводной)
- Макс. тактовая частота последовательного порта: 10 МГц (макс.)
- Рабочая температура (MAX7219E): -40°C ~ 85°C [1]
СОЕДИНЕНИЕ
MAX7219 Дисплей | Ардуино |
---|---|
ВКЦ | 5В |
Земля | ЗЕМЛЯ |
DIN | 12 (МОСИ) |
КС | 10 (нержавеющая сталь) |
ЦЛК | 11 (СКК) |
Если вместо этого вы хотите использовать программный SPI, вы можете подключить DIN, CS и CLK к любому из цифровых контактов Arduino. Вам просто нужно указать номера контактов в настройках кода Arduino.
Принципиальная схема
БИБЛИОТЕКА
Чтобы упростить управление точечной матрицей, вам необходимо скачать и установить библиотеку LedControl в Arduino IDE. Чтобы установить библиотеку, выполните следующие действия:
МЕТОД 1
- Перейдите в меню «Эскиз».
- Выберите «Включить библиотеки».
- Перейти к управлению библиотеками.
- Найдите LedControl и установите его.
МЕТОД 2
Вы можете установить его извне, используя следующую ссылку. https://github.com/wayoda/LedControl.
После загрузки zip-файлов
Перейдите в Sketch → Включить библиотеку → Добавить библиотеку .ZIP
Затем добавьте загруженные zip-файлы.
Теперь библиотеки включены в вашу Arduino IDE.
Библиотека Adafruit содержит очень хорошие примеры для дисплеев с разрешением 128×32 и 128×64.
Вы найдете примеры OLED-дисплеев в меню «Файл» > «Примеры» > «Adafruit SSD1306» >, а затем выберите тип дисплея в Arduino IDE.
Самый простой способ отобразить что-либо на точечной матрице — использовать функции setLed(), setRow() или setColumn(). Эти функции позволяют управлять одним светодиодом, одной строкой или одним столбцом одновременно.
Вот параметры для каждой функции
SetLed (адрес, строка, столбец, состояние)
addr: это адрес вашей матрицы, например, если у вас есть только 1 матрица, int addr будет равен нулю.
row: строка, в которой расположен светодиод
col: столбец, в котором расположен светодиод
state: это правда или 1, если вы хотите включить светодиод
это false или 0, если вы хотите выключить его
setRow (адрес, строка, значение)
setCol (адрес, столбец, значение)
Как указывалось ранее, эта матрица имеет 8 столбцов и 8 строк. Каждый из них пронумерован от 0 до 7. Вот цифра для лучшего понимания:
Если вы хотите отобразить что-то в матрице, вам просто нужно знать, включены ли в определенной строке или столбце светодиоды или нет.
.
ТЕСТИРОВАНИЕ
ЭТАП 1:
Подключите кабель A к B к USB-порту компьютера и убедитесь, что порт обнаружен, установив флажок в диспетчере устройств.
ШАГ 2:
Откройте два окна Arduino IDE, выберите Arduino UNO в качестве платы и выберите соответствующий COM-порт. Плата
: Инструменты > Плата > Arduino/Geniuno UNO.
ШАГ 3:
Порт: Инструменты > Порт в Arduino
ШАГ 4:
- Скомпилируйте и загрузите приведенный выше исходный код на плату Arduino Uno через Arduino IDE.
- После завершения загрузки вы можете увидеть вывод на светодиодном матричном дисплее 8 * 8 Подключение и настройка Arduino | Светодиодные рюкзаки Adafruit
- Подключите CLK к часам I2C — на Arduino UNO это аналоговый номер 5 (или SCL), на Leonardo его цифровой номер 3, на Mega его цифровой номер 21
- Подключите DAT к данным I2C — на Arduino UNO это аналоговый номер 4 (или SDA), на Leonardo его цифровой номер 2, на Mega его цифровой номер 20
- Подключите GND к общему заземлению
- Подключите VCC+ к источнику питания — 5 В лучше всего, но 3 В также подходят для микроконтроллеров 3 В.
Сохранить Подписаться
Пожалуйста, войдите, чтобы подписаться на это руководство.
После входа в систему вы будете перенаправлены обратно к этому руководству и сможете подписаться на него.
Вы можете использовать их с микроконтроллером 3,3 В или 5 В. Просто подключите контакт VCC+ к тому же напряжению, что и логика вашего микроконтроллера.
Мы написали базовую библиотеку, которая поможет вам работать с матричным рюкзаком mini 8×8. Библиотека написана для Arduino и будет работать с любым Arduino, поскольку использует только выводы I2C. Код очень портативный и может быть легко адаптирован к любому микроконтроллеру с поддержкой I2C.
Подключение к матрице очень просто
Затем загрузите библиотеку Adafruit LED Backpack и библиотеку Adafruit GFX из диспетчера библиотек Arduino.
Откройте диспетчер библиотек Arduino:
Найдите библиотеку Adafruit LED Backpack и установите ее
Найдите библиотеку Adafruit GFX и установите ее
Если вы используете более раннюю версию Arduino IDE (до 1.8.10), также найдите и установите Adafruit_BusIO (более новые версии будут устанавливать эту зависимость автоматически).
После перезагрузки вы сможете выбрать пример скетча File→Examples→Adafruit_LEDBackpack→matrix88 . Загрузите его в Arduino, как обычно. Вы должны увидеть базовую тестовую программу, которая выполняет множество различных процедур рисования
У нас также есть отличное руководство по установке библиотеки Arduino по адресу:
http://learn.adafruit.com/adafruit-all-about-arduino-libraries -установить-использовать
Когда вы будете довольны тем, что матрица работает, вы можете написать свои собственные наброски.