STM32-定时器专题讲解-定时器中断

发布时间:2024年01月16日

STM32通用定时器介绍

STM32F4定时器介绍

定时器计数模式

?向上计数模式

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

?向下计数模式

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

?中央对齐模式(向上/向下计数)

计数器从0开始计数到自动装入的值-1,产生一个计数器溢出事件,然后向下计数到1并且产生一个计数器溢出事件;然后再从0开始重新计数。

几种定时器功能比较

?基本定时器TIM功能

● 主要运用于定时计数以及驱动DAC

?通用定时器TIM功能

● 定时器定时计数

● 输入捕获

● 输出比较

●PWM输出

● 使用外部信号控制定时器和定时器互连的同步电路

?高级定时器TIM功能

● 通用定时器的有功能

● 带死区控制和紧急刹车,可用于PWM控制电机

定时器的时钟

定时器的时基部分

定时时间?????????1/(TIMxCLK/(PSC+1))*(ARR+1)

即:1/(定时器时钟源/分频系数)*自动重装载计数值

定时器输入捕获与输出比较

?输入捕获

输入捕获可以用来捕获外部事件,比如引脚的电平变化(上升沿,下降沿),并记录下变化的时间,通常可以用来测量外部信号的频率或者电平持续的时间

?输出比较

此项功能是用来控制一个输出波形,当计数器与捕获/比较寄存器的内容相同时,输出比较功能做出相应动作,比如电平的翻转。通常用于生产PWM波形

STM32定时器使用实例

?实验: 利用基本定时器实现定时1秒中断,并在中断处理函数中打印输出字符

先看使用的定时器挂载到哪个总线上,总线的时钟频率*2就是该定时器的频率

?时钟源:定时器时钟 TIMxCLK,即内部时钟 CK_INT,经 APB 预分频器后分频提供

?计数器时钟:定时器时钟经过 PSC 预分频器之后,即 CK_CNT,用来驱动计数器计数?计数器CNT:是一个 16 位/32的计数器

?自动重装载寄存器:这里面装着计数器能计数的最大数值。当计数到这个值的时候,如果使能了中断的话,定时器就产生溢出中断

?计时中断时间:1/(TIMxCLK/(PSC+1))*(ARR+1)

定时器CubeMX的配置

文章来源:https://blog.csdn.net/weixin_72238916/article/details/135609915
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。