Forum: Mikrocontroller und Digitale Elektronik High-Power-LED + PWM: Kein gutes dimmen möglich?


von Philipp (Gast)


Lesenswert?

Ich habe mir mit einem Atmega8 und einigen(3) high-power-leds (Osram 
Golden Dragon) eine Beleuchtung für meinen Schrank gebaut.

-Die Leds werden per Hardwaretimer gedimmt.
-Die leds sind parallel geschaltet und jeweils mit eigenem 
Vorwiederstand versehen.
-Das ganze läuft mit 5V.
-Zum verstärken des Stroms ist am entsprechenden Pin des µC ein BD237 
Transistor angschlossen.

Mit den normalen LEDs die ca. 20mA benötigen, funktioniert das auch 
wunderbar.  Probleme bekomm ich, wenn ich die high-power-leds anschließe 
und das compare-register des Timers mit 1 oder 0 beschreibe 
(Timereinstellung ist "set at bottom, clear at compare-match"). Nach 
meinem Empfinden sollten die LEDs dann doch eigentlich nicht leuchten, 
oder nur so schwach, dass es kaum wahrnehmbar ist. Jedoch tun sie's 
dennoch. Zwar merklich dunkel, aber dennoch so hell, das man sie sehen 
kann, was nicht erwünscht ist.
Als PWM-Frequenzen hab ich bereits 4Mhz/256 = 15,6khz, 4Mhz/8/256 = 
1,9khz und 4Mhz/32/256 = 488Hz ausprobiert. Bei keiner Frequenz leuchten 
die LEDs so schwach, das man es nicht aus einiger Entfernung sehen kann.

Hat jemand ne Idee, was ich dagegen tun kann?

philipp

von Hubert G. (hubertg)


Lesenswert?

Entweder ist dein Programm falsch oder du hast was falsch angeschlossen.
Deine Stromversorgung ist zu schwach, sodas der µC einen Reset macht 
oder....

von Gast (Gast)


Lesenswert?

Dazu musst du den invertierten PWM-Modus wählen und in das 
Output-Compare-Register (255 - den auszugebenden Wert) schreiben. Ob das 
nun ein Feature oder ein Bug ist, dass bei der nicht-invertierten PWM 
beim Zurücksetzen, wenn der Timer den oberen Wert erreicht hat, der 
Ausgang gesetzt wird und erst einen Takt später die Vergleiche 
stattfinden, was zur Folge hat, dass auch bei einem Wert von 0 im OCR 
1/256 der Zeit (bei der 8 Bit PWM) der Ausgang gesetzt ist. Bei dem 
Workaround tritt das "Feature" in der Form auf, dass der Ausgang bei 
OCR=255 nur 255/256 der Zeit durchgeschaltet ist, was aber in diesem 
Fall deutlich weniger stört.
Das steht auch irgendwo unscheinbar im Datenblatt drin. Bin da auch 
schon mal drüber gestolpert...

von Anon Y. (avion23)


Lesenswert?

Noch zwei Idee:
- der Transistor sperrt nicht schnell genug.
- logarithmisches Helligkeitsempfinden des Auges.

von Gast (Gast)


Lesenswert?

In der Schaltung würde ich den Fehler eher nicht vermuten...
Siehe Seite 113 des Datenblatts: "The extreme values for the OCR2 
Register represent special cases when generating a PWM waveform output 
in the fast PWM mode."

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.