void SysTickInit(void)
{
uint32_t tmp = SYSTEM_CLK_M*1000000; //系統時鐘頻率
SysTick->LOAD = tmp/UserSysTickHz - 1; //tick計時器初始值 1ms中斷一次
NVIC_SetPriority (SysTick_IRQn, (1<<__NVIC_PRIO_BITS) - 1);
SysTick->VAL = 0;
SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk |
SysTick_CTRL_TICKINT_Msk |
SysTick_CTRL_ENABLE_Msk;
NVIC_SetPriority(SysTick_IRQn, 0x00U);
}
void SysTick_Handler(void) //中斷處理
{
if (0U != delay){
delay--;
}
TimeBase1ms = 1;
CO2SensorGetData();
}
|