Try using following piece of code, its working in my case
make changes, if required, as shown in InitDevice routine, or copy paste as it is...
Please, Let me know the result...
void timer_isr (void);
void InitDevice (void)
{
RCON |= 0b10000000; // enable interrupt priority
INTCON |= 0b11100000; // enable high & low priority interrupt
INTCON2 &= 0b11111011; // assign low priority to timer0 interrupt
}
#pragma code low_vector=0x18
void low_interrupt (void)
{
_asm GOTO timer_isr _endasm
}
#pragma code
#pragma interruptlow timer_isr
void timer_isr (void)
{
if(INTCONbits.TMR0IF) // if timer0 overflow interrupt occurs
{
INTCONbits.TMR0IF = 0; // clear overflow flag
// your stuff
PORTBbits.RB1 = 0;
BUZZER = 1; //BUZZER ON
Delay(20);
BUZZER = 0; //BUZZER OFF
}
}
__
Amit
** If you find my answer useful, please click the "Helpful? Please click" icon. **