www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Helligkeitsproblem beim LED Multiplexen


Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das ist locker möglich, poste mal deine schaltung! da ist, glaub ich, 
was faul..

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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 !

Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klingt erstmal plausibel, poste aber zur sicherheit mal die schaltung

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal die Schaltung (schlampig, ich weiß) :-D

http://img162.imageshack.us/my.php?image=multiplexxq9.gif

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ja: es gibt dann noch vier Leitungen, über die die 74HC238s 
einzelnen aktiviert werden könne, die hab ich im Bild vergessen...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ne, ohne Treibertransistoren schaffen die 238 das nicht.

Peter

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.,...

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber wenns doch wirklich nur an den Strömen liegt?
Und vieleicht mit anderen ICs prima funktionieren täte?

Autor: dom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AAAARGHH!!! Warum sagt mir keiner, dass es sowas gibt?!?!?! lol
Und die sind ja auch noch viel billiger als meine ganzen Bauteile.... 
heul

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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 :-(

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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 :-(

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gibt es auch nicht. die teile sind ja zum dekodieren und nicht zum 
treiben..

also, am besten kommst du wirklich mit dem max72..

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!* 
;-)

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber wer möchte denn 20 Transitoren verlöten? Wäre natürlich machbar... 
;-)
Aber wenn es keine andere Möglichkeit gibt?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!

Autor: l00k (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo bekommt man die denn her? Die Suche nach "TC07-11SRWA" hat leider 
nichts gebracht :-(

Autor: maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
der udn ist sozusagen das gegenstück zum uln...

maddin

Autor: l00k (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.



Autor: l00k (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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.

Autor: Dominik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schau mal da datasheet vom udn2580 an...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.