STM32高级定时器笔记-TIM
高级定时器功能
1-计数器16bit,上/下/两边 计数,TIM1和TIM8,还有一个重复计数器RCR,独有。
2-有4个GPIO,其中通道1~3还有互补输出GPIO
3-时钟来自PCLK2,为72M,可实现1~65536分频
(TM2~TM7时钟来自PCLK1)
4-高级定时器功能 :定时、输出比较(pwm)、输入捕获(脉冲宽度,pwm输入)、断路输入、互补输出。
高级定时器功能框图

1-时钟源
内部时钟源CK_INT 内部时钟源来自RCC的TIMx_CLK 外部时钟模式1—外部的GPIO Tix(x=1 2 3 4)

①时钟信号输入引脚
1-外部的GPIO TIx,对应:TIMx_CH1/2/3/4
2-TIM_CCMRx 的位 CCxS[1:0]配置引脚,其中 CCMR1 控制 TI1/2, CCMR2 控制 TI3/4
②滤波器
由TIMx_CCMRx 的位 ICxF[3:0]配置
③边沿检测
由 TIMx_CCER 的位 CCxP 和 CCxNP 配置,决定是上升沿有效还是下降沿有效。
④触发选择
当使用外部时钟模式 1 时,触发源有两个,一个是滤波后的定时器输入 1( TI1FP1)和滤波后的定时器输入 2( TI2FP2)。由 TIMx_SMCR 的位 TS[2:0]配置用哪一个定时器输入。
⑤从模式选择
把信号连接到 TRGI 引脚,让触发信号成为外部时钟模式 1 的输入,最终等于 CK_PSC,然后驱动计数器 CNT 计数,具体的配置TIMx_SMCR 的位 SMS[2:0]为 000 即可选择外部时钟模式 1。
⑥使能计数器
使能计数器开始计数,外部时钟模式 1 的配置就算完成,使能计数器由 TIMx_CR1 的位 CEN 配置。
外部时钟模式2—外部的GPIO ETR

①时钟信号输入引脚
时钟信号来自于定时器的特定输入通道 TIMx_ETR,只有 1 个。
②外部触发极性
来自 ETR 引脚输入的信号可以选择为上升沿或者下降沿有效,具体的由 TIMx_SMCR的位 ETP 配置。
③外部触发预分频器
由于 ETRP 的信号的频率不能超过 TIMx_CLK( 180M)的 1/4,当触发信号的频率很高的情况下,就必须使用分频器来降频,具体的由 TIMx_SMCR 的位 ETPS[1:0]配置。
④滤波器
具体的由 TIMx_SMCR 的位 ETF[3:0]配置,其中的 fDTS 是由内部时钟 CK_INT 分频得到,具体的由 TIMx_CR1 的位CKD[1:0]配置。
⑤从模式选择
经过滤波器滤波的信号连接到 ETRF 引脚后,触发信号成为外部时钟模式 2 的输入,最终等于 CK_PSC,然后驱动计数器 CNT 计数,具体的配置 TIMx_SMCR 的位 ECE 为 1即可选择外部时钟模式 2。
⑥使能计数器
使能计数器开始计数,外部时钟模式 2 的配置就算完成,使能计数器由 TIMx_CR1 的位 CEN 配置。
内部触发输入
1-内部触发输入是使用一个定时器作为另一个定时器的预分频器。硬件上高级控制定时器和通用定时器在内部连接在一起,可以实现定时器同步或级联。
2- 由TIMx_SMCR 的位 TS[2:0]配置。
2-控制器
1-控制器就是用来控制的,发送命令的
2-CR1、CR2、SMCR、CCER,主要学习这几个寄存器即可。
3-时基

1-16位的预分频器 PSC,PSC
2-16位的计数器CNT, CNT
3-16位的自动重装载寄存器ARR,ARR
4-8位的重复计数器RCR,RCR(高级定时器独有)
4-输入捕获
输入捕获的原理
一个脉冲信号,上升沿时,计数器CNT开始计数;下降沿时,产生中断,将CNT的值锁存到输入捕获寄存器CCR中,CCR的值即为高电平的时间。

①输入通道
当使用需要被测量的信号从定时器的外部引脚 TIMx_CH1/2/3/4 进入,通常叫 TI1/2/3/4,在后面的捕获讲解中对于要被测量的信号我们都以 TIx 为标准叫法。
②输入滤波和边沿检测
③捕获通道

如果输入的是PWM信号,TI1FP1作为触发信号,TI1FP1检测的是周期信号,TI1FP2检测的是占空比。
PWM只能使用通道1和2。
④预分频器
1-ICx 的输出信号会经过一个预分频器,用于决定发生多少个事件时进行一次捕获。
2-具体的由寄存器 CCMRx 的位 ICxPSC 配置,如果希望捕获信号的每一个边沿,则不分频。
⑤捕获寄存器

5-输出比较
CNT计数器
CCR输出比较寄存器
ARR自动重装载寄存器

①输出比较寄存器
②死区发生器
带死区插入的半桥驱动电路,放大电流,驱动电机。右边两个mos管控制电机正反转,当上面的mos管截止时,下面的mos管导通。上面mos不能马上关掉,下面的又导通,电源和地会通。所以需要死区时间。

死区时间取决于MOS管生产工艺,死区时间大小由BDTR寄存器的位DTG[7:0]配置。
6-断路功能
输入捕获和输出比较的应用
输入捕获
1、测量脉宽和频率

先设置上升沿中断,value1位0,再设置下降沿中断,得到value1的值。value1就是脉宽。
设置上升沿中断,不设置下降沿中断,再次上升沿中断时,value1的值就是频率的值。
2、PWM输入模式

只有通道1和通道2捕获。
TI1-》TI1FP1-》IC1频率
TI1-》TI1FP2-》IC2脉宽
输出比较
1-输出比较模式总共有 8 种,常用的是PWM模式。
2-由寄存器 CCMRx 的位 OCxM[2:0]配置
PWM输出模式
PWM 输出就是对外输出脉宽(即占空比)可调的方波信号,信号频率由自动重装寄存器 ARR 的值决定,占空比由比较寄存器 CCR 的值决定。

有效:高电平;无效:低电平
断路功能,未介绍,用到时候在说。
PWM输出的边沿对齐 VS 中心对齐(不是关键,用到再说)
1-根据CNT的计数方向,PWM波形分成边沿对齐和中心对齐两种。边沿对齐主要用于直流电机,中心对齐主要用于交流电机。
2-边沿对齐时,CNT只工作在递增或者递减。
3-中心对齐时,CNT工作在递增和递减。
STM32高级定时器笔记-TIM
高级定时器功能
1-计数器16bit,上/下/两边 计数,TIM1和TIM8,还有一个重复计数器RCR,独有。
2-有4个GPIO,其中通道1~3还有互补输出GPIO
3-时钟来自PCLK2,为72M,可实现1~65536分频
(TM2~TM7时钟来自PCLK1)
4-高级定时器功能 :定时、输出比较(pwm)、输入捕获(脉冲宽度,pwm输入)、断路输入、互补输出。
高级定时器功能框图

1-时钟源
内部时钟源CK_INT 内部时钟源来自RCC的TIMx_CLK 外部时钟模式1—外部的GPIO Tix(x=1 2 3 4)

①时钟信号输入引脚
1-外部的GPIO TIx,对应:TIMx_CH1/2/3/4
2-TIM_CCMRx 的位 CCxS[1:0]配置引脚,其中 CCMR1 控制 TI1/2, CCMR2 控制 TI3/4
②滤波器
由TIMx_CCMRx 的位 ICxF[3:0]配置
③边沿检测
由 TIMx_CCER 的位 CCxP 和 CCxNP 配置,决定是上升沿有效还是下降沿有效。
④触发选择
当使用外部时钟模式 1 时,触发源有两个,一个是滤波后的定时器输入 1( TI1FP1)和滤波后的定时器输入 2( TI2FP2)。由 TIMx_SMCR 的位 TS[2:0]配置用哪一个定时器输入。
⑤从模式选择
把信号连接到 TRGI 引脚,让触发信号成为外部时钟模式 1 的输入,最终等于 CK_PSC,然后驱动计数器 CNT 计数,具体的配置TIMx_SMCR 的位 SMS[2:0]为 000 即可选择外部时钟模式 1。
⑥使能计数器
使能计数器开始计数,外部时钟模式 1 的配置就算完成,使能计数器由 TIMx_CR1 的位 CEN 配置。
外部时钟模式2—外部的GPIO ETR

①时钟信号输入引脚
时钟信号来自于定时器的特定输入通道 TIMx_ETR,只有 1 个。
②外部触发极性
来自 ETR 引脚输入的信号可以选择为上升沿或者下降沿有效,具体的由 TIMx_SMCR的位 ETP 配置。
③外部触发预分频器
由于 ETRP 的信号的频率不能超过 TIMx_CLK( 180M)的 1/4,当触发信号的频率很高的情况下,就必须使用分频器来降频,具体的由 TIMx_SMCR 的位 ETPS[1:0]配置。
④滤波器
具体的由 TIMx_SMCR 的位 ETF[3:0]配置,其中的 fDTS 是由内部时钟 CK_INT 分频得到,具体的由 TIMx_CR1 的位CKD[1:0]配置。
⑤从模式选择
经过滤波器滤波的信号连接到 ETRF 引脚后,触发信号成为外部时钟模式 2 的输入,最终等于 CK_PSC,然后驱动计数器 CNT 计数,具体的配置 TIMx_SMCR 的位 ECE 为 1即可选择外部时钟模式 2。
⑥使能计数器
使能计数器开始计数,外部时钟模式 2 的配置就算完成,使能计数器由 TIMx_CR1 的位 CEN 配置。
内部触发输入
1-内部触发输入是使用一个定时器作为另一个定时器的预分频器。硬件上高级控制定时器和通用定时器在内部连接在一起,可以实现定时器同步或级联。
2- 由TIMx_SMCR 的位 TS[2:0]配置。
2-控制器
1-控制器就是用来控制的,发送命令的
2-CR1、CR2、SMCR、CCER,主要学习这几个寄存器即可。
3-时基

1-16位的预分频器 PSC,PSC
2-16位的计数器CNT, CNT
3-16位的自动重装载寄存器ARR,ARR
4-8位的重复计数器RCR,RCR(高级定时器独有)
4-输入捕获
输入捕获的原理
一个脉冲信号,上升沿时,计数器CNT开始计数;下降沿时,产生中断,将CNT的值锁存到输入捕获寄存器CCR中,CCR的值即为高电平的时间。

①输入通道
当使用需要被测量的信号从定时器的外部引脚 TIMx_CH1/2/3/4 进入,通常叫 TI1/2/3/4,在后面的捕获讲解中对于要被测量的信号我们都以 TIx 为标准叫法。
②输入滤波和边沿检测
③捕获通道

如果输入的是PWM信号,TI1FP1作为触发信号,TI1FP1检测的是周期信号,TI1FP2检测的是占空比。
PWM只能使用通道1和2。
④预分频器
1-ICx 的输出信号会经过一个预分频器,用于决定发生多少个事件时进行一次捕获。
2-具体的由寄存器 CCMRx 的位 ICxPSC 配置,如果希望捕获信号的每一个边沿,则不分频。
⑤捕获寄存器

5-输出比较
CNT计数器
CCR输出比较寄存器
ARR自动重装载寄存器

①输出比较寄存器
②死区发生器
带死区插入的半桥驱动电路,放大电流,驱动电机。右边两个mos管控制电机正反转,当上面的mos管截止时,下面的mos管导通。上面mos不能马上关掉,下面的又导通,电源和地会通。所以需要死区时间。

死区时间取决于MOS管生产工艺,死区时间大小由BDTR寄存器的位DTG[7:0]配置。
6-断路功能
输入捕获和输出比较的应用
输入捕获
1、测量脉宽和频率

先设置上升沿中断,value1位0,再设置下降沿中断,得到value1的值。value1就是脉宽。
设置上升沿中断,不设置下降沿中断,再次上升沿中断时,value1的值就是频率的值。
2、PWM输入模式

只有通道1和通道2捕获。
TI1-》TI1FP1-》IC1频率
TI1-》TI1FP2-》IC2脉宽
输出比较
1-输出比较模式总共有 8 种,常用的是PWM模式。
2-由寄存器 CCMRx 的位 OCxM[2:0]配置
PWM输出模式
PWM 输出就是对外输出脉宽(即占空比)可调的方波信号,信号频率由自动重装寄存器 ARR 的值决定,占空比由比较寄存器 CCR 的值决定。

有效:高电平;无效:低电平
断路功能,未介绍,用到时候在说。
PWM输出的边沿对齐 VS 中心对齐(不是关键,用到再说)
1-根据CNT的计数方向,PWM波形分成边沿对齐和中心对齐两种。边沿对齐主要用于直流电机,中心对齐主要用于交流电机。
2-边沿对齐时,CNT只工作在递增或者递减。
3-中心对齐时,CNT工作在递增和递减。
举报