5*7 DOT Matrix ansteuerung

Gast #305794
Lesenswert?

Hallo Leute,

ich hab mal wieder ein problem, ich habe von einer kaputten
laufschrifttafel ein paar matrix-elemente gefunden (Anhang) auf den
steht:   CS-5728
und IC´s oder sowas : 1.IC    MC14094BCP
                              FFOS9317

                      2.IC    TDG2003AP 9328K

Davon hab ich jede Menge
Hab noch andere IC´s da steht : 74HC4094 N
                                A74710PS
                                Hnn9648 B


jetzt meine Frage: ich möchte 3 elemente so schalten das ich auf den
ersten das  A  darauf angezeigt wird, auf das 2. ein  M   und auf das
3. ein   D   .
Wie bekomme ich das einfach hin .
Ich danke für jede Info und Vorschlag.

Gruss
     Maik
Angehängte Dateien:
Gast #305797
Lesenswert?

Dumme Idee für eine Schaltung ohne uC:

Taktgenerator (z.B 555) an 4 bit binärzähler (z.B.74xx93)

das erzeugt dann ein schönes "Adressignal" (0..15)
Das an die Adresseingänge von nem alten EPROM aus der Restekiste.

Die Datenleitungen des Eproms über einen Treiber (notfalls 7
Transistoren) an die 7 Zeilen-Eingänge der LED Matrix.

Parallel zum Eprom an die Adressleitung zwei 74xx138 (3 zu 8 demux)
vierte Adressleitung an Enable bzw !Enable.
Ausgänge der demuxer an die 15 Spalten-Eingänge der LED-Matrix.

Fertig ist die gepulste dot-matrix LED anzeige.
Jetzt nur noch den alten Eprom-Brenner wiederfinden...

Taktung ist 1/16, also ruhig kleine LED-Vorwiderstände verwenden,
damits auch hell wird.
Gast #305799
Lesenswert?

Das problem ist nicht da vom LPT Port daten hinzubekommen.
Das Problem liegt daran das die Daten
1. Schnell genug gesendet werden müssen und da ist Basic zu langsam
2. dir Daten kontinuierlich gesendet werden müssen damit eine lesbare
anzeige erscheint.

Die Led-Matrix anzeigen funktionieren etwa so:
Es wird immer eine Zeile / Spalte aktiviert und dort die anzuzeigenden
Daten ausgegeben. Dann kommt die nächste Zeile/Spalte dran. So ähnlich
wie bei einem Fernseher (entschuldigt den Vergleich aber es vereinfacht
es)

Gruß
Rüdiger
Gast #305800
Lesenswert?

Vom Geschwindigkeitsproblem abgesehen würde das aber schon
funktionieren.

Bei den Matrix-Modulen die Zeilenleitungen zusammenschalten, so dass
eine 7x15 Matrix entsteht.

3 Bits vom Paralellport zum Auswählen der aktiven Leitung verwenden
(74xx138 o.ä.), Nullte Ausgangsleitung offen lassen, => wenn
port=000xxxxx ist das display ausgeschaltet.
An die restlichen Pins zwei 74xx595 anschliessen:
1 pin für gemeinsame SCLK leitung
1 pin für gemeinsame RCLK leitung
2 pins für die SerialIn Leitungen
Das übrige Parallelport pin kannst Du auf die Erase Pins legen, ist
aber nicht unbedingt nötig.
die ausgänge der Schieberegister an die Spalteneingänge der LED Matrix.
(Ein ausgang bleibt frei.)

zur Ansteuerung:

Die Bits für die zwei Display-Hälften über die Datenpins rauspulsen.
(Pin setzen, SCLK aus, SCLK an, nächste zwei bits)
dabei den aktuellen Zeilenwert (erste drei Bits) beibehalten


danach neuen Zeilenwert ausgeben, gleichzeitig RCLK Pulsen =>
Schieberegister geben neuen Wert aus, und zeile wird umgeschaltet.

Und das ganze wieder von vorne, bis alle 7 Zeilen durch sind.

Kommst also mit drei ICs aus.

Vorteil der Schieberegister mit Latch ist hier, das die LEDs
weiterleuchten, während gerade die Daten für die nächste Zeile
vorbereitet werden.

Zur Ausführungsgeschwindigkeit:
Pro Bit brauchst Du zwei writes auf dem Parallelport, nachdem wir aber
zwei Bits gleichzeitig ausgeben kommen wir auf 1 Bit / Schreibvorgang.

Pro Zeile also 17 Writes (mit RCK toggle), für das ganze Display
7*17=119 Schreibvorgänge auf dem Parallelport.

um nachher 50Hz Bildwiederholfrequenz zu haben, müsste dein GWBasic
also etwa 6000 Bytes pro Sekunde auf den Parallelport schieben
können... sollte durchaus machbar sein.
Gast #305802
Lesenswert?

Hier ein Beispiel-Schaltplan.

Auf die schnelle zusammengeklickt, Widerstände für die Spalten fehlen
noch.

Warscheinlich brauchst du auch noch Transistoren für die
Zeilen-Ansteuerung, dann den *138er duch den Komplementärtyp mit
invertierten Ausgängen (*238??) ersetzen, macht es einfacher.

und auf jeden Fall die Datenblätter vor dem Nachbauen nochmal
durchsehen, ist ungetestet.
Angehängte Dateien:
Gast #305803
Lesenswert?

Nachtrag:

die A,B,C Leitungen am 138er hab ich vertauscht, gehören andersherum an
den parport (eigentlich egal, die Ansteuerung ist dann aber logischer)

und statt den *595ern müssten eigentlich auch die 74hc4094
funktionieren (->datenblatt).

Statt dem *138er tuts ebenfalls ein 74hc4094, die Ansteuerung ist dann
halt anders (Ein Lowbit reinladen, und dass dann für die einzelnen
Zeilen durchshiften)

Könntest also durchaus mit den Teilen auskommen, die du eh hast.
MC14094BCP => auch Datenblatt anschauen, wenn das einer mit High-Power
ausgängen ist, sparst du dir auch noch die 7 Transistoren.
Gast #305805
Lesenswert?

Naja, diese Blinkenleds Schaltung nutzt ja einen IO Pin pro LED, und
keine Matrix.
Nachdem die 5x7 LED Module aber intern als Matrix verschaltet sind, und
keine Anschlüsse für die einzelnen LEDs haben, hilft das nicht wirklich
weiter.

Und ausserdem: 18 Schieberegister für nur 144 LEDs? als Matrix
geschaltet würden da 4 locker reichen, die Ansteuerung ist halt
komplizierter.
Gast #305807
Lesenswert?

Sorry, .rar ist mir jetzt zu umständlich, da schau ich nicht rein...


Bei den gekreuzten Leiterbahnen an jeden kreuzungspunkt eine LED
denken. (Plus an die Senkrechte, Minus an die Waagrechte Leitung)

Zeichne dir das mal auf, dann verstehst du auch leichter warum man das
Ding zeilen- oder spaltenweise pulsen muss und nicht einfach direkt was
anzeigen kann.

So sind auch deine LED module intern aufgebaut, du must also
rausfinden, welche pins für die Zeilen und welche für die Spalten
zuständig sind.

Z.B. TA20-11HWA (5x7 LED Modul von Kingbright)

Obere Pinreihe:
 R3 R1 C4 C3 R4 C1 R2

Untere Pinreihe:
 R6 C5 R4 C3 C2 R7 R5

(Rx=Row/Zeile x, Cx=Column/Spalte x)

Ist auch einfach auszuprobieren... zwei Krokokabel mit nem
Vorwiderstand, und dann einfach wild Kombinationen testen, bis
wenigstens irgendwas leuchtet, dann ein Pin festhalten und mit dem
anderen weitertesten.

An die Spalten-Leitungen schliesst du dann die Ausgänge der
Spalten-Schieberegister an, an das erste modul die ausgänge 1-5 vom
ersten Schieberegister, ans zweite modul die restlichen 3 vom ersten
und 2 vom zweiten, das dritte modul dann ausgänge 3-7 vom zweiten.

/Ernst
Gast #305808
Lesenswert?

hier hab ich was anderes gefunden soll auch eine matrix sein

es steht auf den aufkleber: LED Text Matrix 13-320165

                            Toshiba S4E38XX

es besteht aus 140 LED´s; 7 IC´s; 35 Transistoren und etliche
Widerstände

ic aufschrift: 74HC4094 N
               A74710PS
               Hnn9648 B

Transistor aufschrift: C33825
                       PH 6 6
 bild ist von vorne

Stammt von einem autounfall: da ist ein pkw in ein baustellenhänger
reingefahren

vielleicht ist es damit einfacher
Angehängte Dateien:
#305811
Lesenswert?

Es sind sicher nicht immer 4 LEDs zusammengeschalten.

Zeichne dir doch mal 5x7 Leds auf, bei denen ein Pin immer
spaltenweise, der andere Pin zeilenweise zusammengeschaltet ist.

Nun such dir eine beliebige Led aus, und überlege, wie der Strom
fliessen muss, damit diese (und nur diese) leuchtet.

Solang Du das Prinzip der Matrixverschaltung nicht intus hast, wirst Du
immer Probleme haben Ansteuerschaltungen dafür zu verstehen.

/Ernst

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren