stm32(十二)通用定时器&输出PWM

1、STM32F407ZGT6的通用定时器&PWM输出简介

STM32F407ZGT6有高级定时器、通用用定时器、基本定时器,不管什么类型的定时器都有定时的功能,不管什么类型的定时器都有时基单元。通用定时有TIM2~TIM5,TIM9~TIM14。

通用定时器和基本定时器的最主要的区别是:是否有“捕获/比较通道”(capture/compare channels)。

“捕获/比较通道”顾名思义,可以是“输入捕获功能”,可以是“输出比较功能”,“捕获/比较通道”的功能只能是“捕获”或者“比较”两者一种。

2、PWM简介

占空比:IO口的输出脉冲的高电平时间宽度占整个脉冲周期的百分比。PWM的主要作用是调节占空比。

常见:手机背光调节、呼吸灯、手机马达震动强度调节。

3、STM32F407ZGT6的通用定时器TIM10/TIM11 和TIM13/TIM14的框图讲解

 

通用定时器TIM10/TIM11 和TIM13/TIM14 的时基单元和基本定时器一致,本章节主要分析“比较输出”功能,屏蔽掉了“捕获输入”部分的框图。

“捕获比较寄存器”也有“缓冲”。

PWM占空比调节就是属于“比较输出”中的一个功能,该功能的工作原理如下:

  • 提示:“捕获/比较寄存器1”对应下图的CCR1(capture/compare register 1),该寄存器是16位的。
  • CNT在时钟节拍的基础下进行自增,CNT的值小于CCR1的值时,输出一个“电平”。
  • CNT在时钟节拍的基础下进行自增,CNT的值大于等于CCR1的值时,输出一个“电平”。
  • CNT的值计数到ARR的值时,则溢出,从0开始从新计数自增。

总结1:“比较输出”就是CNT寄存器不断的和CCR1进行比较,同时和ARR进行比较,根据比较的结果,输出“相应的电平”。

总结2:通过调节ARR的值可以调节输出脉冲的脉冲周期

总结3:通过调节CCR1的值可以调节占空比

4、通用定时器TIM10/TIM11 和TIM13/TIM14的寄存器

通用定时器TIM10/TIM11 和TIM13/TIM14的CR1、CNT、PSC、ARR寄存器和基本定时器6/7的一样。

4.1、TIM10/11/13/14 状态寄存器 (TIMx_SR)

位 1 CC1IF   捕获/比较 1 中断标志 (Capture/compare 1 interrupt flag)

如果通道 CC1 配置为输出:
当计数器寄存器的值与捕获/比较寄存器的值匹配时,此标志由硬件置 1。但需要通过软件清零。
0:不匹配。
1: TIMx_CNT 计数器的值与 TIMx_CCR1 寄存器的值匹配。当 TIMx_CCR1 的值大于 TIMx_ARR的值时, CC1IF 位将在计数器发生上溢时变为高电平。

位 0 UIF  更新中断标志 (Update interrupt f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值