/*---------------------------------------------------------------------------------------- 函数名: TimerInit 参数: None 返回值: None 描述: 初始化定时器,并创建第一个虚拟定时器:1s为周期 ----------------------------------------------------------------------------------------*/ void TimerInit(void) { DrvTIMER_Init(); DrvTIMER_Open(TMR1, 1000, PERIODIC_MODE); DrvTIMER_SetTimerEvent(TMR1,1000, (TIMER_CALLBACK)TMRCBForSysTick,0); DrvTIMER_EnableInt(TMR1); DrvTIMER_Ioctl(TMR1, TIMER_IOC_START_COUNT, 0); }
/*---------------------------------------------------------------------------------------------------------*/ int32_t DrvTIMER_Close(TIMER_CHANNEL channel) { if (channel > TMR1) { return E_DRVTIMER_CMD; } switch (channel) { case TMR0: { bIsTimer0Used = FALSE; bIsSetTime0Event = FALSE; DrvTIMER_Ioctl(TMR0, TIMER_IOC_DISABLE_INT, 0); DrvTIMER_Ioctl(TMR0, TIMER_IOC_RESET_TIMER, 0); break; } case TMR1: { bIsTimer1Used = FALSE; bIsSetTime1Event = FALSE; DrvTIMER_Ioctl(TMR1,TIMER_IOC_DISABLE_INT, 0); DrvTIMER_Ioctl(TMR1, TIMER_IOC_RESET_TIMER, 0); break; } default: { return E_DRVTIMER_CMD ; } } return E_SUCCESS; }