void timer2Init(void (*timerCallbackFcn)(void), unsigned int prescalar) { OpenTimer2(T2_ON | T2_SOURCE_INT | T2_PS_1_256, prescalar); ConfigIntTimer2(T2_INT_ON | T2_INT_PRIOR_3); timerCallback = timerCallbackFcn; mT2IntEnable(1); }
extern void timerEnableInterrupt(timer * pTimer, const int PreviousSetting) { switch(pTimer->m_TimerNumber) { case 1: mT1IntEnable(PreviousSetting); break; case 2: mT2IntEnable(PreviousSetting); break; case 3: mT3IntEnable(PreviousSetting); break; case 4: mT4IntEnable(PreviousSetting); break; case 5: mT5IntEnable(PreviousSetting); break; default: while (true); } }
void Timer2Init() { OpenTimer2(T2_ON | T2_IDLE_CON | T2_SOURCE_INT | T2_PS_1_16 | T2_GATE_OFF, 625); // freq = 10M/16/625 = 1KHz mT2SetIntPriority(1); INTEnableSystemSingleVectoredInt(); mT2IntEnable(1); }
void modem_hal_stop() { // Return to rest duty cycle SetDCOC1PWM(REST_DUTY); //OCxRS = REST_DUTY; // Disable playback interrupt mT2IntEnable(0); //IEC0bits.T2IE = 0; // Turn PTT led off pin_write(43, LOW); }
extern int timerDisableInterrupt(timer * pTimer) { int PreviousSetting; switch(pTimer->m_TimerNumber) { case 1: PreviousSetting = mT1GetIntEnable(); mT1IntEnable(0); break; case 2: PreviousSetting = mT2GetIntEnable(); mT2IntEnable(0); break; case 3: PreviousSetting = mT3GetIntEnable(); mT3IntEnable(0); break; case 4: PreviousSetting = mT4GetIntEnable(); mT4IntEnable(0); break; case 5: PreviousSetting = mT5GetIntEnable(); mT5IntEnable(0); break; default: while (true); } return PreviousSetting; }
void init_interrup2(void){ // init interrupts mT2SetIntPriority( 1); INTEnableSystemSingleVectoredInt(); mT2IntEnable( 1); }