7-Segent / LED- und Tastenmatrix Schaltungslösung

OP #7943398

Hallo zusammen,

ich finde diese Lösung irgendwie recht "umständlich" und frage mich warum man das wohl so gemacht hat.

Ich hätte mir die Dekoder (alle) wohl gespart, drei kleine Transistoren mehr investiert und versucht die Tastenmatrix mit in die LED Matrix zu integrieren anstatt sie dort so dran zu basteln - oder was sagt eure Erfahrung?

Mir ist klar, dass es heute viele Schaltkreise gibt die das so abbacken, aber selbst mit damaligen Mitteln wäre es doch wesentlich einfacher gegangen, oder was meint Ihr?

Gruß

Angehängte Dateien:

Dennis S. schrieb:

drei kleine Transistoren mehr investiert

Wenn du 6 statt 3 Anzeigen multiplexst, sind sie deutlich dunkler. Bedenke, daß LEDs nicht immer so hell waren, wie heute.

Die Dekoder waren vielleicht nötig, weil eine Dekodierung per Software zu viele CPU Takte gebraucht hätte. Bedenke, dass wir mal bei ca. 1 MHZ Taktfrequenz waren.

OP

...ich habe mich wirklich gefragt, wie das vom Programmablauf her wohl überhaupt funktioniert, dass man kein LED-Ghosting hat, während man die entsprechende "Spalte" für das Muxing mit dem Zähler anwählt, aber das ist wirklich ganz geschickt gelöst:

Im 47247 sind BCD 1111b alle Segmente aus und die LED-Matrix unten links ist so aufgebaut das ein 11111111b auf dem 8-Bit Bus des Controllers ebenfalls dazu führt das keine LED leuchten kann - sehr geschickt angeordnet...so kann man die entsprechende Spalte auswählen ohne dass bereits etwas leuchtet...

Ablauf wäre also rein dafür für einen Mux-Zyklus: 8-Bit Bus auf 1111 1111b (alles aus) Zähler zur gewünschten Spalte bringen BCD Werte für beide 74247 oder LED Code für die Matrix anlegen

Ich würde es wahrscheinlich so machen, dass ich zudem in jedem Mux Zyklus eben schnell eine Zeile Tasten abchecke bevor ich die nächste High-Side der "Spalte" aktiviere...augenscheinlich ist es wohl so geplant dass man ein Bit auf dem 8-Bit Bus durchlaufen lässt und dann jeweils bei Pin 13 (T1) schaut ob die Taste gedrückt ist...

OP

sehe gerade, zu der LED Matrix unten links ist ja noch ein ULN dazwischen, der "invertiert" ja noch mal. Dann weiß ich nicht wie man das hinbekommen kann, beim Umschalten am Zähler D4 zu D5 - also von der letzetn Digit Spalte zur ersten LED-Matrix Spalte - umzuschalten, ohne etwas zu aktivieren weil man gleichzeitig den 8-Bit Bus von 1111 1111b auf 0000 0000b umschalten müsste...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über ein Jahr alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.