05_STM32F4通用定时器详细讲解.docxVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
05_STM32F4通用定时器详细讲解

STM32F4系列共有14个定时器,功能很强大。14个定时器分别为: 2个高级定时器:Timer1和Timer8 10个通用定时器:Timer2~timer5 和 timer9~timer14 2个基本定时器: timer6和timer7 本篇欲以通用定时器timer3为例,详细介绍定时器的各个方面,并对其PWM功能做彻底的探讨。 Timer3是一个16位的定时器,有四个独立通道,分别对应着PA6 PA7 PB0 PB1 主要功能是:1输入捕获——测量脉冲长度。 2 输出波形——PWM输出和单脉冲输出。 Timer3有4个时钟源: 1:内部时钟(CK_INT),来自RCC的TIMxCLK 2:外部时钟模式1:外部输入TI1FP1与TI2FP2 3:外部时钟模式2:外部触发输入TIMx_ETR,仅适用于TIM2、TIM3、TIM4,TIM3,对应着PD2引脚 4:内部触发输入:一个定时器触发另一个定时器。 时钟源可以通过TIMx_SMCR相关位进行设置。这里我们使用内部时钟。 SYSCLK(最高168MHz) AHB_Prescaler APBx_Prescaler /1,2,..512 HCLK /1,2,4.. APB1orAPB2 APB1orAPB2 定时器时钟 1 APBx_precaler=1 2 APBx_precaler!=1 定时器挂在高速外设时钟APB1或低速外设时钟APB2上,时钟不超过内部高速时钟HCLK,故当APBx_Prescaler不为1时,定时器时钟为其2倍,当为1时,为了不超过HCLK,定时器时钟等于HCLK。 例如:我们一般配置系统时钟SYSCLK为168MHz,内部高速时钟 AHB=168Mhz,APB1欲分频为4,(因为APB1最高时钟为42Mhz),那么挂在APB1总线上的timer3时钟为84Mhz。 《STM32F4xx中文参考手册》的424~443页列出与通用定时器相关的寄存器一共20个, 以下列出与Timer3相关的寄存器及重要寄存器的简单介绍。 1 TIM3 控制寄存器 1 (TIM3_CR1) 作用:1使能自动重载TIM3_ARR 2定时器的计数器递增或递减计数。 3 事件更新。 4 计数器使能 2 TIM3 控制寄存器 2 (TIM3_CR2) 3 TIM3 从模式控制寄存器 (TIM3_SMCR) 4 TIM3 DMA/中断使能寄存器 (TIM3_DIER) 作用:1:使能事件更新中断 2:使能捕获/比较中断 5 TIM3 状态寄存器 (TIM3_SR) 1:事件更新中断标志 2:捕获/比较中断标志 6 TIM3 事件生成寄存器 (TIM3_EGR) 7 TIM3 捕获/比较模式寄存器 1 (TIM3_CCMR1) 1:输出比较模式 2:输出比较预装载使能,即使能后可以随时改变TIM3 捕获/比较寄存器 1 (TIM3_CCR1)的值 3:捕获/比较选择 8 TIM3 捕获/比较模式寄存器 2 (TIM3_CCMR2) 9 TIM3 捕获/比较使能寄存器 (TIM3_CCER) 1:上升沿触发or下降沿触发 2:捕获/比较输出使能 10 TIM3 计数器 (TIM3_CNT) 11 TIM3 预分频器 (TIM3_PSC) 计数器时钟频率 CK_CNT 等于 fCK_PSC / (PSC[15:0] + 1)。 12 TIM3 自动重载寄存器 (TIM3_ARR) 当自动重载值为空时,计数器不工作 难道说每次事件都必须装载重载值? 13 TIM3 捕获/比较寄存器 1 (TIM3_CCR1) 输出时:CCR1是捕获/比较寄存器的预装载值,由TIM3_CCMR的OC1PE位使能。 输入时:CCR1为上一个输入捕获事件(IC1)发生时的计数器值。 14 TIM3 捕获/比较寄存器 2 (TIM3_CCR2) 15 TIM3 捕获/比较寄存器 3 (TIM3_CCR3) 16 TIM3 捕获/比较寄存器 4 (TIM3_CCR4) 1 Timer3用来做定时中断 与之相关的时基单元寄存器有 10 TIM3 计数器 (TIM3_CNT) 11 TIM3 预分频器 (TIM3_PSC) 12 TIM3 自动重载寄存器 (TIM3_ARR) 原理: 这里以向上计数为例,即计数器TIM3_CNT向上计数,当达到TIM3_ARR所设定的值时,归零重新计数,若使能了更新中断,则在TIM3_CNT归零时,进入中断。 进入中断的时间为 (TIM3_ARR+1)个计时器周期 而计

文档评论(0)

youshen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档