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?
das ist locker möglich, poste mal deine schaltung! da ist, glaub ich, was faul..
>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
Klingt erstmal plausibel, poste aber zur sicherheit mal die schaltung
Hier mal die Schaltung (schlampig, ich weiß) :-D http://img162.imageshack.us/my.php?image=multiplexxq9.gif
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
Ach ja: es gibt dann noch vier Leitungen, über die die 74HC238s einzelnen aktiviert werden könne, die hab ich im Bild vergessen...
Ne, ohne Treibertransistoren schaffen die 238 das nicht. 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.,...
Aber wenns doch wirklich nur an den Strömen liegt? Und vieleicht mit anderen ICs prima funktionieren täte?
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.
AAAARGHH!!! Warum sagt mir keiner, dass es sowas gibt?!?!?! lol Und die sind ja auch noch viel billiger als meine ganzen Bauteile.... heul
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 :-(
gibt es auch nicht. die teile sind ja zum dekodieren und nicht zum treiben.. also, am besten kommst du wirklich mit dem max72..
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?
Aber wer möchte denn 20 Transitoren verlöten? Wäre natürlich machbar... ;-) Aber wenn es keine andere Möglichkeit gibt?
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.
Wo bekommt man die denn her? Die Suche nach "TC07-11SRWA" hat leider nichts gebracht :-(
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.
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.