1.定时器
(1)在RCC初始化函数中设置定时器时钟使能:
/* TIM2 clock enable */
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , ENABLE);
(2)设置定时器中断向量:
/* Configure one bit for preemption priority */
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
/* Enable the TIM2 Interrupt */
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQChannel;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//该参数设置了成员NVIC_IRQChannel中的先占优先级
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //该参数设置了成员NVIC_IRQChannel中的从优先级 NVIC_PriorityGroup_0,则参数NVIC_IRQChannelPreemptionPriority对中断通道的设置不产生影响。
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//该参数指定了在成员NVIC_IRQChannel中定义的IRQ通道被使能还是失能。这个参数取值为ENABLE或者DISABLE。
NVIC_Init(&NVIC_InitStructure);//把NVIC_InitStruct初始化
(3)初始化定时器并使能:
TIM_DeInit(TIM2);//复位TIM2定时器
stm32篇--定时器和PWM
最新推荐文章于 2023-11-04 18:16:17 发布