STM32F407定时器基础知识

基本定时器(TIM6 TIM7)

通用计时器(TIM2~TIM5 TIM9~TIM14)

高级控制定时器(TIM1 TIM8)

定时器之间彼此独立,不共享任何资源。

一、基本定时器

STM32F407定时器基础知识_第1张图片

1. 组成

(1)时钟源

时钟源频率=APB1总线时钟频率× 倍频器系数

APB1预分频器系数=1->倍频器系数=1

APB1预分频器系数≥2->倍频器系数=2

APB1总线频率42MHz

(2)控制器

控制定时器复位、使能、计数、触发DAC转换。

DAC:数模转换器

将输入的数字量转换为与数字量成比例的模拟量

(3)时基单元

有效数字16位,范围0~65535

(1)计数器寄存器 TIMx_CNT 

          递增计数器

          使能计数器:CEN位置1

          每来一个脉冲CNT值加1

(2)自动重载寄存器 TIMx_ARR

(3)预分频数寄存器 TIMx_PSC

          可以在运行过程中修改数值,下一个更新事件中使用新值

          输入CK_PSC来源内部时钟CK_INT

          输出CK_CNT为计数器实际计数时钟

          实际计数时钟计算公式:

f_{CK\_CNT}=\frac{f_{CK\_PSC}}{PSC[15:0]+1}

影子寄存器

不可直接访问。
预分频器寄存器只缓存数据,数值放到影子寄存器后才起作用。

在ARR寄存器中
APRE=0 新写入ARR寄存器的值马上进入影子寄存器
APRE=1 新写入ARR寄存器的值更新后进入影子寄存器

更新事件

1. 软件产生:TIMx_EGR寄存器的UG位置1,更新事件后硬件将UG位清零。

2. 硬件产生:计数器的值等于自动装载寄存器影子寄存器的值,CNT值清零同时更新事件。

2. 寄存器

(1)控制寄存器 TIMx_CR1

位0 CEN 计数器使能
位7 ARPE ARR寄存器是否缓冲

(2)状态寄存器 TIMx_SR

位0 UIF 更新中断标志位,硬件置1,软件清零
——0:未发生更新
——1:进入中断服务函数

(3)计数器寄存器 TIMx_CNT

(4)预分频寄存器 TIMx_PSC

(5)自动重载寄存器 TIMx_ARR

二、通用计时器

定时器类型 定时器 计数器位数 计数模式 预分频系数 产生DMA请求 捕获/比较通道 互补输出 接口最大时钟(MHz) 定时器最大时钟(MHz)
通用计时器

TIM2

TIM5

32

递增

递减

中央对齐

1~65536 0 42 84

TIM3

TIM4

16

递增

递减中央对齐

1~65526 4 42 84
TIM9 16 递增 1~65536 × 2 84 168

TIM10

TIM11

16 递增 1~65536 × 1 84 168
TIM12 16 递增 1~65536 × 2 42 84

TIM13

TIM14

16 递增 1~65536 × 1 42 84

STM32F407定时器基础知识_第2张图片

 1. 组成

(1)时钟源

四选一:

内部时钟(TIMx_INT)

TIM2~TIM5、TIM12~TIM14挂载在APB1总线上
TIM9~TIM11挂载在APB2总线上 APB2时钟频率为84MHz

外部时钟模式1:IO->TIMx_CH1/TIMx_CH2

外部时钟模式2:IO->TIMx_ETR

内部触发输入:使用一个定时器作为另一定时器的预分频器

(2)控制器

从模式控制器(计数器复位、启动、递增递减、计数)、编码器接口、触发控制器

(3)时基单元

计数器寄存器(计数模式:递增递减中心对齐)、预分频寄存器、自动重载寄存器

(4)输入捕获

TIMx_CH1~TIMx_CH4是定时器的四个通道,IO端口通过复用与通道连接。输入捕获部分可以捕获信号边沿。

(5)输出比较

2. 寄存器

(1)控制寄存器1 TIMx_CR1

位7     ARPE
位6:5  CMS 中心对齐模式选择
位4     DIR 方向
    ——0:递增
    ——1:递减
位0 CEN

(2)从模式控制寄存器 TIMx_SMCR

位2:0 SMS 从模式选择

(3)DMA/中断使能寄存器 TIMx_DIER

位0 UIE 更新中断使能

(4)捕获/比较模式寄存器1 TIMx_CCMR1

(5)捕获/比较使能寄存器 TIMx_CCER

(6)捕获/比较寄存器1 TIMx_CCR1

位15:0 CCR1[15:0] 捕获/比较值

三、高级控制寄存器

STM32F407定时器基础知识_第3张图片

1. 组成

(1)重复计数器

定时器上溢或下溢一次重复计数器值减1,值为0后再次上溢或下溢产生更新时间。

具有影子寄存器。

(2)输出比较

多了带死区控制的互补功能,可以不使用。

(3)断路功能

也称刹车。断路源可以是刹车输入引脚,也可以是时钟失败时间。

2. 寄存器

(1)控制寄存器 TIMx_CR1

(2)捕获/比较模式寄存器1/2 TIMx_CCMR1/2

(3)捕获/比较使能寄存器 TIMx_CCER

(4)事件产生寄存器 TIMx_EGR 产生软件更新器事件

位0:控制位

(5)重复计数器寄存器 TIMx_RCR

(6)断路和死区寄存器 TIMx_BDTR

位15 MOE 主输出使能

你可能感兴趣的:(stm32,嵌入式硬件,单片机)