Подключаем светодиодную матрицу к Raspberry pi

Давно лежала в коробочке светодиодная матрица 8×8 в комплекте с чипом для её управления MAX7219, резистором 10 кОм, конденсаторами — керамическим на 100 нФ и электролитическим на 10 мкФ, монтажной платой и несколькими коннекторами. Комплект получается как на фото. Наконец-то собрался с силами и решил её подключить.

Долго искал, как такой комплект подключить к raspberry и пример программы на С+, но не нашел, зато есть много примеров для ардуино. Удалось найти только пример кода на питоне и инструкцию по настройке, который за неимением лучшего и использовал. А в этом материале расскажу подробно, как подключить.

Во-первых, необходимо этот комплект собрать на печатной плате — там все просто, особенно после прочтения инструкции по пайке «паять просто».

8a792a8b0f0245a98564f79cf8007be7.JPG
dc7036db80434358bf3642d609e93926.JPG
0f45168ee33247329f6b4aac15476d19.JPG

Приступаем к настройке малины
Проверяем, включен ли у нас SPI. Для этого в терминале вводим:

dmesg | grep spi


Должно получиться что-то вроде этого:

[    8.581285] spi spi0.0: setting up native-CS0 as GPIO 8
[    8.589797] spi spi0.1: setting up native-CS1 as GPIO 7


Если ничего в ответ не выводится,

то включаем SPI так
Заходим в программу настройка Raspberry:
sudo raspi-config


Пункт 8 Advanced options > A6 SPI > Yes (Would you like the SPI interface enabled?) > OK > Yes (Would you like the SPI kernel module to be loaded by default?) > OK


Проверяем, установлен ли у нас SPI в /dev, для этого набираем в терминале:

ls -l /dev/spi*


На экране должны получить:

crw-rw---T 1 root spi 153, 0 Jan  1  1970 /dev/spidev0.0
crw-rw---T 1 root spi 153, 1 Jan  1  1970 /dev/spidev0.1

Подключаем наш модуль к Raspberry:
VCC — к 5V малины
GND — к gnd
DIN (data in) — GPIO 10 (SPIMOSI)
CS (chip select) — GPIO 8 (SPI CE0)
CLK (clock) — GPIO 11 (SPI CLK)

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

Устанавливаем необходимые программы для вывода информации на дисплей
Скачиваем библиотеку для работы с модулем:

git clone https://github.com/rm-hull/max7219.git


Устанавливаем необходимые компоненты:

sudo apt-get install python-dev python-pip
sudo pip install spidev
sudo python setup.py install

Запускаем имеющийся пример и проверяем работу модуля:

sudo python examples/matrix_test.py


На дисплее должна появиться бегущая строка с текстом из примера. Текст можно изменить, для этого правим файл с помощью команды:

nano examples/matrix_test.py


Выводимый на дисплее текст указан в скобках после команды device.show_message.

© Geektimes