ola, bom dia.
não trabalho com CCS, mas posso te dar uma ideia como funciona as interrupções.
o pic tem varias formas de ser interrompido (ele para o que estiver fazendo atende a interrupção e volta onde tinha parado), sao algumas:
interrupção externa;
interrupção Timer0, Timer1...;
interrupção da entrada serial;
interrupção da USB;
interrupção do Watch Dog Timer;
tem outras....
Mas o funcionamento é o seguinte: sempre que uma dessas interrupções acontece, uma flag é setada (flag é o bit interno do registrador da interrupção que você esta trabalhando), então você tem que fazer uma sub rotina para este evento:
void interrupt() {
if (INTCON.INTF) { //esta é a flag de interrupção externa
//aqui você coloca o que quer que o mic faca
INTCON.INTF=0; //zera a flag, ele volta onde estava
}
} //OBS: este pedaço de código é pra mikroc pro
a maioria das outras interrupções você trata de forma semelhante.
se você for usar mais que 1 interrupção você tem que configurar a prioridade delas também.
sempre olhe o datasheet do mic e procure os registradores para trabalhar com eles.
Datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/39631E.pdf
este livro é muito bom: http://www.editoraerica.com.br/detalhes.asp?cod=2441