Hallo,
leider habe ich in der Suche nichts passendes gefunden. Folgendes
Problem stellt sich mir. Ich programmiern im Moment einen ATmega88, bei
dem einige
Funktionen zeitgesteuert ablaufen sollen, dafür mache ich gerade
Low-level Funktionn für den Timer. Nun passiert aber folgende: Beim
Simulieren im AVR
Studio wird bei jedem möglich Interrupt zu main() gesprungen, bzw.
resetet.
Ich hab schon gedacht, das ich die IOnt_Vector Tabelle vrschieben
müsste, aber ich komm damit nicht so ganz klar. Meinen Originalcode habe
ich mal hier gepostet:
1 | //uart0.c
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | #include <avr/io.h>
|
8 | #include <avr/interrupt.h>
|
9 |
|
10 |
|
11 |
|
12 | #define TIMER0_OVF _VECTOR(17)
|
13 |
|
14 |
|
15 |
|
16 | ISR( TIMER0_OVF )
|
17 | {
|
18 | PORTC ^= (1<<5);
|
19 | }
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 | void main(void)
|
26 | {
|
27 |
|
28 | DDRC = (1<<5);
|
29 |
|
30 | TCCR0B |= (1 << CS00) | (1 << CS02); // Teiler 1024
|
31 | TIMSK0 |= (1 << TOIE0); // Timer 0 Overflow Interrupt enable
|
32 |
|
33 | sei(); // Interrupts einschalten
|
34 |
|
35 |
|
36 | while(1); //ever
|
37 | }
|
vielen Dank für die Hilfe,
mfg,
Simon