在例说STM32中说 TIMX_DIER的第六位TIE为触发中断使能位,通过将该位置1使能TIMX的中断触发,注意只要是TIMX需要使用中断,该位必须为1。
可是实例中
void Timerx_Init(u16 arr,u16 psc)
{
RCC->APB1ENR|=1<<1; //TIME3时钟使能
TIM3->ARR=arr; //设定计数器自动重载值
TIM3->  SC=psc; //预分频器
TIM3->DIER|=1<<0; //允许更新中断
TIM3->DIER|=1<<6; //允许触发中断
TIM3->CR1|=0x01; //使能定时器3
MY_NVIC_Init(1,3,TIM3_IRQChannel,2);
}
这段初始化代码将允许触发中断的代码注释掉也能完成正常工作
void Timerx_Init(u16 arr,u16 psc)
{
RCC->APB1ENR|=1<<1; //TIME3时钟使能
TIM3->ARR=arr; //设定计数器自动重载值
TIM3->  SC=psc; //预分频器
TIM3->DIER|=1<<0; //允许更新中断
// TIM3->DIER|=1<<6; //允许触发中断
TIM3->CR1|=0x01; //使能定时器3
MY_NVIC_Init(1,3,TIM3_IRQChannel,2);
}
难道我理解错了,这个触发中断管的是哪几个定时器中断,请原子哥指教。
|