STM32 L412 Timer interrupt not working
I am using STM32L412 microcontroller and doing baremetal programming for timer interrupt. I am using Timer 6 and base clock of 4MHZ is used as HCLK. However my interrupt is not firing below mentioning my code. count variable is also not updating
int main(void)
{
LedConfig();
StartTimer6();
/* Loop forever */
while(1)
{
count=1;
}
}
void LedConfig(void)
{
/*Enable Clock for Port B. */
RCC->AHB2ENR |= (1U<<1);
/*Configure GPIOB_13 as general purpose output*/
GPIOB->MODER |= (1U<<26);
GPIOB->MODER &= ~(1U<<27);
}
void StartTimer6(void)
{
RCC->APB1ENR1 |= (1U<<4);
TIM6->PSC = 1000;
TIM6->ARR = 4000;
TIM6->EGR |= (1U<<0);
TIM6->DIER |= (1U<<0);
TIM6->CR1 |= (1U<<0);
NVIC_EnableIRQ(TIM6_IRQn);
}
void TIM6_IRQHandler(void)
{
if(TIM6->SR & (1U<<0))
{
GPIOB->ODR ^= (1U<<13);
TIM6->SR &= ~(1U<<0);
}
}
