STM32之定时器

一、简介

STM32F4xx系列共有14个定时器,其中2个高级定时器、10个通用定时器、2个基本定时器。下图

为各定时器及其功能。

图1.各定时器及其功能

二、定时器的计数模式

向上计数模式:计数器从0计数到自动加载值(TIMx_ARR),然后重新从0开始计数并且产生一个计数器溢出事件。

向下计数模式:计数器从自动装入的值(TIMx_ARR)开始向下计数到0,然后从自动装入的值重新开始,并产生一个计数器向下溢出事件。

三、时基单元

图2.各个定时器所挂载在总线上的情况

定时器的时钟源:定时器TIM2~TIM5和TIM12~14挂接在APB1上,定时器TIM1和TIM8~TIM11挂接在APB2上,若外部晶振的频率为8MHz,则系统默认的时钟频率为72MHz(即AHB=72MHz)。若将APB1预分频器的分频系数设置为2,则PCLK1=36MHz。由图2可以看出,若APB1预分频系数不等于1,则定时器TIM2~TIM7的时钟频率是APB1频率的2倍,即TIM2~TIM7的时钟频率 TIMxCLK=(AHB/2)x2=72MHz;若APB2预分频系数设置为1,则PCLK2=72MHz,TIM1和TIM8 的时钟频率 TIMxCLK=72MHz。

定时器的时基单元:

图3.

预分频器(PSC):一般为16位,对时钟源CK_PSC的时钟频率进行分频,输出的脉冲供计数器计数。

自动重装寄存器(ARR):用于装载计数器的最大计数值。

计数器(CNT):当计数值达到自动重装寄存器(ARR)所设定的值时,会产生溢出事件,如果使能了中断功能,就会溢出一个中断,再由自动重装寄存器进行重新加载或更新。

定时时间的计算公式:定时时间=(ARR+1)*(PSC+1)/输入时钟频率。

四、输入捕获

输入捕获可以用于捕获外部事件(如对输入信号的上升沿、下降沿或者双边沿进行捕获),常用于测量输入信号的的脉宽和测量PWM输入信号的频率和占空比。

五、输出比较

用于控制输出信号的波形,当计数器的值与捕获/比较寄存器的值相等时,输出比较做出相应的电平变化。

相关推荐
czhaii16 小时前
STM32中的位带(bit-band)操作
单片机
嵌入式-老费18 小时前
esp开发与应用(DS18B20温度传感器)
单片机·嵌入式硬件
szxinmai主板定制专家19 小时前
基于ZYNQ MPSOC图像采集与压缩系统总体设计方案
linux·arm开发·人工智能·嵌入式硬件·fpga开发
Jonathan_LF19 小时前
DMA使用心得-STM32
stm32·单片机·嵌入式硬件
国科安芯20 小时前
ASM232S抗辐照RS-232收发器的技术架构与空间环境适应性研究
单片机·嵌入式硬件·安全·架构·安全性测试
嵌入式小站21 小时前
STM32 零基础可移植教程 07:USART 串口打印,从 CubeMX 配置到 printf 输出
stm32·单片机·嵌入式硬件
都在酒里21 小时前
STM32矩阵按键详解——4×4行列扫描与非阻塞消抖(硬件总结六)
stm32·嵌入式硬件·矩阵
都在酒里1 天前
STM32有限状态机(FSM)详解,综合应用总结(二)
stm32·单片机·嵌入式硬件·状态机
嵌入式-老费1 天前
esp开发与应用(继电器的使用)
单片机·嵌入式硬件
CPETW1 天前
RS-232 Sniffer 嗅探器 ---- UNI-T电子负载通讯协议抓取-A
网络·科技·stm32·单片机·嵌入式硬件·电子