STM32定时器功能概括

定时器分类

不同的芯片定时器的个数也是不同的,以STM32F103ZE有8个定时器(定时器的具体个数查相关手册)。
定时器的分类:高级定时器、通用定时器、基本定时器,这3类定时器的功能各不相同。

定时器种类位数定时器模式产生DMA请求捕获/比较通道互补输出特殊应用场景
高级定时器(TIM1,TIM8)16向上,向下,向上下可以4带死区控制盒紧急刹车,可应用于PWM控制
通用定时器(TIM2-TIM5)16向上,向下,向上下可以4通用。定时器计数,PWM输出,输入捕获,输出比较
基本定时器(TIM6,TIM7)16向上,向下,向上下可以4主要应用于驱动DAC

DMA(Direct Memory Access)即直接存储器访问,主要控制I/O设备与主存间交换信息。
PWM(Pulse Width Modulation)即脉冲宽度调制,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。
DAC即数/模转换器的简称,是将数字型号转换为模拟型号的一种装置。

通用定时器定时器功能

1)位于APB1总线上(使用前要使能APB1时钟)
2)16位向上、向下、向上/下计数模式,自动装载计数器(TIMx_CNT)
①向上计数模式:计数器从0计数到自动加载值(TIMx_ARR),然后重新开始从0开始计数并且产生一个计数器溢出事件。
在这里插入图片描述
②向下计数模式:计数器从自动加载值(TIMx_ARR)的值开始,然后计数到0并且产生一个计数器溢出事件。
在这里插入图片描述
③向上/向下计数模式(中央对齐模式):计数器从0开始计数到自动加载(TIMx_ARR)-1的值,产生一个计数器溢出事件,然后向下计数到1并且产生一个计数器溢出事件;然后再从0开始重新计数。
在这里插入图片描述

3)4个独立通道,通道功能:输入捕获、输出比较、PWM生成、单脉冲模式输出。
4)如下事假发生时产生中断/DMA(6个独立的IRQ/DMA请求生成器)
①更新:计数器溢出,计数器初始化
②触发事件(计数器启动、停止、初始化或者由内部/外部触发计数)
③输入捕获
④输出比较
5)单脉冲模式:单脉冲模式(OPM)是前述众多模式的一个特例。这种模式允许计数器响应一个激励,并在一个程序可控的延时之后,产生一个脉宽可程序控制的脉冲。
可以通过从模式控制器启动计数器,在输出比较模式或者PWM模式下产生波形。设置TIMx_CR1寄存器中的OPM位将选择单脉冲模式,这样可以让计数器自动地在产生下一个更新事件UEV时停止。

通用定时器工作过程:

在这里插入图片描述
通用定时器的时钟一共有4个:
1、来自RCC的TIMxCLK(内部时钟信号)
2、TIMx_ETR(外部时钟输入)
3、ITRx(来自其余定时器用于定时器的级联)
4、TIMx_CHx(外部通道)
这里的TIMx_ETR和TIMx_CHx都是实际引脚,但是TIMx_ETR是外部时钟的引脚,而TIMx_CHx是具有定时器功能的引脚。具体理解需要后面的深度学习,主要还是会使用来自RCC的内部时钟

在这里插入图片描述

输入捕获

捕获输入脉冲的上升沿和下降沿,一般常用来测量脉冲宽度。

输出比较

在规定的时间内,低电平和高电平的比例,就是脉冲波。假设定时器的模式为向上计数模式,TIMx_ARR=100在中间设置比较值为40,在0-40这段时间都是低电平41-100这段时间就是高电平,这样就可以形成脉冲波形。TIMx_ARR决定脉冲波形的频率,设置的中间的比较值决定脉冲波的占空比。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嘉鑫的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值