void StartOs_Arch_SysTick(void) { /* Set lowest priority for PendSV */ NVIC_SetPriority(PendSV_IRQn, (1 << __NVIC_PRIO_BITS) - 1); /* Activate Repetitive Interrupt Timer (RIT) for periodic IRQs */ Chip_RIT_Init(LPC_RITIMER); Chip_RIT_SetTimerInterval(LPC_RITIMER, 1); /* 1ms Period */ Chip_RIT_Enable(LPC_RITIMER); /* Enable IRQ for RIT */ NVIC_EnableIRQ(RITIMER_IRQn); /* Set lowest priority for RIT */ NVIC_SetPriority(RITIMER_IRQn, (1<<__NVIC_PRIO_BITS) - 1); }
/** * @brief Main entry point * @return Nothing */ int main(void) { /* Generic Initialization */ SystemCoreClockUpdate(); Board_Init(); /* Initialize RITimer */ Chip_RIT_Init(LPC_RITIMER); /* Configure RIT for a periodic interrupt tick rate */ Chip_RIT_SetTimerIntervalHz(LPC_RITIMER, TIME_INTERVAL); Chip_RIT_Enable(LPC_RITIMER); NVIC_EnableIRQ(RITIMER_IRQn); /* LED is toggled in interrupt handler */ while (1) { /* Sleep between interrupts */ __WFI(); } }
void HabilitarTimer( void) { Chip_RIT_Enable( LPC_RITIMER ); }