Wie der Betreff schon sagt, er ruft den ISR auf, wenn ich das Programm
mit dem Softwaresimulator (MPLAB XC16) debugge, wenn er zum Ende kommt
("}"), dann sagt er: No source code lines were found at current PC
0x469e.
Diese Adresse liegt viel weiter unten im Programm, wo genau weiss ich
nicht.
Er springt also (vermute ich) irgendwo hin zurück, aber nicht zur
aufrufenden Programmzeile aus der er gekommen ist.
Ich denke, dass es an meiner ersten Zeile der Interruptroutine liegt,
aber ich finde einfach kein brauchbares Programmbeispiel. Eigentlich
müsste es richtig sein, wobei ich nicht weiss, was das auto_psv genau
soll (irgendwas mit PSVPAG Register), und weshalb man in einer
Hochsprache mit sowas belästigt wird.
Das ist die Int-Routine:
1 | void __attribute__((__interrupt__, auto_psv)) _T5Interrupt(void)
|
2 | {
|
3 | if (tmrPrellMENUE != 0) tmrPrellMENUE--;
|
4 | IFS1bits.T5IF = 0; //TMR5-IF löschen.
|
5 | } //<- Hier kommt die Fehlermeldung !!!
|
Vergessen DANKE zu schreiben.