Hallo,
ich möchte eine LED mit einem ATtiny13 dimmen.
Dazu würde ich gerne die Fast PWM am OC0A nutzen.
Leider habe ich da ein Problem, da die LED einfach nicht gedimmt wird.
Der betreffende Codeausschnitt:
1 | //Mal als Anfangswert 42
|
2 | OCR0A = 42;
|
3 | //Fast-PWM-Mode mit SET bei 255 und CLEAR bei compare, OC0A als Ausgang
|
4 | TCCR0A = (COM0A1 << 1) | (1<<WGM01) | (1<<WGM00);
|
5 | //prescaler 8
|
6 | TCCR0B = (1<<CS01);
|
Leider dimmt die LED nicht. Genauer gesagt glimmt sie schwach auf (was
sie ja auch sollte?) wenn ich den betreffenden Pin mit einem 10 zu 1
Tastkopf von meinem Oszilloskop berühre.
An diesem Pin hängt über 1 kOhm dann ein BC817-npn-Transistor und daran
die LED in grounded-Emitter-Schaltung.
Die Außenbeschaltung kann aber - glaube ich zumindest - nicht das
Problem sein, da eine Software-PWM funktioniert. Diese wiederum frisst
zu viel Rechenkapazität als dass ich sie verwenden könnte.
Könntet ihr mir sagen, wo das Problem liegt?
Mit freundlichen Grüßen,
Valentin Buck