Projekte

Erstellen Sie einen 2-stelligen Aufwärts- / Abwärtszähler mit einer PICAXE 20M2

PayPal Konto erstellen ohne Bankkonto (Tutorial) (November 2018).

Anonim

Erstellen Sie einen 2-stelligen Aufwärts- / Abwärtszähler mit einer PICAXE 20M2


Zähler mit 7-Segment-LEDs sind Spaß und nützliche Projekte für Anzeigetafeln und andere numerische Anzeigen; Hier ist eine, die du bauen kannst.

Hintergrund

Das Projekt in diesem Artikel verwendet einen PICAXE 20M2-Mikrocontroller. Wenn Sie mit dieser Familie von μc vertraut sind, springen Sie direkt hinein, aber wenn Sie ein wenig Hintergrundinformation oder Auffrischungstraining benötigen, finden Sie hier eine Reihe von PICAXE-Artikeln (einschließlich Tutorials).

Einführung

Display-Counter sind sowohl für Experimente als auch für praktische Projekte wie Anzeigetafeln und "Now Serving" -Displays beliebt. Dieser Artikel beschreibt einen zweistelligen Aufwärts- / Abwärts-Zähler, der kostengünstig und relativ einfach ist und dennoch eine Einführung in Hardware- und Softwaretechniken bietet, die für umfassendere Anzeigen geeignet sind. Ein PICAXE 20M2-Mikrocontroller stellt die "Leistung" bereit, um ein Paar gemeinsamer Kathoden-Sieben-Segment-LEDs zu steuern. Zwei taktile Drucktasten sorgen für die menschliche Schnittstelle.

Die Display-Baugruppe ist auf Perfboard aufgebaut und der Rest der Schaltung ist auf einem lötfreien Steckbrett aufgebaut. Die Stromversorgung kann jede gut gefilterte, geregelte 5VDC-Versorgung sein; Konstruktionsdetails für den gezeigten Regler sind hier angegeben. Das Foto unten zeigt das gesamte Projekt.

Das schematische Diagramm

Das Schaltschema ist unten gezeigt. Beachten Sie, dass die Komponentenbezeichnungen und Drahtfarben im oben abgebildeten Übersichtsbild mit denen in der folgenden schematischen Darstellung übereinstimmen.

Die LED-Baugruppe innerhalb der roten Box in der schematischen Darstellung ist eine separate Baugruppe, die über neun Drähte mit dem lötfreien Steckbrett verbunden ist: eine Leitung für jedes der sieben Segmente in der Anzeige und jeweils eine für die Kathodenverbindung in den zwei Ziffern. Jedes der sieben Segmente des Displays ist mit einem Strombegrenzungswiderstand (R3 bis R10) ausgestattet. Beachten Sie, dass der Dezimalpunkt mit einem Widerstand (R7) versehen ist, aber der Dezimalpunkt wird in diesem Projekt nicht verwendet, daher kann der Widerstand verwendet werden weggelassen, wenn gewünscht.

Der Rest der elektrischen Konstruktion ist absichtlich einfach, um die Anzahl der Teile und die Kosten zu reduzieren. J1, R1 und R2 bilden die Standard-PICAXE-Programmierschaltung. SW1, SW2, R12 und R13 bilden die Mensch-Maschine-Schnittstelle, die verwendet wird, um PICAXE anzuweisen, ob die Zählung inkrementiert oder dekrementiert werden soll.

Q1, Q2 und R11 schalten die Erde zur Kathode der beiden Displays ein und aus. Wenn PinB.7 des PICAXE umgeschaltet wird, wird eine Ziffer ausgeschaltet und die andere eingeschaltet. Diese Umschaltaktion erfolgt sehr schnell und durch ein Phänomen, das "POV" (Persistenz der Sehkraft) genannt wird, scheinen beide Anzeigen gleichzeitig auf. Wie Sie sehen, sind die verwendeten Transistoren N-Kanal-MOSFETs, aber auf Kosten eines zusätzlichen Widerstands könnten NPN-Bipolartransistoren verwendet werden, wie unten gezeigt.

Der PICAXE 20M2 ist so ausgelegt, dass er bis zu 25 mA pro Ausgangspin liefern kann. Er ist jedoch nur für die Versorgung von insgesamt 80 mA ausgelegt. Um diese ziemlich strenge Anforderung zu erfüllen, ist der Strom zu jedem LED-Segment durch die 360 ​​Ohm-Widerstände auf weniger als 10 mA begrenzt. (Denken Sie daran, dass jeweils nur eine Anzeige aufgrund der Umschaltfunktion von Pin B.7 aufleuchtet.) Daher ist die Anzeige nicht so hell wie gewünscht, aber für Testzwecke ausreichend. Um diesen Mangel zu vermeiden, könnten Sie jedem Segment der Anzeige eine einfache Treibertransistorschaltung hinzufügen.

Teile benötigt

Referenznummer.BeschreibungMengeQuelleArtikelnummer
J1Jack, 3, 5 mm, 3 Leiter1Digi-KeyCP1-3533NG-ND
R1Widerstand, .25W, 22kOhm1Digi-Key22KQBK-ND
R2, R12, R13Widerstand, .25W, 10 kOhm3Digi-Key10KQBK-ND
R3-R10Widerstand, .25W, 360 Ohm8Digi-Key360QBK-ND
R11Widerstand, .25W, 100 kOhm1Digi-Key100KQBK-ND
C1Kondensator, Keramik, 50V, .1uF1Digi-KeyBC2665CT-ND
SW1, SW2Schalter, Drucktaste, Taktil, NEIN2Digi-Key450-1650-ND
Q1, Q2Transistor, MOSFET, N-Kanal, BS1702Jameco256031
U1Mikrocontroller, PICAXE, 20M21PHanderson.comPICAXE-20M2
LED1, LED2Anzeige, LED, 7-Segment, gemeinsame Kathode, rot2onlineLTS-6780R (kann ähnlichen Teil ersetzen)
N / AKabel, PICAXE, Programmierung, USB1PHanderson.comAXE027
N / ASteckbrett, Lötfrei, 400 Position1Digi-Key377-2094-ND
N / ADraht, massiv, AWG22, verschiedene Farben1Jameco2153705
N / APerfboard, Datak, 12-602B1online12-602B (kann ähnlichen Teil ersetzen)

Versammlung

Das Steckbrett zu bauen ist einfach; folgen Sie einfach der schematischen Darstellung und / oder dem zuvor gezeigten Foto.

Die Konstruktion der LED-Baugruppe ist nicht kompliziert, erfordert jedoch ein Verständnis der verwendeten 7-Segment-LEDs. Die oben abgebildete Baugruppe verwendet zwei LTS6780R-Displays, von denen eines unten abgebildet ist. Die Nummern 1-10 bezeichnen die Verbindungsstifte, die von der Rückseite des Displays vorstehen; Pin 7 verbindet sich mit der Anode des A-Segments auf dem Display, Pin 6 verbindet mit der Anode des B-Segments und so weiter. Die Stifte 3 und 8 sind beide mit der Kathode aller Segmente verbunden, daher bezieht sich die Bezeichnung "gemeinsame Kathode" auf Anzeigen, die diese Anordnung verwenden. (Falls Sie sich nicht erinnern, ist die positive Spannung mit der Anode verbunden, und "Masse" ist mit der Kathode verbunden, um eine LED zu beleuchten. Natürlich muss ein geeigneter Strombegrenzungswiderstand verwendet werden, um jedes Segment zu vermeiden Beschädigung der LED.)

Dieses Projekt verwendet zwei LTS6780R-Displays mit gleichbeschrifteten Segmenten, die parallel verdrahtet sind, dh das A-Segment in einem Display ist parallel zum A-Segment im anderen Display geschaltet, das B mit dem B usw. Beachten Sie, dass die Kathodenstifte sind nicht parallel verdrahtet.

Physikalisch sind die zwei Anzeigen nebeneinander angeordnet und miteinander verdrahtet, wie in der hinteren Ansicht unten gezeigt. Beachten Sie, dass sich die Zehnerziffer rechts im Foto und die Einerstelle links befindet. Eine schematische Darstellung dieses Verdrahtungsschemas finden Sie im Schaltplan.

Nach dem Verdrahten wie oben gezeigt, wird die zweistellige Baugruppe auf einem Perfboard montiert und verdrahtet, wie in den folgenden Fotos gezeigt. Zur besseren Übersicht zeigt das obere Foto die laufende Verkabelung und das untere Foto zeigt die Verkabelung. Natürlich können Sie jede beliebige physische Anordnung verwenden, solange die Verdrahtung gemäß der schematischen Darstellung erfolgt.

Obwohl die Verwendung von Verbindern es praktischer macht, die LED-Baugruppe mit dem lötfreien Steckbrett zu verbinden, sind sie nicht erforderlich. Sie können Drähte direkt an die LED-Baugruppe löten und die Drähte in das lötfreie Steckbrett einstecken. Beachten Sie, dass die Drahtfarben auf dem Foto direkt oben nicht mehr korrekt sind. Folgen Sie dem Farbcode, der auf dem Schaltplan und dem Gesamtprojekt-Montagefoto gezeigt wird.

Der Code

Wie der Hardwareentwurf wurde der Code für dieses Projekt mit dem Ziel geschrieben, leicht zu verstehen, zu implementieren und zu modifizieren. Zu diesem Zweck wird es ausführlich kommentiert und wird im Text dieses Artikels nicht im Detail erläutert. Es wird jedoch ein Überblick und eine allgemeine Diskussion über die Struktur und den Betrieb des Codes gegeben. Es wird empfohlen, dass Sie den Code herunterladen, in PICAXE Editor 6 (PE6) öffnen und folgen.

Code herunterladen

Die Zeilen 1 bis 8 sind Kommentare, die den Namen und den Zweck des Codes dokumentieren und den zugehörigen Schaltplan identifizieren.

Die Zeilen 10 bis 27 werden nur beim Start oder nach einem Reset ausgeführt.

Die Zeilen 10 bis 22 sind Setup-Linien, um Variablen zuzuweisen und alle PinsB als Ausgänge zu setzen.

Die Zeilen 24 bis 27 werden verwendet, um die Anzeigeausgabe auf den Zählwert einzustellen, der bei der letzten Abschaltung erreicht wurde. Beachten Sie, dass die Anzeige beim ersten Start des Programms leer ist, da keine Segmentdaten gespeichert wurden.

Die Zeilen 29 bis 41 bilden den Hauptteil des Programms. Die Zeilen 32 bis 41 bilden eine sich wiederholende Schleife, die kontinuierlich abläuft, bis entweder die Inkrement- oder Dekrement-Taste gedrückt wird. Die LEDs werden ständig aktualisiert. Beachten Sie, dass die Einheitsziffer während der Zeilen 37 und 38 für 5 Millisekunden leuchtet und dann erlischt. Die Zehnerstelle leuchtet während der Zeilen 39 und 40 für 5 Millisekunden und erlischt dann. Der Zyklus wird fortgesetzt, bis entweder die Inkrement- oder Dekrementtaste gedrückt wird, was die Ausführung entweder auf die Linie 43 oder die Linie 63 richtet.

Die Zeilen 43 bis 59 bewirken, daß die Zählung um 1 erhöht und gespeichert wird und die Segmentdaten für die Einheiten und Zehnerstellen aufgerufen und gespeichert werden.

Die Zeilen 63 bis 79 bewirken, dass die Zählung um 1 verringert und gespeichert wird und die Segmentdaten für die Einheiten und Zehnerstellen aufgerufen und gespeichert werden.

Die Zeilen 85 bis 88 bilden eine Unterroutine und ermöglichen das Aufrufen der richtigen LED-Segmente für die Einerstelle basierend auf der Zählung.

Die Zeilen 90 bis 93 bilden eine Unterroutine und ermöglichen, dass die korrekten LED-Segmente für die Zehnerstelle basierend auf der Zählung aufgerufen werden.

Die Zeilen 95 bis 99 bilden ein Unterprogramm und bewirken, dass die Zehnerstelle ausgeblendet wird, wenn der Zählwert von 0 bis 9 ist.

Was jetzt?

Dieses Projekt sollte Ihnen einen Ausgangspunkt für das Entwerfen und Schreiben von Code für Ihr eigenes Projekt bieten. Es könnte eine voll funktionsfähige Anzeigetafel für Ihren Lieblingssport oder etwas exotischer sein. Zumindest sollte es Appetit auf größere und bessere PICAXE-Projekte machen. Habe Spaß!

Gib diesem Projekt einen Versuch für dich selbst! Holen Sie sich die Stückliste.