TIM(Timer)定时器:定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。
分类:基本定时器,通用定时器,高级定时器。(具体的TIMx属于哪一类定时器请参考手册)
基本定时器框图如下
![](https://i-blog.csdnimg.cn/direct/e869f9d002084ba5afac863d0a1d4f93.png)
时基单元:定时器的核心部分,由预分频器寄存器、自动重载寄存器、计数器寄存器组成。预分频器对输入的时钟CK_PSC进行分频后得到CK_CNT,计数器对CK_CNT进行计数,自动重载寄存器存储计数目标值。
通用定时器框图如下
![](https://i-blog.csdnimg.cn/direct/db8414dfc0094377aeb2edc20b0795b4.png)
计数器模式:通用定时器具有递增模式、递减模式、中央对齐模式这三种计数模式。
时钟源选择:①内部时钟:CK_INT
②外部时钟模式1:TRGI
![](https://i-blog.csdnimg.cn/direct/ee006a59a2674b5db4620df92df89026.png)
③外部时钟模式2:ETRF
![](https://i-blog.csdnimg.cn/direct/f326a407908944dcbfca156d89ee61c5.png)
输出比较功能:输出比较可以通过比较CNT与CCR寄存器值的关系,根据输出模式控制器中设定的输出模式,对输出电平进行置1、置0或翻转的操作,用于输出PWM波形。
输出比较通道的框图如下:
![](https://i-blog.csdnimg.cn/direct/7343dbfd1a0f423ba059d9642f465050.png)
输出比较模式:
输入捕获功能:输入捕获模式下,当通道输入引脚出现指定电平跳变时,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数。
输入捕获通道的框图如下
![](https://i-blog.csdnimg.cn/direct/3a3c63489cd74aa2bb3e20b5ebd23858.png)
主从触发模式:
主模式可以将定时器内部的一些信号映射到TRGO上,用于触发其他外设,即控制他人。
从模式可以接收其他外设或自身的一些信号,用于控制自身定时器的运行,即被他人控制。
TIM寄存器描述参见STM32F4xx中文参考资料。
参考资料
[1]STM32F4xx中文参考资料
[2]江科协STM32入门教程PPT