In diesem Beitrag zeige ich dir, wie du die 8×8 LED Punktmatrix am Raspberry Pi Pico mit MicroPython programmieren kannst.
Die 8×8 LED Punktmatrix habe ich dir bereits im Beitrag Arduino Lektion 8: Max7219 8×8 LED Shield für den Arduino vorgestellt, hier soll es nun darum gehen wie das am Raspberry Pi Pico funktioniert.
Benötigte Ressourcen für das Projekt
Für den Nachbau des Projektes benötigst du:
- einen Raspberry Pi Pico*,
- ein Micro USB Datenkabel*,
- eine 8×8 LED Punktmatrix mit MAX7219 Chip*,
- fünf Breadboardkabel*
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Den Raspberry Pi Pico bekommst du zum einen als einzelne Platine und mit ein paar Features mehr als MAKER Pi Pico von Cytron.



Für den Pi Pico habe ich auch eine kleinere Erweiterungsplatine entwickelt, auf welche dieser gesteckt werden kann und die Pins recht einfach mit Breadboardkabel abgegriffen werden kann.
Anschluss der 8×8 LED Punktmatrix an den Pi Pico
Die 8×8 LED Punktmatrix wird über der SPI Schnittstelle programmiert und somit benötigen am Pi Pico folgenden Anschluss.
8×8 LED Punktmatrix | Raspberry Pi Pico |
---|---|
VCC | 3.3V |
GND | GND |
DIN | GP7 |
CS | GP5 |
CLK | GP6 |
Hier nun der Aufbau der Schaltung:
Programmieren der 8×8 LED Punktmatrix mit MicroPython
Python Modul zum steuern einer 8×8 LED Punktmatrix
Zum steuern oder eher zum Programmieren der 8×8 LED Punktmatrix verwende ich das Modul „max7219.py“ welches du kostenfrei vom GitHub Repository mcauser / micropython-max7219 als ZIP-Datei herunterladen kannst.
Das nachfolgende Beispiel habe ich vom englischen Beitrag Raspberry Pi Pico(8): MAX7219 8×8 LED display on-board temperature entnommen und leicht umgeschrieben.
from machine import Pin, SPI, ADC import max7219 from utime import sleep MAX7219_NUM = 1 MAX7219_INVERT = False MAX7219_SCROLL_DELAY = 0.15 cs_pin = 5 spi = SPI(0) display = max7219.Matrix8x8(spi=spi, cs=Pin(cs_pin), num=MAX7219_NUM) display.brightness(2) while True: text = "Hello World!" for p in range(MAX7219_NUM * 8, len(text) * -8 - 1, -1): display.fill(MAX7219_INVERT) display.text(text, p, 1, not MAX7219_INVERT) # Display in the x, y position(string, x, y, color=1) display.show() sleep(MAX7219_SCROLL_DELAY)
Ausgabe der Zeichenkette „Hello World!“.
Fazit & Ausblick
Ein Problem war das richtige Modul zur Programmierung zu finden. Ein erster Versuch mit der Adafruit Bibliothek MAX7219 war nicht sehr erfolgreich, aber auch hier gilt „Google ist dein Freund“ und so bin ich auf der Seite von Ceiling Tsai gestoßen, wo dieser Aufbau recht gut in Englisch beschrieben wurde.
1 thought on “Raspberry Pi Pico #10: 8×8 LED Punktmatrix”