单元四---定时器计数器应用.pptVIP

  1. 1、本文档共87页,可阅读全部内容。
  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文档。上传文档
查看更多

任务二定时器3实现LED周期性闪烁三、相关知识定时器3和定时器4的所有定时器功能都是基于8位计数器建立的。计数器在每个时钟边沿递增或递减。活动时钟边沿的周期由寄存器位CLKCONCMD.TICKSPD[2:0]定义,由TxCTL.DIV[2:0](其中“x”指的是定时器号码3或4)设置的分频器值进一步划分。计数器可以作为一个自由运行计数器、倒计数器、模计数器或正计数/倒计数器运行。用户可以通过SFR寄存器TxCNT读取8位计数器的值,其中x指的是定时器号码,3或4。清除和停止计数器是通过设置TxCTL控制寄存器的值实现的。当TxCTL.START写入1时,计数器开始工作。当TxCTL.START写入0时,计数器停留在当前值。任务二定时器3实现LED周期性闪烁三、相关知识1.定时器/计数器定时器3和定时器4都是8位定时器,可用于PWM控制。每个定时器有两个独立的比较通道,每个通道上使用一个I/O引脚。任务二定时器3实现LED周期性闪烁四、任务实施2.工作模式CC2530的定时器3和定时器4都具备“自由运行”、“模”、“正计数/倒计数”和“倒计数”4种不同的工作模式。任务二定时器3实现LED周期性闪烁四、任务实施2.工作模式(1)自由运行模式在自由运行模式下,计数器从0x00开始,每个活动时钟边沿递增。当计数器达到0xFF,计数器载入0x00,并继续递增。当达到最终计数值0xFF(如,发生了一个溢出),就设置中断标志TIMIF.TxOVFIF。如果设置了相应的中断屏蔽位TxCTL.OVFIM,就产生一个中断请求。自由运行模式可以用于产生独立的时间间隔和输出信号频率。任务二定时器3实现LED周期性闪烁四、任务实施2.工作模式(2)模模式在模模式下,8位计数器从0x00启动,在每个活动时钟边沿递增。当计数器达到寄存器TxCC0所包含的最终计数值时,计数器复位到0x00,并继续递增。当发生这个事件时,设置标志TIMIF.TxOVFIF。如果设置了相应的中断屏蔽位TxCTL.OVFIM,就产生一个中断请求。模模式可以用于周期不是0xFF的应用。任务二定时器3实现LED周期性闪烁四、任务实施2.工作模式(3)正计数/倒计数模式在正计数/倒计数模式下,计数器反复从0x00开始正计数,直到达到TxCC0所含的值,然后计数器倒计数,直到达到0x00。这个定时器模式用于需要对称输出脉冲,且周期不是0xFF的应用。因此它允许中心对称的PWM输出应用程序的实现。任务二定时器3实现LED周期性闪烁四、任务实施2.工作模式(4)倒计数模式在倒计数模式下,定时器启动后,计数器载入TxCC0的内容。然后计数器倒计时,直到0x00时,设置TIMIF.TxOVFIF。如果设置了相应的中断屏蔽位TxCTL.OVFIM,就产生一个中断请求。倒计数模式一般用于需要事件超时间隔的应用。任务二定时器3实现LED周期性闪烁四、任务实施1.任务设计思路设置定时器3分频系数设置定时器3最大计数值使能定时器3相关中断使能系统总中断为定时器3选择工作模式(启动定时器3工作)图4.8定时器3初始化步骤任务二定时器3实现LED周期性闪烁四、任务实施1.任务设计思路图4.9定时器3中断处理函数的处理流程清除定时器1的中断标志位记录时间中断处理函数开始到达0.5s?到达1s?熄灭LED1清零时间记录点亮LED1处理函数结束任务二定时器3实现LED周期性闪烁四、任务实施2.初始化定时器3(1)设置定时器3的分频系数定时器3的计数信号来自CC2530内部系统时钟信号的分频,可选择1、2、4、8、16、32、64或128分频。定时器3采用8位计数器,最大计数值为0xFF,即255。系统不配置工作时钟时,默认为2分频,即16MHz的RC振荡器。设定定时器3的分频系数需要使用T3CTL寄存器,通过设置DIV[7:5]3位的值为定时器选择分频系数。T3CTL寄存器的描述如表4.8所示。任务二定时器3实现LED周期性闪烁表4.8T3CTL(T3控制寄存器)寄存器的描述定时器工作模式设置。00:自由运行模式(自动重装0x00~0xFF)。01:倒计数模式(从T3CC0~0x00计数一次)。10:模模式(反复从0x00~T3CC0计数)。11:正计数/倒计数模式(反复从0x00~T3CC0计数,再从T3CC0~0x00计数)。R/W0MODE[1:0]1:0清除计数器,写1到CLR复位计数器到0x00,并初始化相关通道所有的输出引脚。R0/W10

文档评论(0)

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

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

1亿VIP精品文档

相关文档