Auf dem neuen Arduino UNO R4 WiFi findest du neben einem ESP32 Chip noch zusätzlich eine 12×8 Matrix mit roten LEDs. Wie du diese LED-Matrix programmierst, möchte ich dir hier in diesem Beitrag ausführlich zeigen.
Den neuen Mikrocontroller habe ich dir bereits im Beitrag Schneller, stärker, drahtloser: Der Vergleich von Arduino UNO R4 WiFi und R3 vorgestellt, hier soll nun speziell um die LED-Matrix gehen.
Auf dem Mikrocontroller Arduino UNO R4 WiFi ist vom Hersteller bereits ein kleines Programm installiert, welches auf der LED-Matrix eine kleine Animation anzeigt.
Inhaltsverzeichnis
- Bibliothek zum Ansteuern der LED-Matrix
- Online LED-Matrix Editor
- Programmieren der LED-Matrix am Arduino UNO R4 WiFi
Bibliothek zum Ansteuern der LED-Matrix
Um die LED-Matrix programmieren, zu können, musst du die nachfolgende Bibliothek einbinden:
#include "Arduino_LED_Matrix.h"
Diese musst du nicht extra installieren, denn diese kommt mit der Installation des Boardtreibers für den Mikrocontroller dazu. Ebenso erhältst du noch zusätzlich ein paar Beispiele in welchen du entnehmen kannst wie zbsp. eine Animation erstellt werden kann.
Online LED-Matrix Editor
Unter https://ledmatrix-editor.arduino.cc/ findest du einen Online LED-Matrix Editor, in welchem du dein Symbol mit der Maus zeichnen und mit einem Klick als Array exportieren kannst.
Erstellen einer Ausgabe von “HALLO!” auf der LED-Matrix
Mit dem Online LED-Matrix Editor kannst du dir mit etwas Aufwand einen Lauftext von “HALLO!” erzeugen. Dazu erzeugst du jedes einzelne Frame und dadurch entsteht dieser Text bzw. die Animation eines Lauftextes.
Diese Animation kannst du dir über die Schaltfläche “</>” als Array exportieren und in dein Programm integrieren.
Am einfachsten geht es, aber wenn du dir das Beispiel “PlayAnimation.ino” nimmst und dort einfach in Reiter “animation.h” das Array austauscht. Durch diesen kleinen Hack brauchst du keine einzige Zeile Code schreiben und kannst deinen Lauftext auf dem Arduino UNO R4 WiFi direkt hochladen.
Programmieren der LED-Matrix am Arduino UNO R4 WiFi
Du kannst alternativ jedoch auch mit einem mehrdimensionalen Array von 8 Reihen & 12 Spalten jede LED einzeln ansteuern. Das ist zwar etwas komplizierter als über den Online LED-Matrix Editor, jedoch kann man damit ganz andere Dinge bewerkstelligen.
#include "Arduino_LED_Matrix.h" //Array mit den Dimensionen der LED Matrix //Es wird der Text "A-Z" angezeigt uint8_t grid_AZ[8][12] = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1 }, { 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1 }, { 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0 }, { 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0 }, { 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0 }, { 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, }; //Es werden die Zahlen "1-9" uint8_t grid_19[8][12] = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0 }, { 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0 }, { 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0 }, { 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0 }, { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0 }, { 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, }; //initialisieren des Matrix Objektes ArduinoLEDMatrix matrix; void setup() { //beginn der Kommunikation mit der LED Matrix matrix.begin(); } void loop() { //Anzeigen des Textes "A-Z" matrix.renderBitmap(grid_AZ, 8, 12); //eine kleine Pause von 500 Millisekunden delay(500); //Anzeigen des Textes "1-9" matrix.renderBitmap(grid_19, 8, 12); //eine kleine Pause von 500 Millisekunden delay(500); }
Der Code bewirkt, dass immer abwechselnd der Text “A-Z” und “1-9” auf der LED Matrix ausgegeben wird.
Hallo Stefan, Dein Tutorial hat mich zur Bestellung eines UNO R4 WiFi angeregt. Ich bin neugierig geworden.
Ich habe nun die IDE 2.2.1 installiert, die wohl Basis für dieses Board ist.
Ausserdem muss ich noch die Library Arduino_LED_Matrix.h installieren. Aber wo finde ich diese und die Beispiel-Sketches?
Bei GitHub finde ich nur ” arduino-LedMatrix/LedMatrix.h at master” aber ohne die Beispiele für die Matrix.
Kannst du mir einen LINK zur benötigten Library schicken?
Was muss ich denn zum Start in die Arduino R4 – Welt noch vorbereiten?
Danke und viele Grüße ULLI
Das PlayAnimation.ino findest in der Arduino IDE unter Beispiele – LED_MATRIX – PlayAnimation
Grüße Joachim