stm32学习之路定时器的使用
上次讲了滴答定时器,这个我们来说下stm32 的其他定时器,分别有三种, 基本定时器,通用定时器和 高级定时器,在STM32F1 的定时器中分别由2 个基本定时器(TIM6、 TIM7) 、 4 个通用定时器(TIM2-TIM5) 和 2 个高级定时器(TIM1、 TIM8) 组成(这些资料也有),这接进入主题吧,这次我们讲的是stm32 的通用定时器(从简单的入门). 通用定时器包含一个 16 位自动重载计数器(CNT) ,就是可以计数2^16次,还有其计数的频率可以由分频系数 PSC 来控制,PSC的取值范围为1~65535,定时器的能实现什么功能就不说了,也找的到,这次通过定时器来控制led亮和灭。 开始之前我们要添加stm32f10x_tim.c 库文件,定时器器的所需要的配置函数都在这个库里面。 在stm中很多操作都是要先时钟使能,以通用定时器TIM3为例子,首先是通用定时器是挂载在APB1总线上,所以可以使用 APB1 总线时钟使能函数来使能 TIM3, 调用的库函数如下: RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);//使能 TIM3钟 其次就是初始化时钟(配置时钟)调用的函数是 void TIM_TimeBaseInit(TIM_TypeDef *TIMx,TIM_TimeBaseInitTypeDef *