I want to setup the fast external interrupt 0 (EXI0)on the Infineon XC16x board (pin P1H.0). My functions look like this:
void EXI0_Int (void) interrupt 24 { // Interrupt routine } void EXI0_Init (void) { EXICON |= 0x02; // Falling edge EXI0 CC1_CC8IC = CALC_IC (0, 1, 13, 0); // ILVL = 13, Interrupt enable PSW_IEN = 1; }
The register EXICON is write protected when global int is enabeled. Look if there is an global int enable in the startup file. This happend to me. The global int enable must be set after writing to EXICON.