STM32 Timer (1) 定时器分类和框图
1. 高级控制定时器 TIM1 TIM8
2. 通用定时器 TIM2 TIM3 TIM4 TIM5
3. 基本定时器 TIM6 TIM7
定时器:
1. 16/32位 向上 向下 上下 计数模式, 自动重装载计数器 TIMx_CNT
2. 16位可编程(实时修改) 预分频器(TIMx_PSC)
3. 4个独立通道(TIMx_CH1 ~ 4)
输入捕获
输出比较
PWM生成
单脉冲模式
4. 可以和外部定时器集联
定时器结构框图分为5部分
时钟产生部分
定时器部分
输入比较部分
输出比较部分
寄存器部分
时钟产生来源:
1. 内部时钟 APB1(CLK_INT) (*)
2. TIMx_ETR 外部引脚输入
3. ITRx 内部触发输入,定时器集联
4. TL1FP1/2 来自于定时器外部通道
主要是内部时钟,最后输出 [ CK_PSC ]
时基电路:
将 CK_PSC 通过 [ PSC预分频器 ] 进行分频得到 [ CK_CNT ] 得到最终时钟
通过 [ CNT计数器 ] 和 计数模式 进行计数, 当计数结束后触发 [ 自动重装载计数器 ]
输入捕获:
输入捕获 每一个通用定时器有4个通道 [ TIMx_CH1/2/3/4 ]
输出比较:
比如说现在定时器是从 0-100 向上计数
如果把 [ 捕获比较寄存器 ] 的值设置为 v = 50;
如果 当前值 < v 则输出高电平, 当前值 > v 则输出低电平
那么效果就是 0-50 输出高电平, 50-100 输出低电平, 实现通道输出
通过控制 V 的值 就能改变占空比, 实现PWM。