*通用定时器更新中断配置:
1》定时器的时钟使能
2》定时器更新中断初始化(TIM_TimeBaseInitTypeDef 、参数TIM_Period是自动重装载arr寄存器,参数TIM_Prescaler是预分频器psc寄存器、中断溢出时间Tout=((arr+1)x(psc+1)/Tclk输入时钟频率))
3》定时器中断类型使能(TIM_ITConfig())
4》定时器中断优先级设置(NVIC_InitTypeDef)
5》定时器使能(TIM_Cmd)
6》编辑中断处理函数(判断中断类型TIM_GetITStatus()==SET,因为中断类型有很多种,进入中断后清除中断标志TIM_ClearITPendingBit())
————————————————————————————————————————————————————————————————————
*通用定时器输入捕获高电平时间
1》GPIO、定时器时钟使能
2》配置定时器的GPIO(GPIO_InitTypeDefGPIO下拉输入)
3》定时器更新中断的初始化参数设置(TIM_TimeBaseInitTypeDef)
4》定时器输入捕获初始化(TIM_ICInitTypeDef)
5》定时器中断优先级设置
6》定时器中断类型使能(TIM_ITConfig())
7》定时器使能(TIM_Cmd)
8》编辑中断处理函数(定义TIMx的更新中断和输入捕获中断等,要在TIMx_IRQHandler的中断处理函数里面判断是哪一类型的中断发生TIM_GetITStatus(),然后清除中断标志ClearITPendingBit())
————————————————————————————————————————————————————————————————————
*定时器TIM1输出PWM
1》GPIO、定时器时钟使能
2》配置输出PWM的GPIO(GPIO_InitTypeDefGPIO()复用推挽)
3》定时器的初始化参数(TIM_TimeBaseInitTypeDef())
4》PWM模式配置(TIM_OCInitTypeDef()pwm需要设置参数:模式TIM_OCMode、状态TIM_OutputState、极性TIM_OCPolarity)
5》PWM主输出使能(TIM_OCPolarity())
6》
文章标题
最新推荐文章于 2021-09-17 20:08:14 发布