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ß
:
Bearbeitet durch User
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.
Dennis S. schrieb: > Ich hätte mir die Dekoder (alle) wohl gespart, drei kleine Transistoren > mehr investiert Dann hättest du statt 1:6 Multiplex gleich 1:9 Multiplex und es wird dunkler. Aber die Tasten hätte man ohne P20-P22/T1 mit P10-P17 als Eingängen decodieren können. Vielleicht war die Software schon fertig
Michael B. schrieb: > Vielleicht war die Software schon fertig Genau - und dann bastelt man noch mal eben ein Keyboard mit dran. Die Schaltung stammt wohl eher aus der Zeit, als Software noch deutlich flexibler war als die Hardware.
...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...
:
Bearbeitet durch User
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...
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.