Guten Abend!
Ich habe mir in Tagelanger Arbeit eine Schaltung zusammengelötet, in der
ein ATMega16 ein paar 5x7 DotmatrixDisplays ansteuert.
Das Problem ist nun folgendes: ich muss insgesamt 28 LEDs multiplexen.
Wenn ich eine Refresh-Rate von etwa 20 Bildern pro Sek. haben will,
bleiben für jede LED noch mal 2ms Leuchtzeit. Dem entsprechend ist das
Display sehr dunkel.
Nun suche ich also nach einer Möglichkeit die Schaltung zu retten, OHNE
alles neu zu löten.
Mein erster Ansatz ist folgender: anstatt der 100 Ohm Widerstände, die
im Moment vor den LEDs sitzen, könnte man vermutlich auch wesentlich
kleinere nehmen (vielleicht sogar gar keine???). So könnte ein größerer
Strom fließen, und die LEDs wären heller.
Was meint ihr? Würd's das bringen?
Oder gibt es noch andere einfache Lösungen?
Vielen Dank für eure Hilfe!
Den Strom kannst du in der Tat erhöhen.
Im Datenblatt zu den LEDs ist neben dem maximalen Dauerstrom meist auch
angegeben, bei welchem Puls/Pausenverhältnis, bzw. bei welcher
Einschaltdauer welcher Strom fließen darf. Der Betrieb ganz ohne
Widerstände ist nicht zulässig. Und wenn der Controller die LEDs direkt
treibt, so sind dessen Limits ebenfalls einzuhalten. Bei AVR-Controllern
üblicherweise 40mA pro IO-Pin, bzw. 200mA pro Port, bzw 400mA für das
ganze IC. Das sind dann die absoluten Grenzwerte, man sollte tunlichst
merklich darunterbleiben.
Die Stromerhöhung sollte man erst nach erfolgreicher Fertigstellung des
Programms machen, damit bei einem Fehler einzelne LEDs nicht überlastet
werden.
Gruss
Jadeclaw.
So, bin jetzt mal von 100 Ohm auf 10 Ohm runtergegangen. Leider wird's
dadurch nur minimal heller.
Ich hab mich sogar getraut, den Widerstand durch einen Kurzschluss zu
ersetzen, aber auch das brachte nicht viel (und nein, es ist nicht
explodiert ;-)).
Die LEDs werden übrigens nicht direkt durch den AVR gesteuert, sondern
über Transistoren, so dass sie ihren Strom direkt aus dem Netzteil
beziehen können.
Dann frage ich nochmal etwas anders: ist es überhaupt möglich 28 LEDs zu
multiplexen? Oder lässt sich dabei niemals genug Leuchtkraft erreichen?
Falls das geht - was mach ich dann falsch?
>Die LEDs werden übrigens nicht direkt durch den AVR gesteuert, sondern>über Transistoren, so dass sie ihren Strom direkt aus dem Netzteil>beziehen können.
Nimm mal ein dickeres Netzteil. Und mach vorher die
Widerstände wieder rein !
Hi,
wie schon beschrieben scheint das Netzteil nicht mitspielen zu wollen.
Mehr Helligkeit entspricht mehr Strom. Der kann aber nur fließen, wenn
das Netzteil auch eine ausreichende Spannung zu Verfügung stellt, damit
dieser Strom fließen kann.
Gruß
Fred
Das Netzteil verspricht 4,5V und 800 mA. Das sollte doch eigentlich
ausreichen?
Die Schaltung ist etwa folgende (habe leider kein Bild):
Der AVR steuert einen über 3 Leitungen vier 74HC238 (de)muxe (die hängen
alle parallel, aber über den enable-Eingang wird sichergestellt, dass
immer nur einer davon an ist).
Diese werten die drei Eingänge aus, und schalten einen ihrer 8 Ausgänge
ein.
(das ganze dient nur dazu, um Pins am AVR zu sparen, also um 8 Ausgänge
verwenden zu können, dabei aber nur 3 Pins zu opfern).
Von diesen 8 Ausgängen gehen 7 Leitungen an meine LEDs (jeweils an eine
Zeile meiner 5x7 DotMatrizen).
Jeder der Demuxer multiplext also die Zeilen eines meiner vier Displays.
Die 5 (Spalten-)Ausgänge aller Displays sind dann wiederum über besagte
10 Ohm Widerstände an einem ULN2803 angeschlossen. Das kann benutzt
werden, um die Spalten zu multiplexen.
Pff, hört sich ganz schön kompliziert an, ist aber eigentlich ganz
einfach:
Ein AVR steuert 4 x 74HC238 und 1 x ULN2803.
Die 74HC238 dienen dabei zum Zeilen-Multiplexen, der ULN2803 zum
Spaltenmultiplexen....ich glaube ich male doch grad mal ein Bild ^^
(poste ich gleich)
Ist es eigentlich richtig, dass die 74HC238 ihre Ausgänge direkt
zwischen VCC und GND umschalten? Dienen die Inputs wirklich nur dazu,
den aktiven Ausgang festzulegen?
Falls das nämlich nicht so ist, würde der AVR die LEDs ja doch selber
versorgen müssen....mmmhhh
Versorgen die 74HC238 die LEDs direkt ?
Falls ja, dann begrenzen die den Strom auf etwa 30-40mA. Ich habe ein
LED Display mit Mux 1/16. Da gehe ich bereits auf 150mA. Bei deinen 1/28
kannst du problemlos auf 200mA gehen, falls die LEDs das mitmachen. Für
mein 80x16 LED Display verwende ich ein 5V 10A Netzteil...
Und auch die Software, damit man sieht, wie groß das Tastverhältnis ist.
Ich habe 12 Punktanzeigen mit 7 Power-FETs getrieben, da kamen bis zu 2A
zusammen. Ein ULN schafft das nicht.
Die Spalten habe ich mit Schieberegistern gesteuert (74AC299) + 100 Ohm
in Reihe (=34mA).
Gemultiplext wurden die Zeilen, also Tastverhältnis 1/7.
Peter
Hm.. ist zwar sehr sonderbar diese Ansteuerung der Dot-Matrix (weil viel
verschwendet wird, es geht einfacher und effektiver)
Egal:
In der Schaltung kann ich so nicht falsches erkennen.
Allerdings sind immer nur maximal fünf LEDs je Spalte eingeschaltet.
Dadurch ergeben sich hohe Ströme
=> Bringen die HC238 einen hohen LED-Strom?
ich glaube der kann nur 10mA, vielleicht 20mA
für LED multiplexen ist das ziemlich wenig, sollten 50..100mA sein
=> Selbe Frage für den ULN2803, nur der muss 20mal! den LED-Strom
bringen
es wäre aber sinnvoll, die Vorwiderstände eher hinter die HC238 zu
machen.
=> Beim Schalten der Ströme enstehen induktive Spannungsfälle an den
Zuleitungen zu Hc238ern und ULN2803. Es sollten zwingend direkt über
die Pins Blockelkos eingebaut werden! (falls nicht vorhanden)
=> Liefert das Netzteil genug Strom?
Verdammt ^^
Gibt es denn vergleichbare ICs, die mehr leisten? So dass ich die
einfach austauschen kann? Oder muss ich die komplette Schaltung neu
machen?
Das wäre seeeehr ärgerlich!
Ich würde die Schaltung neu machen, und dabei effektiver verdrahten,
sollte mit einem ULN mehr machbar sein, falls der genug Strom bringen
kann, sonst halt Transistoren.,...
Ein einziger MAX7219 oder MAX7221 würde das problem auch lösen. ;-)
Von welchem Hersteller sind die LED-Module? Es gibt von Kingbright
solche Module die super-hell sind.
Aber ich seh grad: die MAXs schaffen nur 64 LEDs, ich bräuchte also 3
Stück, um meine 4 DotMatrizen anzusteuern, richtig?
Das ist also auch nicht so ganz das wahre :-(
Gibt es denn keine DEMUXE, die höhere Leistung verkraften?
(Die Pins müssen ja nicht genauso belegt sein wie beim 238...)
Ich google mir grad die Finger wund, kann aber nichts finden :-(
Nunja, aber drei solcher MAXe zu verbauen gefällt mir auch nicht. Andere
Idee:
Die Demuxe waren ja nur dazu da um zwei Dinge zu tun :
1) Mit nur 3 AVR-Pins 8 Ausgänge anzusteuern
=> Das ist nicht unbedingt schlimm, hier könnte ich auch 8 Pins opfern
2) Mit je einem AVR-Pin einen Demux komplett deaktivieren zu können, ums
so alle 4 Displays einzelnen an/aus schalten zu können
D.h. eigentlich wäre auch eine Art Transistor-Array (wie der ULN2803)
geeignet, das allerdings:
1) Die aktivierten Ausgänge auf VCC zieht (nicht auf Masse)
2) Einen von den Eingängen unabhängigen ENABLE Pin hat, mit dem man den
ganzen Baustein an/ab schalten kann
Gibt es sowas? *bitte bitte lieber Gott, mach dass es so einen IC gibt!*
;-)
Anderer Vorschlag:
DU hast vier Display je 5x7dots?? Welcher Typ ist das??
Ja, dann würde es gehen mit:
1x ULN2803,
7x Vorwiderstand
20x Transistor pnp bei spalten mit kathode/ npn bei spalten mit anode!
3x 74HC238 bei npn / 74HC138 bei pnp Transistor!
7+5=12pins.
Wäre das ok?
nun, falls du treiber findest, die 200..500mA Impulsströme mit 5%
Tastverhältnis treiben können, dann kannst du die Transistoren auch
durch diese Treiber ersetzen...
Welchen matrix typ hast du?:
spalte ist anode,
oder
zeile ist anode??
War ja nur ne idee...
Habe ich das richtig in Erinnerung, dass die Anode an - liegt?
Dann sind bei mir die Spalten (also 5 Pins pro Display) Anoden, die
gehen nämlich über die 5 Widerstände an den ULN2803, und der zieht die
wiederum auf GND.
Das sind übrigens Kingbright Displays (TC 12-11 RT).
"Dot-Matrix-Display, 5x7 Pkt., 8,0mm, rot, Kathode" heißt es bei
Reichelt.
Also, bei TC 12-11 RT sind die SPALTEN die KATHODEN und müssen Richtung
MINUS geschaltet werden!
Das bedeutet in MEINEM Beispiel:
PNP Transistoren und 74HC138
So, ich habe mich heut Nacht noch ein bisschen drangesetzt, und eine
neue Schaltung gezeichnet. Ist im Prinzip ähnlich der ersten, allerdings
ist der störende Multiplexer raus.
Jetzt werden die LEDs ausschließlich über Transistorarrays gesteuert,
müssten also genug Strom bekommen.
Ausserdem multiplexe ich jetzt über die Spalten anstelle der Zeilen,
muss also nur noch:
4 (Displays) x 5 (Spalten) = 20 Schritte machen
(d.h jede LED bekommt jetzt mehr Zeit zum leuchten als vorher, wo ich 28
Schritte machen musste).
Der "Pin-Verbrauch" hält sich auch in Grenzen. Mit genau 2 Ports, also
16 Pins müsste alles gehen.
http://img411.imageshack.us/my.php?image=multiplex3ed8.gif
Dazu noch ein paar Fragen:
1) Der Baustein den ich mit einem "?" gekennzeichnet habe sollte genauso
wie die ULN2803s funktionieren, nur die gewählten Ausgänge auf VCC
anstatt auf Masse zu ziehen.
Gibt es solche ICs? Wie heißen die?
2)Gibt es da jetzt noch irgendwelche störenden Strombegrenzer?
Die ULNs sind ja eigentlich nur Transistoren, müssten also einiges
vertragen...
3) Klappt das mit dem enablen der Displays so, wie ich mir das
vorstelle?
Indem ich einfach die GND Ausgänge der ULNs nochmal mit einem Transistor
versehe, müsste ich ja deren kompletten Stromfluss unterbrechen können,
oder?
Vielen Dank für eure Hilfe!
Oben stand die Lösung schon mal (von dom) ;-)
Mit den superhellen Display sollte das Problem gelöst sein ohne das Du
etwas an der Schaltung ändern müsstest.
Habe selber mal 8 von den Biestern verwendet (jeweils 2 gleichzeitig
angesteuert, also 4 Paare gemuxt) und wollte auch nicht so richtig hell
werden. Durch den Einbau der superhellen Teile (Kingbright TC07-11SRWA
wars glaub ich) war es sofort perfekt ohne weitere Änderungen an der
Schaltung. Waren nur etwas schwierig zu bekommen. Musste gleich 25 auf
einmal nehmen.
hi,
wenn du in deiner alten schlatung einfach den UDN2981 von angelika dem
238 nachschaltest, dann hast du doch genügend strom, oder? ist zwar
etwas teuer, jedoch hättest du dann nichts ändern müssen....oder?
maddin
Schau dir mal den Kingbright Katalog an:
http://www.kingbright-europe.de/_daten/Displays.pdf
Alle Displays mit SRWA in der Bezeichnung sind gut hell :-)
Musst halt schauen, welches Modul für Dich in Frage kommt (gemeinsame
A/K und Größe).
Bezug z.B. über einen der Distributoren. Stehen auf der Homepage.
>Wo bekommt man die denn her? Die Suche nach "TC07-11SRWA" hat leider>nichts gebracht :-(
Welche Suche meintest Du hier eigentlich?? Also Google bringt über 200
Treffer, gleich der erste scheinbar auch eine Bezugsquelle.