STM32F103定时器中断(库函数)

三种定时器

在这里插入图片描述

定时器的时基

计数器寄存器(TIMx_CNT)、预分频器寄存器(TIMx_PSC)、自动转载寄存器(TIMx_ARR)。可通过配置这三个寄存器可配置计数周期。
在这里插入图片描述
参考stm32中文手册
1.CNT_EN在TIMx_CR1寄存器 的最低位当高电平时将定时器使能。
在这里插入图片描述
2.预分频寄存器(TIMx_PSC)。该寄存器用设置对时钟进行分频,然后提供给计数器,作为计数器的时钟。
在这里插入图片描述
这里的 CK_INT时钟是从 APB1 倍频的来的,除非 APB1 的时钟分频数设置为 1,否则通用定时器 TIMx 的时钟是 APB1 时钟的 2 倍。

3.状态寄存器(TIMx_SR)。该寄存器用来标记当前与定时器相关的各种事件/中断是否发生。置1时代表发生
在这里插入图片描述
4.自动重装载寄存器(TIMx_ARR),该寄存器在物理上实际对应着 2 个寄存器。一个是程序员可以直接操作的,另外一个是程序员看不到的,这个看不到的寄存器在《STM32参考手册》里面被叫做影子寄存器。事实上真正起作用的是影子寄存器。根据 TIMx_CR1 寄存器中 APRE 位的设置:APRE=0 时,预装载寄存器的内容可以随时传送到影子寄存器,此时 2者是连通的;而 APRE=1 时,在每一次更新事件(UEV)时,才把预装在寄存器的内容传送到影子寄存器。
在这里插入图片描述
5.计算公式
时钟频率公式:CK_CNT = fCK_PSC/(PSC[15:0]+1) (在默认情况下fCK_PSC为72MHz,AHB时钟=72M,APB1时钟=3M,所以APB1的分频系数=AHB/APB1=2,所以,通用定时器时钟CK_INT=36M2=72M)
时间公式:T = (PSC[15:0]+1)
( ARR[15:0]+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值