Go Down

Topic: LED-Stromversorgung und Schieberegister 74HC595 (Read 4932 times) previous topic - next topic

stem

Hallo,

ich habe den Arduino Uno und steuere mittels drei Schieberegistern vom Typ
74HC595 insgesamt 24 LEDs an. Alles funktioniert einwandfrei, nur reicht
die Stromversorgung nicht für alle 24 LEDs auf einmal aus.

Ich kann zum Beispiel 8 LEDs gleichzeitig einschalten, aber sobald ich alle
24 auf einmal einschalte, blinken sie nur kurz auf und erlischen dann sofort
wieder.

24 mal 20 mA sind 480 mA, und wenn ich recht im Bild bin, ist USB auf
500 mA begrenzt.

Wie kann ich das Problem lösen? Kann ich gleichzeitig den Arduino mit
USB ansteuern und eine externe Stromversorgung an der Strombuchse
anschließen? Oder brauche ich hier der Eingang "Vin" auf der "Power"-
Leiste?

Und eine ganz dumme Frage: Jede LED hat einen 330-Ohm-Vorwiderstand.
Zunächst hatte ich nämlich auf einem Breadboard ein Schieberegister
mit 8 LEDs, danach ein weiteres baugleiches angeschlossen und danach
eben noch ein drittes. Brauche ich jeweils kleinere Widerstände, je mehr
LEDs ich in der Schaltung habe?

Vielen Dank im Voraus  ;)


stem

sth77

Kurz zum USB: 100 mA sind Standard, erst nach expliziter Anmeldung als High-Power-Device können 500mA entnommen werden. Soweit ich weiß, melden sich Arduino-Boards aber als Low-Power-Device an. Also sind 100mA "gesichert", wieviel tatsächlich entnommen werden kann, hängt auch vom Mainboard-Hersteller ab. Viele Mainboards tolerieren bspw. hohe Anlaufströme von externen 2,5"-Festplatten.

Ich würde zu einem externen Netzteil raten, sollte auch problemlos mit gleichzeitig eingestecktem USB laufen.

Zur vermeintlich "dummen" Frage: Der Widerstand passt schon, an dem würde ich vorerst nichts ändern. Du könntest ihn allenfalls vergrßern, vielleicht auf 1000 Ohm, das verringert den Strom durch die LED, sie wird also dunkler. Weniger Strom heißt aber auch, dass du vielleicht (zumindest zum Testen der Schaltung mit 3 Schieberegistern) auch ohne weiteres Netzteil auskommst. Alternativ kannst du dich ja auch um LowCurrent-LEDs kümmern, deren Stromaufnahme liegt etwa bei 2 mA.
Mein verwaister Arduino-Blog: http://www.sth77.de/ - letzter Eintrag: Diamex-ISP in der irgendwann mal aktuellen Arduino-IDE 1.6.4

uwefed

Das Problem ist nicht nur der Arduino oder die USB-Schnittstelle sondern auch das Schieberegister.
Das Schieberegiste 74HC595 verträgt maximal 70mA.

Vergrößere die Vorwiderstände der LED auf 1kOhm und alles funktioniert.

Grüße Uwe

stem

Hallo,

danke, mit 1 kOhm funktioniert alles prima über USB.  :)

P.S. Was wäre denn in diesem Fall die praktische Grenze? D.h. wieviele solche
Schieberegister mit je 8 LEDs könnte ich aneinanderhängen?


Besten Dank!

stem

uwefed


Hallo,
danke, mit 1 kOhm funktioniert alles prima über USB.  :)
P.S. Was wäre denn in diesem Fall die praktische Grenze? D.h. wieviele solche
Schieberegister mit je 8 LEDs könnte ich aneinanderhängen?
Besten Dank!
stem


Ich weiß, es scheint eine komische Frage zu sein, aber sie hat ihre Berechtigung:

Welche Farbe haben die LED?

Je nach Farbe haben sie eine andere Durchlaßspannung und darum bei 1kOhm Widerstand einen anderen Strom.

Grüße Uwe

stem

Hallo,

ich verwende blaue LEDs.

Durchmesser: 5mm
Material: GaInD
Intensität: 3000 mcd
Spannung: 3,0 bis maximal 3,5 Volt
Betriebsstrom: typisch 20 mA


Liebe Grüße

stem

uwefed

Nehmen wir den schlimmsten Fall 3,5V. Bei 1kOhm und ca 5V Spannungsversorgung (beachten wir mal nicht daß am Ausgang des 595 nicht ganze 5V rauskommen sondern der Ausgangstransistor etwas Spannung abfällt so sind am Widerstand 1,5V. Bei 1kOhm sind das dann nur 1,5mA.  Jedes Schieberegister hat 8 LED  also  12mA. 470 Ohm oder 330 Ohm verdppel bzw verdreifchen den LED-strom. Auch mit 330 Ohm Vorwidertständen müßtest Du mehr als 10 Schieberegister über USB ansteuern können.

Da bleibt aber die Frage wieso es am anfang nicht funktioniert hat?

Viele Grüße Uwe

stem

Nach dem Umstecken aller Widerstände ist mir die Idee gekommen, dass das ursprüngliche Problem (alle LEDs flackerten nur kurz auf) kein Hardware-, sondern ein Softwareproblem meinerseits war ...  :smiley-roll-sweat:

Jedenfalls klappt jetzt alles wunderbar.  :)


Vielen Dank für die prompte und sehr freundliche Hilfe!


stem

Go Up