STM32基本定时器TIM6和TIM7

1. STM32上定时器的分类

前面学习了STM32系统定时器SysTick,它的主要作用是为OS提供系统滴答,当然我们也可以利用它实现了精准延时。在STM32单片机中,除了属于CM3内核中的一个外设的系统定时器外,还有几个属于片上外设的定时器:基本定时器(TIM6和TIM7)、通用定时器(TIM2/3/4/5)和高级定时器(TIM1和TIM8)。强调,这里指的是除互联型的STM32F1系列单片机。
这里写图片描述

它们各自具有的功能特点可以详见《STM32中文参考手册_V10.pdf》-P298,这里简单描述:
(1)基本定时器(TIM6和TIM7):16位的只能向上计数的定时器,只能实现定时,没有外部IO通道与它关联。
(2)通用定时器(TIM2/3/4/5):16位的可向上或者向下、向上/向下的定时器,除了能实现定时功能,还可以实现输入捕获、输出比较功能(PWM),每个定时器有4个外部IO通道与它关联。
(3)高级定时器(TIM1和TIM8):16位的可向上或者向下、向上/向下的定时器,除了能实现定时功能,还可以实现输入捕获、输出比较功能(PWM)、输出互补等专用功能,每个定时器有4个外部IO通道与它关联。
这里写图片描述

今天先学习基本定时器。
个人在学习定时器时的想法:定时超时能产生中断信号,本能反应,它涉及到中断编程就有可能涉及到设置NVIC(中断源优先级相关)和EXTI(外部中断/事件线EXTI0/1…/15相关),在前面实现SysTick定时编程中,由于SysTick并非片上外设所以并不需要设置NVIC,而STM32中非SysTick的定时器都属于片上外设,所以自然是要设置NVIC;EXTI是设置外部中断/事件线的,它必须关联于某个对应的IO引脚,在SysTick定时编程中不需要设置,在这里同样不需要设置。

2. 基本定时器的时基

定时器的基本功能是定时,定时的核心则是时基,看基本定时器的框图,
这里写图片描述

2.1 时钟源CK_INT

定时器的学习,从时钟源说起,也就是图中的TIMxCLK。在时钟树中,
这里写图片描述
定时器2~7的时钟源是这样确定的:如果PCLK1的预分频系数为1,则它们的时钟源为PCLK1,否则它们的时钟源为PCLK1的2倍。PCLK1在前面的配置中,已经将APB1的预分频系数设置为2,即PCLK1为36MHz,所以定时器2~7的时钟源 = TIMxCLK = 72MHz。

2.2 计数器时钟CK_CNT

TIMxCLK经过PSC预分频器之后为CK_INT,作为CNT计数器的计数时钟。PSC可以对定时器时钟TIMxCLK进行1~65535之间任何一个数进行分频,CK_CNT = TIMxCLK / (PSC + 1)。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值