char dummy = 0x00;
void interrupt(){
if (INTCON.RBIF == 1){ // Change interrupt
dummy = PORTA; // MUST Read PORTB, otherwise flag will not clear
TXREG = dummy;
INTCON.RBIF = 0;
}
}
void main()
{
TRISA = 0x0F; // [RA0-RA3] = Inputs , PORTC = Output
TRISB.f5 = 1; // RA5 = Input (Used as IOC (interrupt on change))
ADCON1 = 0x06; // PORTA I/O as Digital I/O
SPBRG = 0x67; // decimal = 103, Baud-rate = 9600 , BRGH = 0
TXSTA.CSRC=1; TXSTA.SYNC=1; TXSTA.TXEN=1; // Master clock from BRG, Synchronous mode, Transmission Enable
RCSTA.SPEN=1; // Enable Serial ports
INTCON=0xC8; // {Global interrupts , PORTB Change interrupt} = Enable
while(1);
}