Попробуйте скачать свежую либу на свой проц. Там есть примеры инициализации таймера.
В примере NVIC_EnableIRQ() вообще не вызывается, используется ф-я NVIC_Init().
У меня сделано примерно так:
Код
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
static const TIM_TimeBaseInitTypeDef init = { //
.TIM_Prescaler = 0, //
.TIM_CounterMode = TIM_CounterMode_Up, //
.TIM_Period = 0xFFFF, //
.TIM_ClockDivision = TIM_CKD_DIV1, };
TIM_TimeBaseInit(TIM2, (TIM_TimeBaseInitTypeDef*) &init);
static const NVIC_InitTypeDef nvic = {
.NVIC_IRQChannel = TIM2_IRQn,
.NVIC_IRQChannelPreemptionPriority = 0,
.NVIC_IRQChannelSubPriority = 1,
.NVIC_IRQChannelCmd = ENABLE,
};
NVIC_Init((NVIC_InitTypeDef*)&nvic);
TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);
TIM_Cmd(TIM2, ENABLE);