Inhaltsverzeichnis:

Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino - Gunook
Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino - Gunook

Video: Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino - Gunook

Video: Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino - Gunook
Video: Temperatursensor TMP36 und 7-Segment-Display am Arduino 2024, Juli
Anonim
Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino
Verwenden einer 4-stelligen und 7-Segment-Anzeige mit Arduino

In diesem Tutorial zeige ich Ihnen, wie Sie mit Arduino eine 7-Segment-Anzeige mit 4 Ziffern verwenden. Einige grundlegende Dinge, auf die ich hinweisen möchte, sind, dass dies fast alle digitalen Pins auf dem Arduino Uno, Leonardo, den Boards mit 13 digitalen Pins, belegt. Die meisten Displays haben 12 Breakout-Pins, die entweder direkt mit dem Arduino oder über einen Widerstand verbunden sind. Außerdem möchte ich darauf hinweisen, dass diese Displays keinen Anschluss an Masse, 5 V oder 3,3 V benötigen. Also lasst uns anfangen…

Schritt 1: Materialien

Materialien
Materialien
Materialien
Materialien
Materialien
Materialien
Materialien
Materialien

Die Verwendung eines solchen Displays erfordert fast keine Materialien.

- 4 x 330Ω Widerstände

- 12 x Stecker-zu-Stecker-Überbrückungsdrähte

- 1 x Arduino

- 1 x Steckbrett beliebiger Größe (sie benötigen keine Stromschienen)

Es sind keine Werkzeuge erforderlich, um einen Prototyp dieses Designs zu erstellen. Für einen dauerhafteren Einsatz wären jedoch ein Lötkolben und eine Platine erforderlich.

Schritt 2: Steckbrett-Layout

Steckbrett-Layout
Steckbrett-Layout

Nur um Ihnen einen Kontext zu geben, werde ich die Verwendung jedes Pins erklären. 8 der 12 Pins des Displays werden für die 8 Segmente verwendet. Es gibt 7 Segmente, die verwendet werden, um eine beliebige Ziffer zu bilden, während eines den Dezimalpunkt steuert. Die anderen 4 der 12 Pins steuern jede der 4 Ziffern auf dem Display. Jeder Pin, der einen Widerstand hat, ist einer der 4-stelligen Pins, ansonsten sind sie die Segmentpins.

Das obige Design habe ich von Fritzing erstellt, um die Verbindung zwischen dem Display und dem Arduino zu zeigen. Beachten Sie die Platzierung der Widerstände, denn wenn Sie den Widerstand an den falschen Pin auf dem Display anschließen, funktioniert entweder diese Ziffer nicht oder dieses Segment funktioniert nicht, FÜR IMMER…

***WICHTIGER HINWEIS***

Beim Einrichten des Stromkreises die gelben und die lila Drähte wechseln (ich habe meinen Schaltplan durcheinander gebracht).

Schritt 3: Installieren der Bibliothek

Die unten verlinkte Bibliothek stammt von der Arduino-Website zur einfachen Steuerung eines Displays. Der Link führt zu github. Wenn Sie noch nie auf github waren, hören Sie gut zu, wenn Sie den nächsten Absatz gelesen haben. Wenn Sie auf die Website gelangen, schauen Sie auf die rechte Seite des Fensters und schauen Sie nach unten, bis Sie "Zip herunterladen" sehen. Klicken Sie auf diese Schaltfläche und sehen Sie zu, wie sie in Ihren Downloads angezeigt wird.

Nun müssen Sie die zuvor installierte Bibliothek in Ihren Bibliotheksordner laden. Wenn Sie jetzt wissen, wie das geht, fahren Sie mit dem nächsten Schritt fort, ansonsten lesen Sie weiter. Gehen Sie zuerst in den Finder, suchen Sie den Ordner "Dokumente" und öffnen Sie ihn. Suchen Sie dann den Ordner "arduino" und öffnen Sie ihn. Suchen Sie dann den Bibliotheksordner und öffnen Sie ihn. Ziehen Sie schließlich die installierte Bibliothek per Drag & Drop in den gerade geöffneten Bibliotheksordner.

WICHTIG. Wenn Ihre Arduino-Anwendung geöffnet und ausgeführt wurde, während Sie die Bibliothek in den Bibliotheksordner gelegt haben, erkennt das Arduino die Bibliothek nicht. Sie müssen nur die Anwendung beenden und erneut öffnen.

github.com/DeanIsMe/SevSeg

Schritt 4: Der Code

Der Code
Der Code

Der Code zum tatsächlichen Anzeigen von etwas ist unten aufgeführt.

#include "SevSeg.h"

SevSeg Sevseg; // Ein Sieben-Segment-Controller-Objekt initiieren Void setup () { byte numDigits = 4; Byte digitPins = {2, 3, 4, 5}; Byte-SegmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; bool widerständeOnSegments = 0; // Variable oben zeigt an, dass 4 Widerstände an den Ziffernstiften platziert wurden. // Variable auf 1 setzen, wenn Sie 8 Widerstände an den Segmentpins verwenden möchten. sevseg.begin(COMMON_CATHODE, numDigits, digitPins, segmentPins, widerständeOnSegments); sevseg.setBrightness(90); aufrechtzuerhalten. Void Schleife () { sevseg.setNumber (3141, 3); sevseg.refreshDisplay(); // Muss wiederholt laufen

Schritt 5: Das Ergebnis

Wenn Sie das Display richtig angeschlossen, den Code richtig hochgeladen und den Code richtig kopiert haben, sollte Ihr Display pi anzeigen (nur 3.141).

Wenn nicht, lesen Sie Schritt sechs, um herauszufinden, was schief läuft.

Wenn Sie es richtig gemacht haben, schlage ich vor, in Schritt 7 weiterzulesen.

Schritt 6: Fehlerbehebung

Hier habe ich zwei mögliche Dinge aufgelistet, die mit Ihrem Display passiert sein könnten, die es durcheinander gebracht haben könnten. Leider lässt sich nur einer von beiden reparieren.

- Ihr Display zeigt 8888. an

Machen Sie sich keine Sorgen, dies ist das Problem, das behoben werden kann, befolgen Sie einfach diese Schritte

1. Suchen Sie im Code " sevseg.begin(COMMON_CATHODE, numDigits, digitPins, segmentPins);"

2. Ändern Sie "GEMEINSAME KATHODE" in "GEMEINSAME ANODE"

3. Laden Sie den Code erneut hoch

- Ihr Display zeigt 3. 41 oder.141 oder 3.1 1 oder 3.14 ohne die anderen 1. an

Leider kann dieses Problem entweder behoben werden oder nicht:.(… (das ist mein weinendes Gesicht)

1. Überprüfen Sie Ihre Verbindungen und stellen Sie sicher, dass alles angeschlossen ist und nicht heraushängt

2. Überprüfen Sie den Schaltplan erneut, da Sie ihn höchstwahrscheinlich falsch angeschlossen haben

3. Suchen Sie die Zeile in der Leerschleife, in der (3.141, 3) angezeigt werden soll, und ändern Sie 3.141 in 8888 und sehen Sie, ob eine der 8 fehlt

4. Wenn dies der Fall ist, hätte einer der Drähte möglicherweise keinen Widerstand gehabt, obwohl er einen hätte haben sollen, was bedeutet, dass eine der Ziffern durchgebrannt war. Sie können dies überprüfen, indem Sie auf die Rückseite des Displays schauen. Wenn Sie in der Nähe eines der Pins ein Schwarzes sehen, haben Sie eine der Ziffernstellen überwältigt. Leider ist dies NICHT reparierbar und Sie möchten ein anderes Display kaufen.

5. Wenn Sie nirgendwo ein schwarzes Zeichen sehen, haben Sie Drähte verschaltet, die nicht überlastet werden können, also überprüfen Sie den Schaltplan und stecken Sie ihn richtig ein und ändern Sie den Code zurück von 8888 auf 3.141.

Schritt 7: Weiter gehen

Eine Methode, ein paar Pins auf dem Arduino zu verwenden, um mehrere LEDs zu steuern, die ansonsten viele Pins erfordern würden, ist ein Tri-State-8-Pin-Schieberegister. Anstatt die 8 Segmentpins direkt mit Arduino zu verbinden, können Sie sie in das Schieberegister stecken und herausfinden, wie das geht.

Es ist nur eine Idee, die ich hatte, aber ich weiß nicht, wie das geht oder ob es mit dem Arduino und der Bibliothek des Displays überhaupt möglich ist, aber hey, Denkanstöße für die Neugierigen.

Viel Spaß mit Ihrem Display und ich hoffe, Sie mochten dieses instructable, weil es das erste ist, das ich tatsächlich aus den vielen, die ich in meinen Entwürfen habe, beendet habe.

Empfohlen: