Servus,
was du machen willst, nennt sich pollen, wenn dieses Programm fkt., dann
könntest du diese Aufgabe mit einer ISR erledigen.
1 | /* loop */
|
2 | while (1) {
|
3 | /*
|
4 | PORTB &= ~(_BV(LED_PIN)); // LED off
|
5 | _delay_loop_2(delay);
|
6 |
|
7 | PORTB |= _BV(LED_PIN); // LED on
|
8 | _delay_loop_2(DELAY_MAX - delay);
|
9 | */
|
10 |
|
11 | if (dir) { // fade-in
|
12 | for(; delay >= DELAY_MAX; delay++){
|
13 | pwm+=1; //hier die richtigen Register setzen!
|
14 | _delay_loop_2(100); //100ms delay
|
15 | }
|
16 | dir=0; //led tauscht den Zustand
|
17 |
|
18 | } else { // fade-out
|
19 | for(; delay == 0; delay--){
|
20 | pwm+=1; //hier die richtigen Register setzen!
|
21 | _delay_loop_2(100); //100ms delay
|
22 | }
|
23 | dir=1; //led tauscht den Zustand
|
24 | }
|
25 | }//end loop
|
Du müssest nur noch die Ausgänge der LED richtig initialisieren!
mfg