LED-Dot-Matrix-Displays

Hallo NG!

Ich habe wieder einmal ein neues Opfer gefunden - selbstverständlich wieder etwas mit Optoelektronik ;) Dieses mal sollen es LED-Dot-Matrix-Displays von Reichelt sein (TC 07-11 rt -

formatting link
die über ein SRAM mit Daten gefüttert werden.

Laut Datenblatt braucht jede LED bis zu 160mA bei 1/10 Duty Cycle. Direkter Betrieb an dem vorgesehenen Spaltentreiber 74HCT164 ist dann wohl gegessen. Mit BC548ern müsste es funktionieren - gibt es da auch etwas fertiges in Form von ICs oder werden es wohl wieder ein paar Lötabende?

Welche Multiplex-Frequenz würdet ihr für die LED-Anzeige empfehlen? Unter

1 kHz wird es wohl stark flimmern, über 10 kHz kann ich ja wegen der LEDs verwerfen. Vorerst werden es wohl 25 Spalten sein - wenn es dann funktioniert noch ein paar mehr.

Zeilentreiber kann ich im Prinzip ja jeden dahergelaufenen nehmen - wichtig wäre nur, dass er pro Ausgang max. 25mA aushält - oder sollte doch lieber zu Transistoren greifen?

Vorerst wären das mal meine Fragen. Gibt es noch etwas, was ich beim Bau der Anzeige beachten muss?

TIA

Chris

--
www.hobby-elektronik.de.vu
Achtung: E-Mail-Adresse im "From" ungültig!
 Click to see the full signature
Reply to
Christof Rueß
Loading thread data ...

"Christof Rueß" schrieb im Newsbeitrag news: snipped-for-privacy@individual.net...

de.sci.electronics FAQ:

formatting link
Kapitel Laufschriften gelesen ? Offenbar nicht.

TPIC6B595

1kHz ? 50Hz meinst du wohl. 1/100 Sekunde pro Spalte reicht, alles darueber traegt zumaechsteinmal nur zu EMV Stoerungen bei.

Maximal 8 (160mA max, 20mA nom = 8)

Noe, richtig rechnen.

Dir wird nichts anderes ueberig bleiben.

Bei Matrix von 25 Spalten x 8 Zeilen: 160mA Spaltenstrom, 4A Zeilenstrom, Gesamtstromaufnahme 4A bei vermutlich 5V, also 20 Watt.

--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
 Click to see the full signature
Reply to
MaWin

Am Tue, 7 Dec 2004 20:29:29 +0100 hat Christof Rueß geschrieben:

Da wirst du wohl ULN2003/ULN2803 als Low Side Treiber verwenden müssen, Bis zu 500mA und Basiswiderstände schon drin. Als High Side Treiber könntest du UDN2903 oder ähnlich verwenden (da bin ich mir nicht so sicher über die Type, aber es war erst ein Thread zu dem Thema, "Source Treiber")

Falls du wegen >10kHz bedenken hast wegen der Angabe "0,1ms" beim Spitzenstrom, dann ist das kein Problem, die 0,1ms sind das MAXIMUM. Bei sehr hohen Frequenzen wird die Kapazität lästig, aber du mußt ja nicht bis

1MHz gehen.

Du wolltest die LEDs ja mit bis zu 160mA peak betreiben. Da brauchst du schon was kräftigeres. Ich würde die Zeilen über alle Stellen durchverbinden und dann das Multiplex über die Zeilen machen. Also bei einzeiliger Anzeige mit n Stellen: 5*n Spaltentreiber mit 160mA Belastbarkeit, der ULN2003/ULN2803 ist da gut geeignet, hat aber ca. 1V Spannungsverlust. Die Zeilentreiber müssen 5*n*160mA Spitze aushalten, der mittlere Strom ist maximal 5/7*n*160mA, da kommen eh nur ordentliche MOSFETs (logic Level PMOS) infrage.

Ordentliches Netzteil, es kommt ganz schön Saft zusammen. Je nach Stellenzahl könnte es sich schon lohnen, auch für die Spaltentreiber niederohmige MOSFETs zu nehmen und die Betriebsspannung mittels Schaltregler aufs nötige Minimum abzusenken, um die Verluste in den Strombegrenzungswiderständen zu minimieren. Wenn alle Spaltentreiber MOSFETs aus einer Charge sind, könnte man sie ev. sogar mit passendem R_DS_on auswählen und auf zusätzliche Widerstände verzichten, die Spannung für die LEDs wird dann halt nur 2,9..3,x Volt betragen. Multiplexfrequenz (Zeilenfrequenz) im 1/7 Multiplex müsste mindestens

500Hz betragen, gibt dann gut 70Hz Bildwiederholfrequenz.
--
Martin
Reply to
Martin Lenz

Christof Rue=DF schrieb:

Unter

LEDs

Hallo,

wie kommst Du denn darauf das LEDs mit =FCber 10 kHz Probleme h=E4tten? Die LEDs selbst machen auch 100 kHz oder auch 1 MHz und dar=FCber mit. Datenblatt lesen hilft, was steht denn dazu drin?

Bye

Reply to
Uwe Hercksen

Hallo MaWin, Martin und Uwe!

"Christof Rueß" schrieb [LED-Panel]

An das, was da auf mich zukommen würde, habe ich noch gar nicht gedacht. Ich dachte, dass sich der Stromverbrauch wegen Multiplexing etwas mehr in Grenzen hält - gut, ein geeignetes Netzteil hätte ich da, 4A für 20 Spalten ist IMO doch ein wenig hoch, zumal die meisten Leuchtreklamen meist mit einem recht kleinen Trafo auskommen. Das Projekt werde ich dann wohl noch etwas schieben ;)

Allerdings hätte ich zu einem anderen "Mini"-Projekt eine Frage:

Ich arbeite momentan (wieder einmal) an der Ansteuerung eines LC-Displays, genauer ein Display vom Nokia 3510i mit 4096 Farben. Die Ansteuerung funktioniert soweit ganz gut, allerdings bin ich mit der Übertragungsgeschwindigkeit und -art noch nicht so ganz zufrieden. Das Display will für SDA/SCL/CS/RES relativ genau 3V, die parallele Schnittstelelle gibt (in etwa) 5V von sich. Momentan habe ich es noch durch einen Spannungsteiler + Transistoren gelöst und bin nicht besonders glücklich darüber, da bei maximaler Geschwindigkeit die Signale matschig werden und der Controller des Displays den Dienst quittiert. Wenn ich die Geschwindigkeit softwareseitig drossel, bekommt der Controller zwar alle Daten, einen Displayinhalt zu übertragen dauert allerdings eine kleine Ewigkeit. Da ich das LCD sowieso schon an der parallelen Schnittstelle betreibe, würde ich es auch gerne parallel ansteuern. Wenn ein Command/Parameter 8 bit lang wäre, wäre das auch kein Problem (74xxx165) - Leider kommt vor jedem Command noch ein Steuerbit: D/C (Daten/Befehl). Einen passenden IC habe ich noch nicht gefunden, habe mir aber schon ein paar Gedanken für eine "Bordmittellösung" gemacht: An AND-Gatter mit offenen Kollektoren kommen D/C und D0 bis D7. Die Ausgänge werden miteinander verbunden und mit SDA verbunden. Die ersten 8 Ausgänge eines CD4017 werden mit den zweiten Eingängen der ANDs verbunden, der 9 Ausgang geht an den Reset eines RS-FF und resettet gleichzeitig den 4017. Das Set des RS-FFs kommt (über ein Monoflop) vom PC. Der Ausgang des RS-FFs geht an einen Eingang eines weiteren AND-Gatters. An dem zweiten Eingang des Gatters hängt ein Taktgenerator. Der Ausgang des Gatters gibt dem CD4017 den Takt zum durchzählen und ist gleichzeitig Takteingang für den Controller. Falls meine Beschreibung unverständlich ist, kann ich gerne eine Handskizze liefern ;)

Ein weiteres, allerdings kleineres Problem wäre die Spannungsabsenkung von 5V auf 3V. Spannungsteiler möchte ich nicht nehmen, einfache Treiber CDxyz mögen ja meist auch nur Vdd+0,5V. Was nehme ich da am besten?

Vielen Dank für die guten Antworten der vorherigen Frage und schon vielen Dank für die Beantwortung dieser Frage ;)

Chris

Reply to
Christof Rueß

Am Sat, 11 Dec 2004 13:24:15 +0100 schrieb Christof Rueß :

Du kannst CD4050 Treiberbausteine dazwischenschalten, wenn du keinen bidirektionalen Betrieb brauchst. SDA / SCL klingt nach I2C, das kann bidirektional betrieben werden, allerdings mit Open Drain Treiber

  • PullUp, da reicht es, den Pull up auf 3V zu hängen.

Dann sind deine Spannungsteiler zu hochohmig, oder der Controller ist sowieso nicht schneller. I2C geht üblicherwiese bis 100 od 400kHz, ev. gibt es auch schon schneller. Handydisplays sollen auch stromsparend sein, sind ev. nicht extrem flott.

Dann kaskadiere doch 2 74HC165, so teuer sind die ja nicht.

Und all das nur um 2Schieberegister zu ersetzen????? Es gibt übrigens auch echte Multiplexer, die OC-AND Sache würde ich lassen, da hast du wieder schlappe Flanken. Schieberegister, Clock und ein Bitzähler + FlipFlop oder Zeitglied. Ev. auch ein GAL oder ein kleiner µC, zB At89C2051 (20pin

8051er), dessen UART kann auch 9bit und synchron (also mit Clock)

CD4049 (inv.) und CD4050 (ninv.) sind da speziell toleranter. Bei den diversen 74LVX/LVC/LCX Serien gibt es auch Low Voltage mit 5V Toleranten Eingängen, da mußt du aber die Datenblätter ansehen, ich habe bei der Vielfalt nicht im Kopf bei welchem Hersteller die wie heißen.

--
Martin
Reply to
Martin

"Martin" schrieb

Noch einmal nachgelesen: MPU - SDA und SCL ist eine dumme Angewohnheit von mir, da es sich für mich am plausibelsten für das ganze serielle "Zeugs" anhört.

Ist nur unidirektional.

Das wird es vermutlich sein - hatte noch keine Lust, an ihm herumzufrickeln, weil sowieso noch etwas anderes kommt...

sein,

Lt. Bastelkollegen soll der Controller bis 4MHz arbeiten können. Sinn hat das IMO bei Handies keinen - außer bei dem UMTS-Videokonferenzenquatsch...

betreibe,

Command/Parameter 8

vor

Ich habe mir gerade das Datenblatt vom 74HC165 (zwei von TI, allerdings mit unterschiedlichem Inhalt) und dieses Beispiel hier angeschaut:

formatting link
werde aber noch nicht so ganz schlau daraus.

Normalerweise müsste doch bei dem Beispiel D7 von U3 zuerst ausgelesen werden, oder? Für was ist der Pin Load am 74HC165? Für meine Anwendung müsste ich die ICs, bzw. den Zähler darin resetten können, wie funktioniert das? Clk müsste ich ja wieder über irgendeinen Zähler bis 9 zählen lassen und danach die Verbindung vom Taktgeber zu den ICs unterbrechen oder geht das einfacher? (Den Takt über die parallele Schnittstelle zu geben wäre sinnlos, da wäre ich danach auch nicht schneller).

Ich weiß - es gibt keine blöden Fragen, obwohl ich gerade wohl das gegenteil Beweise...

TIA

Chris

Reply to
Christof Rueß

Am Sat, 11 Dec 2004 15:09:56 +0100 schrieb Christof Rueß :

MPU sagt mir jetzt auch nix, aber es sei seriell.

gut

wenn es nicht I2C ist dann kann es leicht flotter sein. Ist Ok

Ja, MSB first sozusagen. Das ganze wird einfach durchgeschoben.

Da ist kein Zähler drin. sobald du von "parallel load" auf "shift" schaltest, sind die Eingangssignale egal und mit jedem Taktimpuls werden alle Bits eins weitergeschoben.

Du wärst etwas schneller, weil du die Daten nicht bitweise ausgeben mußt. Wenn dir das nicht reicht, dann brauchst du noch einen Pulszähler, Oszillator und Start/Stop-FF. Das ganze dann als synchrones Design aufbauen, sonst können dich die Glitches jagen - wirklich wichtig wird das dann bei einem FPGA Design. So wie du das beschreibst willst du ja schon einen kleinen USART (universal synchronous/asynchronous receiver transmitter)aufbauen, zumindest den synchronen Sendeteil.

--
Martin
Reply to
Martin

"Christof Rueß" schrieb im Newsbeitrag news: snipped-for-privacy@individual.net...

Eine Loesung mit nur 1 IC wird schwer (muesste uC oder GAL sein). Du brauchst ein parallel input serial output Schieberegister, das mit 4MHz (aus einem fertigen Quartzoszillator) getaktet wird. Dein Parallelport liefert mehr als 8 bit, denn er hat neben D0-D7 auch noch Steuerleitungen, also ist Command/Data kein Problem. Interessanter ist die Frage, wie man genau 9 Taktimpulse erzeugt, denn der Displaycontroller wird sonst durcheinanderkommen. Mein Tip: Kein Zaehler, sondern neben dem eigentlichen 9 bit Schieberegister noch ein 10 bit Schieberegister, bei dem die ersten 9 bit konstant auf HI liegen, das 10te (bzw. der serielle Eingang) konstant auf LO, und dieses Schieberegsiter steuert, welche Taktimpulse zum Dispalycontroller durchgelassen werden.

+------------------------|AND| +--9bitSchieberegister1--| |-- SCK -- Pegelwandler-- | | ||||||||| | 4MHz --+ LO +++++++++- HI +--+ +--9bitSchieberegister2-)------- SDA -- Pegelwandler-- ||||||||| | | Daten +--+-- /load = STB vom Parallelport

Als 9 bit Register tun es kaskadierte 2 * 4 bit Teile, dann braucht man nur 3 ICs, aber nicht aus der CD4xxx Serie, sondern ich wuerde sie aus die 74HCT Serie nehmen. Als Pegelwandler nix mit open collector oder gar Einzeltransistoren, man glaubt naemlich nicht wie klangsam so was schaltet, sondern ordentliche Pegelwandler aus der 74-Serie.

--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
 Click to see the full signature
Reply to
MaWin

Am Sat, 11 Dec 2004 16:00:20 +0100 schrieb MaWin :

Muß kein Quarz sein, RC geht doch auch.

Das sieht ähnlich aus wie der 8051 UART, in älteren INTEL Datenblättern ist der relativ genau beschrieben. Er kommt aber mit dem original Sendeschieberegister aus, nur 1bit verlängert. Dort wird beim parallelen Laden eine 1 hineingeschrieben, beim Schieben kommen nur mehr 0en nach. Sobald das register leer ist (wird mit einem 10fach OR geprüft) stopt das ganze. MaWins Schiebergister bildet mMn nur einen CD4017 nach, ev. mit invertiertem Ausgang.

Bei 4MHz könnte der CD4050 (3V Betrieb) zu langsam sein, ich weis nicht, ob es 74HC4050 gibt.

--
Martin
Reply to
Martin

"MaWin" schrieb:

Hallo MaWin!

[9 Bit-Schieberegister]

Wow, danke für deine Idee! Ich habe jetzt einmal die Eagle-Lib nach 4-Bit Parallel Load Shiftregister durchsucht. Es gibt zwar schon ein paar, allerdings gibt es die dann entweder nicht als *HCT* oder nicht bei Reichelt.

Ich hab mir das Ganze nocheinmal durch den Kopf gehen lassen...

Wenn ich den seriellen Eingang der Schieberegister nutze, kann ich ihn im Prinzip ja auch als 9. Eingang missbrauchen, beim Ausgabe-Register und auch beim Zählregister.

Ich werde mir mal einen kleinen Schaltplan zeichnen - kannst du ihn dann evtl. absegnen? :)

MfG und Danke!

Chris

Reply to
Christof Rueß

"Christof Rueß" schrieb:

dann

Hier liegt er:

formatting link
bzw.
formatting link

MfG

Chris

Reply to
Christof Rueß

"Christof Rueß" schrieb im Newsbeitrag news: snipped-for-privacy@individual.net...

Fuer 8 bit geht das, fuer 9 muss noch ein Bit dazu, denn SERIN muss gerade auf ANDERE Polaritaet als die Schieberegister-Load-Eingaenge.

--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
 Click to see the full signature
Reply to
MaWin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.