Hi.
Ist gerade mein erster Versuch mit Timern.
Nur aus dem AVR-GCC Tutorial habe ich mir sozusagen folgendes
rausgelesen aber nichts passiert.
Wenn die Frequenz zu hoch ist sollten die LEDs ja zumindest schwach
leuchten aber tut sich garnix.
Was mach ich falsch?
1 | #include <avr/io.h>
|
2 | #include <inttypes.h>
|
3 |
|
4 | #include <avr/interrupt.h>
|
5 | #include <avr/signal.h>
|
6 |
|
7 |
|
8 |
|
9 | SIGNAL (SIG_OUTPUT_COMPARE1A)
|
10 | {
|
11 | //Ereigniss vom Timer
|
12 | if (PORTB == 0x00)
|
13 | {
|
14 | PORTB = 0xFF;
|
15 | }
|
16 | else
|
17 | {
|
18 | PORTB = 0x00;
|
19 | }
|
20 |
|
21 | }
|
22 |
|
23 |
|
24 |
|
25 | int main(void)
|
26 | {
|
27 |
|
28 | sei(); //Global Interrupt Enabled
|
29 |
|
30 | //Timer auf 1024 des Taktes setzen
|
31 | //TCCR0 = 0b00000101; //Timer/Counter Control Register
|
32 | TCCR0 = (1<<CS00)|(1<<CS02);
|
33 |
|
34 |
|
35 | DDRB = 0xFF;
|
36 | PORTB = 0xFF;
|
37 |
|
38 |
|
39 | //PORTB=0x00;
|
40 |
|
41 | while(1)
|
42 | {
|
43 |
|
44 |
|
45 |
|
46 | }
|
47 | }
|