DIY编程器网

标题: STM32之通用定时器 [打印本页]

作者: admin    时间: 2014-10-12 14:31
标题: STM32之通用定时器
STM32中的定时器有多种,按功能分成2个高级控制器定时器,4个普通定时器,2个基本定时器,2个看门狗定时器,1个系统滴答定时器SysTick。
         
        定时器的关键是定时时间的计算。比如用定时器控制继电器的开关的时候,需要延时一段时间才关闭或者开启,这时候离不开定时器定时。
         
        通用定时器定时时间计算。1秒中断的基本实现:
         
        通用定时器模块的入口时钟经过分频得到计数器的时钟,用CK_CNT表示,预分频器的系数为:TIMx_PSC,当TIMx_PSC=0时,表示不分频,=1时,2分频。以此类推。
         
        公式为:CK_CNT=fclk_PSC/(PSC[15:0]+1),其中PSC最大为65535.
         
        其次是TIM5计数器的计数值的设置,TIM5计数器以CK_CNT为时钟来计数。计数到设定值产生中断。
         
        (1/分频后计数时钟)*计数值=设定时间。以1秒为例
        (1/(72MHz/7200))*10000=1s
         
        初始化通用定时器的一个重要的结构体TIM_TimeBaseInitTypeDef




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2