STM32通用定时器中断详解——想要分享的小白(以c8t6定时器为例)

本次博客以正点原子战舰资料以及STM32中文参考资料为主要参考。
本次博客主要讲解通用定时器中断,先讲解一下相关概念,然后在进行代码的实现。

**

通用定时器工作过程:

**(在定时器中断中,我们只是用到了定时器的时基单元)
在这里插入图片描述
**

时钟源

**
在介绍时基单元之前,我们还需要了解时钟源。从通用定时器的工作过程图我们可以看到,定时器的时钟来源有很多。而我们常用的便是来自RCC的TIMxCLK。
通用定时器是挂载在APB1总线上的,APB1的时钟最高为36MHZ。
在这里插入图片描述
这里的 CK_INT时钟是从 APB1 倍频的来的,除非 APB1 的时钟分频数设置为 1,否则通用定时器 TIMx 的时钟是 APB1时钟的2倍。
在这里插入图片描述
在这里插入图片描述
由STM32时钟系统框图以及默认调用SystemInit函数情况下,我们可以得出:CK_INT时钟为72MHz。即通用定时器的时钟频率是 72MHz。
**

时基单元

**

知道了时钟源后我们在来看时基单元。(大家在看下面概念的时候结合上面的图会更好的理解。)
时基单元包含:
● 预分频器寄存器 (TIMx_PSC)
● 计数器寄存器(TIMx_CNT)
● 自动装载寄存器 (TIMx_ARR)

1.TIMx_PSC预分频器可以将计数器的时钟频率按1到65536之间的任意值分频。
2.计数器由预分频器的时钟输出CK_CNT驱动 。
3.自动装载寄存器是预先装载的, 当计数器达到溢出条件(向下计数时的下溢条件) 产生更新事件。Arr的重装周期是1~65535。
**

计数器模式

**
计数器模式有三种,分别是:向上计数,向下计数,向上向下计数

  • 8
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值