Inhaltsverzeichnis:

LED-Punktmatrix-Anzeige - Gunook
LED-Punktmatrix-Anzeige - Gunook

Video: LED-Punktmatrix-Anzeige - Gunook

Video: LED-Punktmatrix-Anzeige - Gunook
Video: PixBlock - 8x8 LED Matrix Display von fab4U - Grundlagen 2024, Juli
Anonim
LED-Punktmatrix-Anzeige
LED-Punktmatrix-Anzeige

In diesem Projekt werden Sie wieder zwei Sätze von Schieberegistern verwenden. Diese werden mit den Zeilen und Spalten des Dot-Matrix-Displays verbunden. Sie zeigen dann ein einfaches Objekt oder Sprite auf dem Display und animieren es. Das Hauptziel dieses Projekts ist es, Ihnen zu zeigen, wie ein Punktmatrix-Display funktioniert, und das Konzept des Multiplexens einzuführen, da dies eine unschätzbare Fähigkeit ist.

Schritt 1: Erforderliche Dinge

Erforderliche Dinge
Erforderliche Dinge

Für dieses Projekt benötigen Sie -: 1. 1 LED-Matrix 2. 8 Widerstände 1k Ohm 3. 8 557 Transistoren 4. 1 ULN2803 IC 5 Arduino 6. 2 74HC595 Schieberegister 7. 2 Brotplatine 8. Anschlussdrähte

Schritt 2: Arbeiten

Dot-Matrix-Einheiten sind typischerweise entweder in einer 5x7- oder 8x8-Matrix von LEDs erhältlich. Die LEDs sind in der Matrix so verdrahtet, dass entweder die Anode oder die Kathode jeder LED in jeder Reihe gemeinsam ist. Mit anderen Worten, in einer LED-Punktmatrixeinheit mit gemeinsamer Anode würde jede Reihe von LEDs alle ihre Anoden in dieser Reihe miteinander verdrahtet haben. Die Kathoden der LEDs würden alle in jeder Spalte miteinander verdrahtet. Der Grund dafür wird sich bald zeigen. Eine typische einfarbige 8x8-Punktmatrixeinheit hat 16 Pins, 8 für jede Zeile und 8 für jede Spalte. Der Grund, warum die Zeilen und Spalten alle miteinander verdrahtet sind, besteht darin, die Anzahl der erforderlichen Pins zu minimieren. Wenn dies nicht der Fall wäre, würde eine einfarbige 8x8-Punktmatrixeinheit 65 Pins benötigen, einen für jede LED und einen gemeinsamen Anoden- oder Kathodenanschluss. Durch die gemeinsame Verdrahtung der Zeilen und Spalten werden nur 16 Pins benötigt. Dies stellt nun jedoch ein Problem dar, wenn eine bestimmte LED an einer bestimmten Position leuchten soll. Wenn Sie beispielsweise eine gemeinsame Anodeneinheit hätten und die LED an X, Y-Position 5, 3 (5. Die LED in der 5. Spalte und 3. Reihe würde jetzt leuchten. Stellen wir uns nun vor, dass Sie auch die LED an Spalte 3, Reihe 6 leuchten möchten. Sie legen also einen Strom an die 6. Reihe und erden den 3. Spalte-Pin. Die LED in Spalte 3, Zeile 6 leuchtet nun. Aber warte… die LEDs in Spalte 3, Reihe 6 und Spalte 5, Reihe 6 haben auch geleuchtet. Dies liegt daran, dass Sie die Reihen 3 und 6 mit Strom versorgen und die Spalten 3 und 5 erden. Sie können die unerwünschten LEDs nicht ausschalten, ohne die gewünschten LEDs auszuschalten. Es scheint, dass Sie nicht nur die beiden erforderlichen LEDs mit den miteinander verdrahteten Zeilen und Spalten beleuchten können. Die einzige Möglichkeit, wie dies funktionieren würde, wäre eine separate Pinbelegung für jede LED zu haben, was bedeutet, dass die Anzahl der Pins von 16 auf 65 springen würde. Eine 65-Pin-Punktmatrix-Einheit wäre sehr schwer zu verdrahten und zu steuern, da Sie ein Mikrocontroller mit mindestens 64 digitalen Ausgängen. Gibt es eine Möglichkeit dieses Problem zu umgehen? Ja, das gibt es, und es wird Multiplexing (oder Muxing) genannt. Multiplexing ist die Technik, bei der jeweils eine Zeile des Displays eingeschaltet wird. Wenn Sie die Spalte auswählen, die die Zeile mit der zu leuchtenden LED enthält, und dann die Stromversorgung für diese Zeile einschalten (oder umgekehrt für gemeinsame Kathodenanzeigen), leuchten die ausgewählten LEDs in dieser Zeile auf. Diese Reihe wird dann ausgeschaltet und die nächste Reihe wird eingeschaltet, wieder mit den entsprechenden Spalten ausgewählt und die LEDs in der zweiten Reihe leuchten nun. Wiederholen Sie dies mit jeder Reihe, bis Sie ganz unten sind, und beginnen Sie dann wieder oben. Wenn dies schnell genug geschieht (mit mehr als 100 Hz oder 100 Mal pro Sekunde), dann wird das Display aufgrund des Phänomens der Persistenz des Sehvermögens (bei dem ein Nachbild für ca. 1/25 Sekunde auf der Netzhaut verbleibt) konstant sein, auch wenn jede Reihe nacheinander ein- und ausgeschaltet wird. Mit dieser Technik umgehen Sie das Problem, einzelne LEDs anzuzeigen, ohne dass die anderen LEDs in derselben Spalte oder Reihe ebenfalls leuchten. Durch das Abtasten der Reihen und das Aufleuchten der entsprechenden LEDs in jeder Spalte dieser Reihe und dies sehr schnell (mehr als 100 Hz) wird das menschliche Auge das Bild als stabil wahrnehmen und das Bild des Herzens wird im LED-Muster erkennbar sein. Sie verwenden diese Multiplexing-Technik im Code des Projekts. So zeigen Sie die Herzanimation an, ohne auch überflüssige LEDs anzuzeigen.

Schritt 3:

Bild
Bild

Sie müssen den Wert der Widerstände berechnen, die Sie verwenden können Sie sollten zuerst einige Spezifikationen zu Ihren LEDs erhalten, Sie sollten ihre Durchlassspannung und ihren Durchlassstrom kennen, diese Informationen können Sie dem Datenblatt entnehmen. Die Schaltung arbeitet mit 5 V, so dass Ihre Quellspannung 5 V beträgt, die von einem 5 V-Adapter bezogen werden kann Laden Sie die Originaldatei herunter, um die Schaltpläne besser zu sehen. (drücken Sie das "i" -Symbol in der oberen linken Ecke des Bildes)

Schritt 4: Damit es funktioniert

Ich habe ein Programm erstellt, das den Satz vom seriellen Arduino-Monitor auf der Matrix anzeigt. Mein Code ist sehr einfach. Ich habe eine Android-Anwendung erstellt, um die Schriftart für die Anzeige zu erstellen. Bitte besuchen Sie die folgende Seite, um die App zu installieren

Schritt 5: Fertig !!!!!!!

Alles erledigt !!!!!!!!!
Alles erledigt !!!!!!!!!

Herzlichen Glückwunsch, Ihre 8x8 LED-Matrix ist fertig. Sie können alles anzeigen, was Sie möchten. Jetzt können Sie damit spielen und eine 8x8-LED-Matrix herstellen, indem Sie die LEDs oder die 16x8-Matrix manuell löten und so weiter !!!!!!

Empfohlen: