网站大量收购闲置独家精品文档,联系QQ:2885784924

最全面的AVRmega16定时计数器的学习笔记.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最全面的AVRmega16定时计数器的学习笔记课件

定时计数器学习笔记 ATmega16一共配置了2个8位和1个16位,共3个定时计数器,它们是8位的定时计数器T/C0、T/C2和16位的定时计数器T/C1。 一、学习和使用定时计数器时,必须注意以下的基本要素: 1、脉冲信号源。脉冲信号源是指输入到定时计数器的计数脉冲信号。通常用于定时计数器计数的脉冲信号可以由外部输入引脚提供,也可以由单片机内部提供。 2、计数器类型。计数器类型是指计数器的计数运行方式,可分为加一(减一)计数器,单程计数或双向计数等。 3、计数器的上下限。计数器的上下限指计数单元的最小值和最大值。一般情况下,计数器的下限值为零,上限值为计数单元的最大计数值,即255(8位)或65535(16位)。需要注意的是,当计数器工作在不同模式下时,计数器的上限值并不都是计数单元的最大计数值255或65535,它将取决于用户的配置和设定。 4、计数器的事件。计数器的事??指计数器处于某种状态时的输出信号,该信号通常可以向MCU申请中断。如当计数器计数到达计数上限值255时,产生“溢出”信号,向MCU申请中断。 二、8位定时计数器T/C0、T/C2 T/C0、T/C2的特点: (1) 单通道计数器。 (2) 比较匹配时清零计数器(自动重装特性,Auto Reload)。 (3) 可产生无输出抖动(glitch-free)的,相位可调的脉宽调制(PWM)信号输出。 频率发生器。 外部事件计数器(仅T/C0)。 带10位的时钟预分频器。 溢出和比较匹配中断源(TOV0、OCF0和TOV2、OCF2)。 允许使用外部引脚的32kHz手表晶振作为独立的计数时钟源(仅T/C2)。 寄存器 TCNT0——TC0计数寄存器 TCNT0是T/C0的计数值寄存器。写TCNT0寄存器将在下一个定时器时钟周期中阻塞比较匹配。因此,在计数器运行期间修改TCNT0的内容,有可能将丢失一次TCNT0与OCR0的匹配比较操作 OCR0——输出比较寄存器 8位寄存器OCR0中的数据用于同TCNT0寄存器中的计数值进行匹配比较。在T/C0运行期间,比较匹配单元一直将寄存器TCNT0的计数值同寄存器OCR0的内容进行比较。一旦TCNT0的计数值与OCR0的数据匹配相等,将产生一个输出比较匹配相等的中断申请,或改变OC2(PD7)的输出逻辑电平。 3、TIMSK——定时计数器中断屏蔽寄存器 位76543210$39($0059)OCIE2TOIE2TICIE1OCIE1AOCIE1BTOIE1OCIE0TOIE0TIMSK读/写R/WR/WR/WR/WR/WR/WR/WR/W初始化值00000000OCIE2(OCIE0):T/C2(T/C0)输出比较匹配中断允许标志位。当OCIE2(OCIE0)被设为“1”,且状态寄存器中的I位被设为“1”时,将使能T/C2(T/C0)的输出比较匹配中断。若在T/C2(T/C0)上发生输出比较匹配,即OCF2=1(OCF0=1)时,则执行T/C2(T/C0)输出比较匹配中断服务程序TOIE2(TOIE0):T/C2(T/C0)溢出中断允许标志位当TOIE2(TOIE0)被设为“1”,且状态寄存器中的I位被设为“1”时,将使能T/C2(T/C0)溢出中断。若在T/C2(T/C0)上发生溢出,即TOV2=1(TOV0=1)时,则执行T/C2(T/C0)溢出中断服务程序。 TIFR——定时计数器标志寄存器 位76543210$38($0058)OCF2TOV2ICF1OCF1AOCF1BTOV1OCF0TOV0TIFR读/写R/WR/WR/WR/WR/WR/WR/WR/W初始化值00000000OCF2(OCF0):T/C2(T/C0)比较匹配输出的中断标志位当T/C2(T/C0)输出比较匹配成功,即TCNT2=OCR2(TCNT0=OCR0)时,OCF2(OCF0)位被设为“1”。当转入T/C2(T/C0)输出比较匹配中断向量执行中断处理程序时,OCF2(OCF0)由硬件自动清零。写入一个逻辑“1”到OCF2(OCF0)标志位将清除该标志位。当寄存器SREG中的I位、OCIE2(OCIE0)以及OCF2(OCF0)均为“1”时,T/C2(T/C0)的输出比较匹配中断被执行。TOV2(TOV0):T/C2(T/C0)溢出中断标志位当T/C2(T/C0)产生溢出时,TOV2(TOV0)位被设为“1”。当转入T/C2(T/C0)溢出中断向量执行中断处理程序时,TOV2(TOV0)由硬件自

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档