Hallo Leute,
es geht um die Folgende Funktion:
1 | int pwm(void)
|
2 | {
|
3 | //Data Direction
|
4 | DDRD = 0xff;
|
5 | //Normal Mode
|
6 | TCCR1B &= ~((1<<WGM13)|(1<<WGM12));
|
7 | TCCR1A &= ~((1<<WGM11)|(1<<WGM10));
|
8 | //Set Bit on compare match
|
9 | TCCR1A |= ((1<<COM1A0)|(1<<COM1A1));
|
10 | //Timer No Prescale
|
11 | TCCR1B &= ~((1<<CS12)|(1<<CS11));
|
12 | TCCR1B |= (1<<CS10);
|
13 | //Set Counter Value
|
14 |
|
15 | OCR1AH = 0x7f;
|
16 | OCR1AL = 0x00;
|
17 |
|
18 | }
|
Mit dieser Funktion möchte ich eine LED an OC1A dimmen.
Allerdings leuchtet egal bei welchem Compare Wert die LED immer mit
voller Helligkeit.
Setze ich allerdings den Compare Output Mode auf Toggle so blinkt die
LED sehr langsam.
Kann mir jemand mit meinem Problem helfen?
Vielen Dank schonmal im vorraus.
Gruß
Sven