Dienstag, 7. Juli 2015

7 Segment Display

In diesem Tutorial geht es darum, wie man ein 7 Segment LED Display mit dem Arduino steuern kann. Das sind Displays, die 7 LED Striche so angeordnet haben, das sie alle Ziffern darstellen können. Dadurch kann man dann viele Zahlen, mit einem LCD Display verglichen, billig anzeigen lassen.

Der Aufbau

Das oben dargestellte 7 Segment Display (eigentlich 8, da es noch den Punkt hat), hat einen gemeinsamen Ground(Common Anode). Das bedeutet, dass der mittlere Pin, jeweils in der oberen und der unteren Pinreihe, mit dem Ground verbunden werden muss. Jeder, der verbleibenden 8 Pins, steuert eine LED. Diese wird angeschaltet, sobald der Pin am Arduino auf HIGH gestellt wird. So sieht dann die korrekte Verkabelung mit dem Arduino in Echt aus:
Nun muss man noch herausfinden, welcher Pin des Arduino, welchen LED-Strich steuert. Dazu kann man den folgenden Sketch verwenden. Dabei schaltet er Pin 2 bis Pin 9 als OUTPUT und macht die zugehörige LED für 5 Sekunden an. In der seriellen Konsole wird jeweils der aktuelle Pin angezeigt. Wenn man das auf einem Papier mitschreibt, weiß man welcher Pin was steuert. Alternativ kannst du dir auch im Internet das jeweilige Datenblatt deines 7 Segment Displays herunterladen und dort nachsehen. Das dauert jedoch meist länger.

Zahlen anzeigen

Wenn du nun weißt, wie das 7 Segment Display angesteuert wird, ist es am besten sich für jede Zahl eine Funktion zu schreiben. Ich werde das beispielhaft mit der Zahl 7, zeigen. Hier siehst du, welcher Pin, bei mir, was anschaltet:
In meinem Fall muss ich also immer Pin 7, 6 und 3 auf HIGH schalten, um eine 7 zu erzeugen. Davor müssen natürlich alle Pins zum Schalten des 7 Segment Displays auf LOW gesetzt werden, damit sich die Zahlen nicht vermischen. Hier wird erklärt, wie man eine Funktion definiert. Der gesamte Code zum Schreiben einer 7 sieht dann so aus:

Nun erscheint eine 7 auf dem 7 Segment LED Display :
Das kann man jetzt mit allen Zahlen machen und bei Bedarf sich dafür eine eigene Bibliothek erstellen.

Keine Kommentare:

Kommentar veröffentlichen