Arduino-Workshop
Der Arduino-Workshop soll Menschen einen Einblick in Umgang und Programmierung mit Mikrocontrollern anhand des Beispieles des Arduinos geben. Dazu werden auch auf verschiedene spezielle Eigenschaften von Arduinos eingegangen.
Die Informationen auf dieser Seite können zur Wiederholung und selbstständigen Durchführung des Workshops, aber auch als Vorlage für kommende Wiederholungen des Workshops dienen.
Inhaltsverzeichnis
1. Treffen
Blinkende LED
Zunächst wurde eine blinkende LED realisiert, um die Basisfunktion eines Ausgabepins zu verdeutlichen. Die LED wird einfach an der Anode mit einem Vorwiderstand dazwischen an einen Ausgabepin gesteckt. Die Kathode geht dann an GND.
Das Programm[1], welches die LED blinken lässt sieht wiefolgt aus:
void setup() { pinMode(1, OUTPUT); } void loop() { digitalOutput(1, HIGH); delay(500); digitalOutput(1, LOW); delay(500); }
LED-Dotmatrix
Danach wurde ein 5x7-Dotmatrix Display aus LEDs angesteuert. Im Endeffekt konnten verschiedene Zeichen mit verschiedenen Dauern angesteuert werden.
Die Spalten der Dotmatrix wurden mit Vorwiderständen und die Zeilen der Dotmatrix ohne Widerstände an digitale Pins des Arduinos angeschlossen. Die Pins der Zeilen und Spalten werden in zwei eindimensionalen Arrays gehalten und können daher vorerst beliebig sein.
Jedes anzuzeigende Zeichen wird der Einfachheit halber in eigenen zweidimensionalen int-Arrays mit Elementen bestehend aus Einsen und Nullen gehalten.
Eine Funktion wird implementiert, die ein einzelnes Zeichen mithilfe der Matrixansteuerung[2] an der Dotmatrix anzeigt. Dabei wird jedes Pixel der Dotmatrix in einer verschachtelten For-Schleife durchgegangen und mit einer if-Anweisung geprüft, ob das aktuelle Pixel im anzuzeigenden Zeichen an oder aus ist.
Damit dieses Zeichen eine gewisse Zeit lang angezeigt werden kann, wird eine weitere Funktion entwickelt, die das gewünschte Zeichen eine gegebene Dauer an der Dotmatrix anzeigt. Dazu kann die millis()-Funktion von Arduino genutzt werden.[3]
In der loop-Funktion steht eine Sequenz von Funktionsaufrufen mit verschiedenen Zeichen. Damit kann unter anderem einfach der eigene Name auf die Dotmatrix geschrieben werden.
2. Treffen
Das zweite Treffen wird aus einer Erweiterung der LED-Dotmatrix bestehen (Scrollender Text und Animationen) oder aus einer Einführung in Schieberegister anhand einer Schaltung mit 7-Segmentanzeigen, die über Schieberegister angesteuert werden.
Referenzen
- ↑ Siehe dazu auch: http://www.arduino.cc/en/Tutorial/BlinkingLED
- ↑ Wikipedia zur Matrixansteuerung: http://de.wikipedia.org/wiki/Matrixschaltung
- ↑ Siehe auch: http://arduino.cc/en/Tutorial/BlinkWithoutDelay