Schritt 7: Senden von Bytes zu einer Multiplex LED-Matrix
Bisher ist der Code, den wir verwendet haben, um Daten zu senden, die LED ein wenig umständlich zu schreiben. Es engagiert sich explizit Zuordnung einen HIGH oder LOW-Zustand zu jedem der Arduino Pins angeschlossen an eine Spalte. Wenn wir die Matrix, ein anderes Muster für jede der 8 Zeilen anzeigen programmieren wollte, müssen wir einiges an Code-Zeile schreiben. Hier ist eine Möglichkeit, Dinge zu organisieren:
Denken Sie daran, wie wir eine Zahl zwischen 0 und 255 (ein Byte) verwendet, um die Staaten von 8 LEDs mit 595 verbunden? Jetzt habe ich eine Funktion namens setStates(), mit dem uns die Staaten von 8 LEDs in jeder Zeile der LED Matrix mit einem Byte gesetzt. Das erste, was SetStates tut wird festgelegt, dass alle Pins verbunden mit LED Matrixspalten geringe bis keine LEDs deaktivieren, die möglicherweise auf. Dann überprüft er jede binäre Ziffer des 8-stelligen Bytes mit dem Operator &; Wenn eine der Ziffern 1, wird die entsprechende Pin HIGH.
Der obige Code wird die Zeile digital Pin 8 mit der Nummer 56 verbunden. Binär ist 56 als dargestellt:
00111000
Und die LED Ausgabe erscheint im ersten Bild oben, Sie können sehen, dass eine leuchtende LED in der Matrix je 1 in die Binärzahl entspricht.
Als nächstes versuchen Sie, Programmierung jede Zeile in der LED-Matrix die Anzahl des digitalen Stiftes angezeigt, dem es zugeordnet ist:
Die Ausgabe wird im zweiten Bild oben dargestellt.