Amigo _CMaGNo_
1º.- Los flags de interrupción los limpia automáticamente CCS C.
2º.- Cada interrupción ha de ser habilitada específicamente, así como la habilitación general de interrupciones.
Te pego el trozo dedicado a esto del Manual del CCS C:
ENABLE_INTERRUPTS( )
Syntax: enable_interrupts (level)
Parameters: level - a constant defined in the devices .h file
Returns: undefined
Function: Enables the interrupt at the given level. An interrupt procedure
should have been defined for the indicated interrupt. The GLOBAL level
will not enable any of the specific interrupts but will allow any of the specific
interrupts previously enabled to become active.
Availability: Device with interrupts (PCM and PCH)
Requires: Should have a #int_xxxx, Constants are defined in the devices .h file.
Examples:
enable_interrupts(INT_TIMER0);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
Example Files: ex_sisr.c, ex_stwt.c
Also See: disable_enterrupts(), #int_xxxx