N32G003学习——第六章 第一节 TIM定时中断

学习来源:[6-1] TIM定时中断_哔哩哔哩_bilibili

介绍:

STM32功能最强大,结构最复杂的外设——定时器

本节主要内容:定时器的基本定时功能

定一个时间,让定时器每隔一个时间产生一个中断,实现每隔一段时间执行一段程序

官方说法:对输入的时钟进行计数,并在计数值达到设定值时触发中断

简称:定时触发中断

譬如:

stm32主频一般72HZ,我们对此计数72次,每次1MHz,实际每次就是1us的时间

若对此计数72000,每次1KMHz,实际每次就是1ms的时间

计数器:就是执行定时计数的一个寄存器,每来一个时钟,计数器加1

预分频器:可对计数器的时钟分频,我的理解是除它,可获得更长的定时

自动重载寄存器:计数的目标值,就是我需要计数多少个时钟才申请中断

这三个寄存器构成定时器核心的部分,称为:时基单元

个人理解:

设置目标值在自动重载寄存器,计数器不断计数,计数器达到目标值时候,触发中断
(51的是设置初始值,每次计数-1,减到0就产生中断,一开始搞混了。。。)

这种计数值等于自动重装值产生的中断,简称:更新中断

最大定时59.65s计算:

主频÷最大的计数器÷最大预分频 =1/ ( 72MHz÷65535÷65536 ) = 59.65 s
(65536是因为若预分频1是除2,则65535分频,其实是除65536

若嫌弃时间不够长:

STM32的定时器支持级联

一个个定时器连接起来,譬如两个定时器,最大定时时间59.65s x 65536 x 65536,几千年

定时器,很强大,有很多功能。本节不讲,后面章节陆续讲

学习顺序:

先学中等难度的通用定时器,之后学高等难度的高级,和学低等难度的基本,就很快了

定时器分类:

注释:
主模式触发:STM32的特点,能让内部的硬件,在不受程序的控制下,自行运行

定时器很多,项目上可变通使用。。。

还有TIM9 10 11,基本用不上,常用都是1到8

注意:

不同定时器,在不同的总线上,开启RCC时钟,记得选择对的总线

知识拓展:

STM32F103C8T6定时器的资源:TIM1,TIM2,TIM3,TIM4

一个高级,三个通用

所以说,要看用户手册,看看具体芯片有什么定时器可以用。。并不是1-8都有的

设计结构框图:

基本定时器

流程

(可以看完后面,再看流程,会有顿悟)

内部时钟→预分频器分频→计数器+1→计数达到自动重装载寄存器的目标值→产生中断和事件

强调:

主要看三大样:计数器CNT、预分频PSC、自动重装载寄存器ARR

这块简称:时基单元

基本计时器的时钟来源:内部时钟RCC_TIMxCLK (一般是系统的主频72MHz)

举例:

预分频器为0:不分频,经过分频器输出的频率为72MHz

预分频器为1:72MHz/2=36Mhz  

预分频器为2:72MHz/3=24Mhz

(分频1是除2,分频2是除3,以此类推。。)

分频系数:这里的0123
所以分频系数+1,才是实际的除数

举例:

计数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值