难点:定时器级联、主从模式
一、简介:
1.TIM(Timer)定时器 定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断
补充:
{
定时器本质上是一个计数器,可以工作在定时或计数模式,区别是定时模式是对时钟脉冲计数,计数模式是对外部脉冲(遮挡等)计数
1S/72MHZ就是一个时钟周期,也就是基准时钟,计数72个数就是过了1S/72MHZ*72这么多的时间,也就是1Us。1Hz对应1s,1KHz对应1ms,1MHz对应1us
}
2.16位计数器、预分频器(预对计数器的时钟进行分频,让计数更加灵活)、自动重装寄存器(计数的目标值,想要计多少个时钟申请中断)的时基单元,在72MHz计数时钟下可以实现最大
59.65s的定时
-->2^16 x 2^16 = 可记录的最大震荡次数N,N / (每秒震荡次数)72MHz = 最大计时59.65s
每秒计数次数(72M/65536) / 触发中断的计数值(65536) = 每秒产生的中断数,取倒数 -> 中断周期/间隔时间
(这里有点难理解。换成这样:T=1/f(已分频),t=n*T。T是时钟分频后周期,n是重装计数值,t是可计时的时长。)
3.不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等多种功能
4.根据复杂度和应用场景分为了高级定时器、通用定时器、基本定时器三种类型
二、定时器类型
类型 | 编号 | 总线 | 功能 |
高级定时器 | TIM1、TIM8 | APB2 | 拥有通用定时器全部功能,并额外具有重复计数器、死区生成、互补输出、刹车输入等功能 为了三相无刷电机的驱动设计的 |
通用定时器 | TIM2、TIM3、TIM4、TIM5 | APB1 | 拥有基本定时器全部功能,并额外具有内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等功能 |
基本定时器 | TIM6、TIM7 | APB1 | 拥有定时中断、主模式触发DAC的功能 |
STM32F103C8T6定时器资源:TIM1、TIM2、TIM3、TIM4
补充:还有2个看门狗定时器,1个系统嘀嗒定时器
三、定时器结构图分析
ETR外部时钟模式2是走ETRF进入触发控制器,直接作为时基单元的时钟。而ETR外部时钟模式1是ETRF走TRGI进入从模式控制器(占用了触发输入通道),作为时基单元的时钟。下节课要用!
TIM3--->TRGO-->ITR2实现定时器级联
模式1输入:ETR、其他定时器、CH1引脚边沿、CH1引脚、CH2引脚
四、定时中断基本结构图
五、预分频器时序
注意:上面三种定时器结构图中,有黑色阴影的都是有影子(缓冲)寄存器,包括预分频器、自动重装寄存器和捕获比较寄存器
六、计数器有无预装时序
七、时钟树
基本:定时中断&外部时钟