Die Ansteuerung einer LED ist mit Arduino selbst für Anfänger ein Kinderspiel und in relativ kurzer Zeit umsetzbar. Auch das Dimmen von zwei bis drei LEDs sollte mit Hilfe der eingebauten PWM-Funktionalität kein Problem darstellen. Anders sieht es jedoch bei einer 8x8 RGB LED Matrix aus. Dabei müssen 64 LEDs mit jeweils drei Farben angesteuert werden. Das Colors Shield, welches in diesem Artikel vorgestellt wird, stellt jedoch eine einfache Methode für die Umsetzung zur Verfügung.
Grundlagen
Für die Verwendung des Colors Shield werden folgende Komponenten benötigt:
- Arduino kompatible Grundplatine mit Mikrocontroller
- Colors Shield
- 8x8 RGB Matrix (Achtung: Pinbelegung beachten)
Technik
Auf dem Shield befindet sich ein DM163 LED Treiber Chip. Dieser erlaubt es, die LEDs über ein Multiplexverfahren anzusteuern und gleichzeitig pro LED und Farbe 256 verschiedene Helligkeitsstufen zu erzielen. Durch dieses Verfahren ist es möglich, dass jeder Punkt der Matrix theoretisch ca. 16 Millionen verschiedene Farben wiedergeben kann. Zusätzlich zur Ansteuerung mit 8-Bit pro Farbe kann über ein weiteres 6-Bit Register die relative Helligkeit pro Farbe eingestellt werden. Was dem Entwickler die Möglichkeit eines Weißabgleichs gibt.
Das Colors Shield ist mit Arduino kompatibel und kann direkt mit einem Arduino Uno, Arduino Duemilanove oder anderen kompatiblen Platinen verwendet werden.
Zur Zeit sind zwei unterschiedliche LED-Matrizen verfügbar. So wird eine mit runden und eine mit quadratischen LEDs angeboten.
Lieferung
Geliefert wird das Colors Shield in einer Pappverpackung und ist zusätzlich durch Luftpolsterfolie geschützt.
Leider war bei dem vorliegenden Exemplar eine Steckleiste leicht verbogen, so dass diese zunächst vorsichtig gerichtet werden musste. Anschließend war das Aufstecken der LED-Matrix ohne Probleme möglich. Wir gehen jedoch davon aus, dass es sich dabei um einen Einzelfall handelt und dieser Eingriff sonst nicht nötig ist.
Verwendung/Ansteuerung
Nach dem Zusammenstecken kann die LED-Matrix verwendet werden. Dafür stehen im Moment zwei Bibliotheken zur Verfügung.
Die Colorduino Bibliothek ist vermutlich die erste, die für die Ansteuerung zur Verfügung stand. Sie unterstützt neben dem Colors Shield noch den Rainbowduino und den Colorduino. Die beiden letzteren sind jeweils eine Kombination aus Arduino Grundplatine und einem Shield zur Ansteuerung, welche beide auf einer Platine untergebracht wurden. Bei dieser Bibliothek stehen nur wenige Grafikfunktionen zur Verfügung, die beiden wichtigsten sind SetPixel() und ColorFill().
Eine weitere Bibliothek, die Teile der Colorduino Bibliothek verwendet ist die Colorduino GFX Bibliothek. Der wesentliche Unterschied zur vorangegangenen ist die Abhängigkeit von der Adafruit GFX Bibliothek. Vorteil dieser Abhängigkeit ist, dass sie neben den Funktionen wie drawPixel() und fillColor() auch noch Funktionen wie drawLine(), drawCircle() oder drawTriangle() bereitstellt. Auch ist es möglich Text auszugeben.
Welche der beiden Bibliotheken verwendet wird, sollte jeder selbst entscheiden. Beide haben Vor- und Nachteile. Es empfiehlt sich jedoch beide einmal genauer anzuschauen.
Links
- Webseite: Colorduino Bibliothek (englisch)
- Webseite: Colorduino GFX Bibliothek (enlgisch)
- Webseite: Adafruit GFX Bibliothek (englisch)
- Blog: "Colors Shield Preview" von ITead Studio (englisch)