实验证实一下就明白了,如下代码,约3.3ms产生一个更新中断:
void BaseTimerInit(void)
{
CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER4, ENABLE);
//TIMER4
TIM4_DeInit();
// Time base configuration 3.33ms timer (1/(8M/128)) * 208 = 3.33ms
TIM4_TimeBaseInit(TIM4_PRESCALER_128,208);
TIM4_ITConfig(TIM4_IT_UPDATE, ENABLE);
TIM4_SetCounter(208);
// Enable TIM4
TIM4_Cmd(ENABLE);
}
INTERRUPT_HANDLER(TIM4_UPD_OVF_IRQHandler, 23)
{
GPIO_WriteReverse(LED_PORT,LED_PIN);
TIM4_ClearITPendingBit(TIM4_IT_UPDATE);
}
|