volatile long unsigned int mSecCounter=0, // counts millisecond interrupts
mSecDelayCounter=0; // used in the millsecond delay function
/* interrupt service routine for Timer1 ISR*/
void __attribute__((__interrupt__, __shadow__)) _T1Interrupt(void)
{
int i;
/* Interrupt Service Routine code goes here */
IFS0bits.T1IF = 0; //Reset Timer1 interrupt flag
mSecDelayCounter--;
mSecCounter++;
}
// delay a sepcified number of mSec
void mSecDelay(const long unsigned int delay)
{
mSecDelayCounter=delay;
while(mSecDelayCounter);
}