【STM32】TIM定时器

介绍:

定时器由可编程预分频器驱动的16位自动装载计数器构成。

定时器最基本功能:定时

  • 定时发送 USART 数据
  • 定时采集 AD 数据等

定时器与 GPIO 结合

  • 测量输入信号脉冲宽度
  • 产生输出波形 等

TIM定时器功能

通用 TIMx (TIM2 TIM3 TIM4 TIM5) 定时器功能包括:
16 位向上、向下、向上 / 向下自动装载计数器
16 位可编程 ( 可以实时修改 ) 预分频器,计数器时钟频率的分频系数为 1 65536 之间的任意数值
4 个独立通道: 输入捕获 输出比较 ─ PWM 生成 ( 边缘或中间对齐模式 ) ─ 单脉冲模式输出
使用外部信号控制定时器和定时器互连的同步电路
如下事件发生时产生中断 /DMA 更新:计数器向上溢出 / 向下溢出,计数器初始化 ( 通过软件或者内部 / 外部触发 ) ─ 触发事件 ( 计数器启动、停止、初始化或者由内部 / 外部触发计数 ) ─ 输入捕获 输出比较
支持针对定位的增量 ( 正交 ) 编码器和霍尔传感器电路
触发输入作为外部时钟或者按周期的电流管理

TIM1 TIM8 高级 定时器相对通用 TIMx 有的功能:
死区时间可编程的互补输出
允许在指定数目的计数器周期之后更新定时器寄存器的重复计数器
刹车输入信号可以将定时器输出信号置于复位状态或者一个已知状态
 如下事件发生时产生中断 /DMA 更新:计数器向上溢出 / 向下溢出,计数器初始化 ( 通过软件或者内部 / 外部触发 ) ─ 触发事件 ( 计数器启动、停止、初始化或者由内部 / 外部触发计数 ) ─ 输入捕获 输出比较 刹车信号输入
TIM6 TIM7 基本 定时器的主要功能包括:
16 位自动重装载累加计数器
16 位可编程 ( 可实时修改 ) 预分频器,用于对输入的时钟按系数为 1 65536 之间的任意数值分频
触发 DAC 的同步电路 : 此项是 TIM6/7 独有功能 .
在更新事件 ( 计数器溢出 ) 时产生中断 /DMA 请求

ARR重装载:

 定时时间:计数一周期所用的时间

定时频率:时钟源频率/ [(ARR+1(PSC+1)]

TIM定时器设置:

定时器主从模式配

时钟来源:

1.内部时钟

2.外部触发输入(TIM2,3,4)

4个独立通道,可用于:

A.输入捕获

B.输出比较

C.PWM生成

D.单脉冲模式输出

TIM参数设置:

PSC分频系数
计数模式
ARR自动重装载值
CKD时钟分频因子
重复计数
自动重装载

定时频率=时钟源频率/ [(PSC+1)(ARR+1)]=72MHz/[(71+1)(999+1)]=1000Hz

所以定时的时间为1s/1000Hz=1ms.

中央对齐模式1 计数器交替地向上和向下计数。只在计数器向下计数时输出比较中断标志位
中央对齐模式2 计数器交替地向上和向下计数。只在计数器向上计数时输出比较中断标志位
中央对齐模式3 计数器交替地向上和向下计数。计数器向下和向上计数时输出比较中断标志位

 

NIVC设置:

更新中断:

计数器向上溢出/向下溢出,计数器初始化

 中断回调函数和使能函数:

 

  • 0
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值