Gast
#158851
Hallo,
ich möchte einen Interrupt auslösen per XINT1. Vorab ich arbeite mit
Code Composer C2xx.
Ich starte mein Hauptprogramm, was in einer Endlosschleife endet und
auf den Interrupt wartet.
Wenn ich nun den Interrupt auslöse, wird auch das entsprechende flag
gesetzt wenn ich das Register anschaue aber das Programm springt nicht
in die Unterfunktion.
Folgende Register habe ich gesetzt.
XINT1CR = 0x8003;
//0x0001 enable
//0x0002 low priority ( vector address 0Ch ) int6
//0x0004 polarity ( interrupt on falling edge )
//0x8000 clear ( int flag by writing a 1 )
in meiner "vectors.asm" habe ich meine Subroutine so deklariert.
ref _c_int0, _xint1_isr
sect "vectors"
rest: B _c_int0 ;00h reset
..
..
int6: B _xint1_isr ;0Ch INT6
..
meine Unterfunktion ist so benannt: "interrupt void xint1_isr
(void){}"
Habe ich was vergessen oder wo liegt der Fehler.Ich arbeite mich grade
in das Thema an.
Ist zwar kein Atmel aber vielleicht gibts ja auch hier Leute die sich
damit auskennen.
Taylor