Hallo ich könnte zwei Tipps gebrauchen. Sobald man ins ISR springt ist Bit8 immer auf LOW. Wieso? Ein Fehler tritt auch beim << auf. Wie kann ich die hinteren Stellen wieder auf 1 setzen?
1 | int main (void) |
2 | {
|
3 | DDRB = 0xFF; |
4 | PORTB = 0xFF; |
5 | |
6 | |
7 | TCCR1A |= (0<<COM1A1) | (1<<COM1A1); |
8 | TCCR1B |= (1<<WGM12) | (1<<CS12); |
9 | TIMSK1 |= (1<<OCIE1A); |
10 | |
11 | OCR1A = 1952; |
12 | |
13 | sei(); |
14 | |
15 | |
16 | while(1) |
17 | {}
|
18 | }
|
19 | |
20 | |
21 | ISR(TIMER1_COMPA_vect) |
22 | {
|
23 | PORTB = PORTB<<1; |
24 | }
|