Hallo,
ich programmiere gerade einen AT90CAN128.
Ich versuche gerade über den debugmodus meinen Programmcode auf
Funktionalität zu prüfen ;-)
Leider kann ich keinen breakpoint in der ISR - Routine setzen, bzw.
werden die breakpoints nach dem compilieren gelöscht.
Die ISR sieht so aus:
1 | // ------------------ interrupt routines for switches ----------- //
|
2 |
|
3 | // button down interrupt (yellow)
|
4 |
|
5 | ISR(INT0_vect)
|
6 | {
|
7 | cli();
|
8 |
|
9 | Entprellen1();
|
10 | set_Switch1_flag;
|
11 | if(Status_flag.cnt_mode <2)
|
12 | { Status_flag.cnt_mode = 4;}
|
13 | else
|
14 | {Status_flag.cnt_mode --;}
|
15 |
|
16 | sei();
|
17 | }
|
18 |
|
19 | // button up interrupt (blue)
|
20 |
|
21 | ISR(INT1_vect)
|
22 | {
|
23 | cli();
|
24 |
|
25 | Entprellen2();
|
26 | set_Switch2_flag;
|
27 | if(Status_flag.cnt_mode >3)
|
28 | { Status_flag.cnt_mode =1;}
|
29 | else
|
30 | {Status_flag.cnt_mode ++;}
|
31 |
|
32 | sei();
|
33 | }
|
34 |
|
35 | // switch2 interrupt
|
36 |
|
37 | ISR(INT3_vect)
|
38 | {
|
39 | set_RG_mode_sw_flag;
|
40 | }
|
41 |
|
42 |
|
43 | // ---------------------------------------------------------- //
|
Ich habe die Optimierung auf 0O gesetzt.
Die Interruptroutinen werden ausgeführt ( Habe die Flags, welche in den
Routinen gesetzt werden, in der "main" Datei auslesen lassen)
Ich benutze AVR Studio, Version: 4.18.716
Programmer ist ein AVR Dragon
Könnt ihr mir weiterhelfen? Wieso werden die breakpoints nicht
akzeptiert?
Gibt es noch andere Einstellungen im AVR Studio, die ich beachten muss?
Viele Grüße,
Robert