Forum: Mikrocontroller und Digitale Elektronik Schaltung für LED Matrix richtig?


von Robin F. (gehacktes)


Angehängte Dateien:

Lesenswert?

Schönen guten Morgen,

ich wollte mich nur vergewissern das meine Schaltung richtig ist für 
eine LED Matrix wäre nett wenn ihr mal drüber schaun könntet.

Und wie sollte ich am besten die Widerstände R1-R5 und von R6-R13 
wählen?

Gruss

von Ralf (Gast)


Lesenswert?

R1-R5 müssen zum Mux-Verhältnis passen, um die gleiche Helligkeit zu wie 
im statischen Betrieb zu erreichen und sie dürfen natürlich nicht so 
klein sein, dass die LEDs ausserhalb der Spec betrieben werden 
(max.Pulsstrom).

Speziell in der Anfangsphase solltest du größere Werte nehmen, falls das 
Programm mal hängen bleibt. Damit verhinderst du dass die LEDs 
abrauchen.

Allerdings müsste man halt auch wissen, welche LEDs du einsetzt. 
Beispielsweise ist "rote LED" nicht das gleiche wie "rote LED, 3W, 12cd" 
:)

Ralf

von Robin F. (gehacktes)


Lesenswert?

Öhm ja ^^ okey also danke erstmal dafür ich wollte ganz stink normale 
5mm rote LEDs verwenden.

von ... (Gast)


Lesenswert?


von Robin F. (gehacktes)


Lesenswert?

Ist die Schaltung jetz richtig? Und kann man evtl die Widerstände grob 
übern Daumen peilen?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ich glaube kaum, dass ein Portpin den Strom von 8 LEDs packt...

Stat NPN gehören von +5V her eigentlich PNP Transistoren rein. Nur die 
kannst du da richtig im Schaltbetrieb ansteuern. So, wie es jetzt ist, 
hast du am Emitter höchstens jeweils ca. 4,3V.
Von diesem Gesichtspunkt aus finde ich die Schaltung in LED-Matrix 
auch etwas verwirrend. Gut, der Vorteil ist die schnellere 
Schaltgeschwindigkeit der Transistoren, weil die sich im Linearbetrieb 
befinden...

von Robin F. (gehacktes)


Angehängte Dateien:

Lesenswert?

So jetz richtig??? Hoffe sind auch richtig rum xD

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> So jetz richtig??
Schonmal richtiger... ;-)

Aber:
Wieviel Strom soll über eine einzelne LED fliessen?
Und wieviel Strom darfst du überhaupt in den uC-Pin reinlassen?

von Robin F. (gehacktes)


Lesenswert?

uff ehm...also eine LED hatt IF = 20mA und das mit dem µC ka^^ muss ich 
mal schauen mom.

von avcc (Gast)


Lesenswert?

avcc noch beschalten. + 100nF kondensator dran.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Robin Fehrecke schrieb:
> also eine LED hatt IF = 20mA
Wenn du also alle 8 LEDs pro Zeile einschalten würdest, dann sind das 
8x20 = 160mA. Das kann ein uC-Pin nicht mehr.

> also eine LED hatt IF = 20mA
Woher hast du diesen Wert?

von Robin F. (gehacktes)


Angehängte Dateien:

Lesenswert?

Nen 100nF hab ich scon drin ;)^^

Und µC = 40mA denk ich

von Robin F. (gehacktes)


Lesenswert?


von HolgerT (Gast)


Lesenswert?

Ich sehe das so, dass nacheinander einzelne Spalten geschalten werden. 
Pro Zeile leuchtet also max. eine LED.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

HolgerT schrieb:
> Ich sehe das so, dass nacheinander einzelne Spalten geschalten werden.
> Pro Zeile leuchtet also max. eine LED.
Ok, mentaler Kurzschluss meinerseits...  :-/

von Robin F. (gehacktes)


Lesenswert?

Und wie siehts jetz aus? xD Wie sollte ich die Widerstände wählen und 
ist der Schaltplan jetz fertig und richtig?

von Karl H. (kbuchegg)


Lesenswert?

Robin Fehrecke schrieb:
> Und wie siehts jetz aus?

Sieht nicht schlecht aus.

Allerdings solltest du noch einen Blick ins Datenblatt des µC riskieren.
Es gibt nämlich noch eine 2.te Beschränkung.

Im Extremfall können in allen 8 Spalten 8 LED gleichzeitig brennen. D.h. 
den Strom von 8 LED musst du durch den µC nach GND abführen. Der µC kann 
aber nur eine bestimmte Menge Strom durch seine GND Pins abführen. 
Wieviel ist das?

> xD Wie sollte ich die Widerstände wählen

ausrechnen!

Eine Einzelschaltung sieht doch so aus


        +5V o-----+                      ^      ^
                  |                      |    Transi Spannung
                PNP-Transi               |      v
                  |                      |      ^
                LED                     5V    LED Spannung
                  |                      |      v
                  R                      |      ^
                  |                      |    Widerstand
                  +------o GND           v      v


der gesammte Spannungsabfall von 5V teilt sich auf auf den 
Spannungsabfall am Transistor, den Spannungsabfall an der LED und dem 
Spannungsabfall am Widerstand.

Transistor Spannungsabfall und LED Spannungsabfall sind dir vorgegeben, 
die kannst du nicht ändern (Datenblätter. Du kannst aber auch pro 
Diodenübergang einfach 0.6 bis 0.7V rechnen, für eine handelsübliche 
rote LED 1.2V. So genau ist das nicht, weil du ja den Widerstandswert 
soweiso nicht kriegen wirst, den du jetzt ausrechnest sondern den 
nächstliegenden aus der Normreihe nehmen wirst). Daher verbleibt welcher 
Spannungsabfall, der am Widerstand abfallen muss? Jetzt kennst du die 
Spannung die über dem Widerstand abfallen muss und du weißt auch (das 
hast du festgelegt) welcher Stromg da durchlaufen soll. Damit hast du 
alles beisammen um mit dem Ohmschen Gesetz   U = R*I  den Widerstand 
ausrechnen zu können.

20mA sind für den Anfang, denke ich, ein guter Wert. Damit riskierst du 
während der Entiwcklung nicht, dass dir eine LED abraucht, wenn du einen 
Programmfehler hast. Auch läufst du damit noch nicht Gefahr, die vorhin 
angesprochene GND Limititierung des µC zu überlaufen. Im schlimmsten 
Fall ist die Matrix ein wenig dunkel. Aber immer noch besser, als wenn 
etwas zu rauchen anfängt :-)

> und
> ist der Schaltplan jetz fertig und richtig?

Wenn du dann auf höhere Ströme gehst, ist er noch nicht fertig.

von Robin F. (gehacktes)


Lesenswert?

Okey so weit so gutr alles verstanden außer das mit der Strom den ich 
über den µC nach GND abführen soll ist mir nicht ganz klar???

Aber ansonsten:) dann kann ich ja nachher scon Ätzen juhu endlich ^^

Danke für eure Unterstützung!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Karl heinz Buchegger schrieb:
> Im Extremfall können in allen 8 Spalten 8 LED gleichzeitig brennen.
> D.h. den Strom von 8 LED musst du durch den µC nach GND abführen.
Auch reingefallen... ;-)
Maximal 5 Pins müssen den Eingangsstrom aufnehmen und nach Masse 
abführen. Macht 100mA, das sollte gehen...

von Robin F. (gehacktes)


Lesenswert?

also geht das so wie ich das habe?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Robin Fehrecke schrieb:
> also geht das so wie ich das habe?
Ja.

von Karl H. (kbuchegg)


Lesenswert?

Robin Fehrecke schrieb:
> Okey so weit so gutr alles verstanden außer das mit der Strom den ich
> über den µC nach GND abführen soll ist mir nicht ganz klar???

Ist doch ganz einfach
Strom ist wie Wasser. Wenn du in eine Kanalisation 8 Wasserschläuche 
reinhängst und aufdrehst, dann muss der Kanal das Wasser auch abführen 
können.

Es hilft dir nichts, wenn du die Limits des einzelnen Schlauches 
einhältst, wenn dann der Kanal das Problem darstellt.

So auch bei dir.
Der Strom rinnt von + über den Transi, LED und Widerstand in den Pin des 
µC hinein (den du schaltest). Aber vom Pin gehts ja noch weiter. Der 
Strom muss bei den GND Anschlüssen des µC ja auch wieder heraus um dann 
zurück zum GND des Netzteils zu laufen. Mit 1 LED-Zweig ist das noch 
kein Problem, aber bei 8 derartigen Teilzweigen muss der GND Anschluss 
des µC auch den Strom dieser 8 Teilzweige abführen können!

Strom läuft immer in einem geschlossenen Stromkreis! Soviel strom, wie 
aus Sicht des Netzteils aus dessen + Anschluss in die Schaltung 
hineinfliesst, soviel Strom kommt über die GND Schiene wieder zum 
Netzteil zurück! Und dazwischen muss sich dieser Strom durch diverse 
Engstellen, wie zb die dünnen Bonddrähte der einzelnen IC quetschen.

Und dort, bei den GND Anschlüssen des µC, hast du deinen 2-ten 
Flaschenhals.


(Alles mit technischer Stromrichtung gesehen)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Karl heinz Buchegger schrieb:
> Wenn du in eine Kanalisation 8 Wasserschläuche reinhängst und aufdrehst,
> dann muss der Kanal das Wasser auch abführen können.
Robin hat nur 5 Wasserschläuche... :-D

von Karl H. (kbuchegg)


Lesenswert?

Lothar Miller schrieb:
> Karl heinz Buchegger schrieb:
>> Wenn du in eine Kanalisation 8 Wasserschläuche reinhängst und aufdrehst,
>> dann muss der Kanal das Wasser auch abführen können.
> Robin hat nur 5 Wasserschläuche... :-D



<Brille putzen>
Yep. Nicht gesehen.

OK. Dann wird sichs ausgehen.
(Es schadet aber IMHO auch nichts, wenn er sich dessen bewusst ist, wenn 
er dann die LED-Ströme erhöhen will)

von Robin F. (gehacktes)


Lesenswert?

okey danke:)jut jut dann mach ich ma die Ätze jetz an xD

Ich bedanke mich und wünsche euch noch einen schönen Tag!

von MaWin (Gast)


Lesenswert?

> Ich sehe das so, dass nacheinander einzelne Spalten geschalten werden.
> Pro Zeile leuchtet also max. eine LED.

Ja, aber mit dem 8-fachen Strom !
Schliesslich soll sie nicht 1/8 so hell sein, sondern mit ganzer 
Helligkeit strahlen.
Und wenn sie nur 1/8 der Zeit leuchten darf, muss sie eben 8 mal heller 
strahlen und dazu mit dem 8-fachen Strom versorgt werden.
Von nix kommt nix.
Und 160mA schafft kein BC177.
Daß man nicht einfach die Vorwiderstände auf 0 Ohm setzen kann, sollte 
ebenso klar sein.


Du brauchst Zeilentreiber (für 800mA) und Spaltentreiber (für 160mA)

http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.8.1

von Robin F. (gehacktes)


Lesenswert?

Ja also die 0 Ohm sind nur weil ich noch nicht wusste was ich da rein 
nehm für Widerstände!

Und okey wenn du das sagst das das mit dem BC 177 omh okey??^^ ja gut 
dann muss ich vlt Treiber benutzen.

von Karl H. (kbuchegg)


Lesenswert?

Einige dich doch bitte erst mal mit dir selber, mit welchem Strom du die 
LED anfahren willst.

MaWin hat schon recht. Deine LED werden dunkler sein. Die Frage ist 
wieviel dunkler (für dich als Beobachter) und ob du in einer ersten 
Version damit leben kannst um zu lernen wie man mit einer Matrix umgeht 
und sie programmiert.

Wenn du da nämlich 160mA durchjagst und einen Programmfehler hast, dann 
werden deine normalen LED zu stinken anfangen.

Ganz abgesehen davon, dass dann plötzlich das was ich weiter oben über 
den GND Anschluss gesagt habe, relevant wird.

Ein 1/8 Multiplex frisst zwar schon einiges der Helligkeit, aber leben 
kann man in einer ersten Version immer noch damit, wenn man die 
LED-Ströme nicht auf den Multiplex hochrechnet.


Du kannst ja mal das Programm schreiben und nur 1 LED in der Matrix 
haben und nachsehen wie hell das dann wirklich werden wird und ob du 
damit fürs erste Leben kannst :-) Dazu brauchst du noch keine geätzte 
Platine, sondern kannst das erst mal so zusammenstoppeln.

von Robin F. (gehacktes)


Lesenswert?

ja also ich möchte die leds einigermaßen hell haben also sie sollten 
nicht glimmen! schon so das man auch was sieht halt!

Und ja ich scau gerade schon das ich da bei den 5 PINS noch ne 
Transistoren einbinde. Muss ich da auch wieder PNP benutzen?

von Karl H. (kbuchegg)


Lesenswert?

Robin Fehrecke schrieb:
> ja also ich möchte die leds einigermaßen hell haben also sie sollten
> nicht glimmen!

Sie werden auch nicht einfach nur glimmen.
Probiers aus:
Schreib dir eine Schleife, die eine LED 1ms einschaltet und 8ms 
ausschaltet. Dann hängst du deine LED drann mit einem Widerstand den du 
auf 20mA dimensioniert hast und siehst nach wie hell das wird. Das ist 
dann die Helligkeit, die du dann von jeder einzelnen LED der Matrix 
kriegst.

Und nein: rechnerisch 1/8 Helligkeit ist nicht gleich 1/8 optische 
Helligkeit wie du sie wahrnimmst. Dein Auge arbeitet logarithmisch. Wenn 
du eine Led  mit Vollstrom 20% des Stroms klaust, merkt man das optisch 
so gut wie gar nicht. Gut. Du klaust ihr nicht 20% sondern viel mehr. 
Aber das heisst noch nicht, dass sie fahl glimmen wird.

> Und ja ich scau gerade schon das ich da bei den 5 PINS noch ne
> Transistoren einbinde. Muss ich da auch wieder PNP benutzen?

Nein.
NPN

PNP    der Transistor sitzt über der Last   (am Vcc Anschluss der Last)
NPN    der Transistor sitzt unter der Last  (am GND Anschluss der Last)

von Robin F. (gehacktes)


Angehängte Dateien:

Lesenswert?

So hab ich geändert ich hoffe das passt so^^

von MaWin (Gast)


Lesenswert?

> ich hoffe das passt so^^

Natürlich nicht.

Solche Vorwiderstände wie R13 fehlen vor den BC548.
Zudem halten die Transistoren die angegebenen Ströme nicht aus.
Auch dein Vorwiderstand R1 ist immer moch nicht berechnet.
Und die 1k für R13 etc. sind viel zu hoch.

Dabei steht die komplette fertig dimensionierte Schaltung in
der verlinkten FAQ, du hättest sie nur abschreiben müssen.

Aber das mit dem Aufmerksamkeitsdefizit der jungen Generatiuon
ist schon ein Übel.

von MaWin (Gast)


Lesenswert?

> Und nein: rechnerisch 1/8 Helligkeit ist nicht gleich 1/8 optische
> Helligkeit wie du sie wahrnimmst. Dein Auge arbeitet logarithmisch.


Cool, dann mach ich mir in mein Zimmer nicht 1 100 Watt Lampe rein
sondern 10 10 Watt Lampen und schon ist es viel heller....

(Herr wirf Hirn).

von Karl H. (kbuchegg)


Lesenswert?

MaWin schrieb:

> (Herr wirf Hirn).

Du brauchst keineswegs so spöttisch sein.
So der große Zampano bist du nämlich auch nicht.

Schon mal eine LED mittels PWM gedimmt?
Wenn nein, dann mach das mal und sieh dir an, wie weit du runter gehen 
kannst, ehe du optisch überhaupt eine Abnahme der Helligkeit bemerkst.

Aber passt schon.
Jag ihn ruhig in Strome rein, die er nicht mehr beherrscht. Beim ersten 
Softwarefehler, der seinen Multiplex zum stehen bringt, werden dir seine 
LED dankbar sein.

von Robin F. (gehacktes)


Lesenswert?

Mal ganz ruhig bleiben bitte...und mit den Widerstandswerten das habe 
ich mir nur so notiert ich ändere die nicht im Schaltplan weil is ja 
egal was da fürn Wert steht! Und das in der FAQ habe ich nicht benutzt 
weil da die Tranistoren Q1 bis Q8 keine PNP sind und mir wurde gesagt 
das man da PNP nehmen soll! Das verwirrt als neuling shcon!!! Und im 
Netz steht auch immer wieder was anderes drin. Jede Schaltung ist anders 
wer soll da noch alles durchsteigen?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

MaWin schrieb:
> Und wenn sie nur 1/8 der Zeit leuchten darf, muss sie eben 8 mal heller
> strahlen und dazu mit dem 8-fachen Strom versorgt werden.
Wobei hier dann auf jeden Fall der Maximalstrom fatalerweise durch die 
Bonddrähte der LED begrenzt werden könnte...

von MaWin (Gast)


Lesenswert?

> Jede Schaltung ist anders


Na ja, um 90 Grad gedreht.

Aber du hast angefangen.

Entscheidend ist zunächst mal ein ganze simples Verständnis:

Eine LED braucht 20mA, 5 x 8 = 40 LED brauchen 800mA.

Da hilft nun auch keine Esoterik, wenn die Dinger ordentlich leuchten 
sollen, braucht man in der Summe 800mA.

Und weil bei dir nur eine der 8 Spalten zu einer Zeit leuchtet
(man könnte auch nur eine der 5 Zeilen zu iner Zeit leuchten lassen, 
müsste dann aber die Vorwiderstand R1 etc. verschieben)
fliessen diese 800mA erst in der ersten Spalte, dann in der zweiten 
Spalte, dann in der dritten Spalte, dann in der vierten Spalte, dann in 
der fünften Spalte.

Das nennt man Zeitmultiplex.

Die Zeit ist kürzer, der Strom dafür höher, eben 100mA pro LED.

Nun muß man nur noch dafür sorgen, daß der uC diese höheren Ströme auch 
schalten kann, und dazu braucht man Treiber. Es gibt eine handvoll 
Methoden das zu erreichen, also natürlich auch unterschiedliche 
Schaltungen im Internet (und viele davon funktionierten gar nicht 
ordentlich).

von MaWin (Gast)


Lesenswert?

> eben 100mA pro LED.

Mist, 160 natürlich, sind nicht 5 sondern 8.

von dasrotemopped (Gast)


Angehängte Dateien:

Lesenswert?

das Gartenschlauchproblem kann man ja leicht umgehen, in dem man die 
Zeilen und Spalten mit Transistoren ansteuert. Hat auch den Vorteil, das 
man beliebig starke LEDs benutzen kann. Die Ansteuerung einer einzelnen 
LED ist ja schliesslich wie eine PWM Ansteuerung, bei der die Pausenzeit 
immer länger wird, je mehr LEDs man in der Matrix benutzt. Da kann 
schnell der Wunsch nach einem hohen LED Strom entstehen, damit die 
Matrix auch gut ablesbar (->hohe Leuchtkraft) ist.
Schont natürlich auch die Ports des uC, da alle Ports als Ausgänge nur 
den Steuerstrom für die Transistoren liefern müssen.

Gruß,

dasrotemopped.

von dasrotemopped (Gast)


Lesenswert?

upps, wärend ich meinen Beitrag geschrieben habe gabs ja schon nen neuen 
Post mit den zusätzlichen Transistoren !

Gruß,

dasrotemopped

von MaWin (Gast)


Lesenswert?

> dasrotemopped

Was für eine Scheiss-Schaltung.

Seit wann haben grüne LEDs 1.2 Volt ?

Wieso ein 1 Watt Widerstand an einem Microcontrollerausgang (unten 
rechts) ?
Kann der überhaupt 1 Watt liefern ?
Nein, bekanntlich regelt der zwischen 20mA und 40mA ab, also mehr als 
1.6 Milliwatt können an dem Widerstand gar nicht abfallen,
allerdings läuft der Microcontroller praktisch im Kurzschluss an allen 
Ausgängen.

1 Ohm als LED-Vorwiderstand würde auch eher zu 1 Ampere führen, das ist 
dann doch etwas heftig, mehr als das 10-fache ihrer 20mA Nennstrom 
halten die meisten LEDs nicht aus.


Mit so unüberlegtem Murks macht man den Fragenden keine Freude, sondern 
demonstriert nur seine eigene Unfähigkeit.

von dasrotemopped (Gast)


Lesenswert?

@mawin

Die Schaltung ( z.B. Widerstände ) ist natürlich nicht dimensioniert.
Vollständige + geprüfte Schaltungen gibts nur gegen Geld.

Gruß,

Markus.

von picasso (Gast)


Lesenswert?

@dasrotemopped (Gast)

>> gibts nur gegen Geld <<  L O L

mit so einer dilettantische Zeichnung würde ich noch nicht mal meinen 
Hintern abputzen, geschweige Geld zahlen, wie bist Du denn drauf

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
Noch kein Account? Hier anmelden.