【精品】第七讲AVR单片机定时器、计数器.ppt

【精品】第七讲AVR单片机定时器、计数器.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七讲 AVR定时器/计数器 黄文恺 1.定时与计数原理 计数原理(溢出、比较匹配) 定时原理 事件捕获原理 PWM 原理(下节课内容) 计数原理(1) 计数原理(2) 定时原理 事件捕获原理 2.ATmega16定时/计数器资源 T/C的预分频器 8位定时/计数器T/C0、T/C2 T/C2的异步操作 PWM模式下的T/C0、T/C2(下节课内容) 16位定时/计数器T/C1 PWM模式下的T/C1(下节课内容) T/C1、0的预分频器 8位定时/计数器T/C0、T/C2(1) OC开头的功能引脚都具备定时器和计数器功能。 8位定时/计数器T/C0、T/C2(2) ATmega16的8位定时/计数器用户可以控制: T/C2的异步操作 16位定时/计数器T/C1 如同8位的定时/计数器,ATmega16的16位定时/计数器T/C1用户也是可以控制的: 3. 8位定时/计数器应用举例 T/C2用作实时时钟 T/C0作定时器 T/C2用作实时时钟 应用课题1:利用定时器T/C2的实时 时钟晶振,产生1s断, 并在PD7引脚输出0.5Hz 的方波。 T/C0作定时器 应用课题2:使用定时器T/C0的内部 时钟晶振,产生1ms中 断, 并扩展成1s定时信 号,每秒钟使PA.5的状 态改变1次。 课堂练习 请使用3.2768M晶振,使用定时器1的CTC模式来进行计数。分频数为1024,请设计OCR1A输出周期为0.5S的方波,和OCR1B输出周期为0.25s的方波.(接LED灯). 设计思想 定时器时间常数的计算: 系统时钟4.000MHz,64分频62.5kHz作为定时器计数脉冲频率。 定时计数器加1的时间为1/62.5=0.016ms, 定时1ms,需要计数1/0.016=62.5。使用定时器CTC工作方式,比较值应置为62即0x3E或63即0x63。1ms的定时有误差。 从1ms到1s: 1s=1000ms,在1ms的中断程序中设计一计数器jishu,当jishu=1000时,时间即为1s。 程序设计与分析 #include <mega16.h> #include <macros.h> int jishu=0; #pragma interrupt_handler Int_TCCR0: 20 void Int_TCCR0(void){ jishu++; if(jishu==1000) {PORTA =PORTA^0 jishu=0; } } void main(void) { PORTA=0x00; DDRA=0xFF; TCCR0=0x0B; TCNT0=0x00; OCR0=0x3E; TIMSK=0x02; SEI(); while (1) { }; } //应该定义成 int,不能定义成 char //计数器jishu加1 //当jishu=1000,表明1s时间到 //按课题要求输出 //jishu清“0”,很重要 //定义PA口输出 //CTC模式,系统频率64分频,OC0引脚断开 //1ms定时的比较值 //T/C0比较匹配中断开放 //总中断开放 * * 0xF5 计数——对外部事件进行统计,外部事件以输入有效 脉冲来表示。 计数器 溢出标志TF 初 值 中断请求 外部脉冲 0xF5 0xF5 1 S1 S2 0xF6 0xF7 0xF8 0xF9 0xFA 0xFB 0xFC 0xFD 0xFE 0xFF 0 中断开放 中断响应后溢出标志清“0” 当检测到有有效脉冲输入时,计数寄存器加1 启动计数器工作 当计数器计数溢出时的标志 初值寄存器作为计数器回0时的初始值 单片机的计数器用户是可以控制的(可编程的),包括计数器的启动、计数脉冲的有效方式、计数器的初值、计数溢出中断请求开放或禁止等。 0xFD 0xFF 0xFE 计数器 0xFA 0xF8 0xF9 0xFB 0xFC 初 值 比值寄存器 比较器 S1 S2 溢出标志TF 外部脉冲 比较匹配标志 S3 0xF8 计数器输出 OC触发 0xFC 0xF8 1 0xF9 1 0xFA 0xFB 中断请求2 中断请求1 0 定时——当计数器的计数脉冲频率恒定时,计数器所 记录的数值及代表了时间的概念。 定时功能是通过计数

文档评论(0)

精品天地 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档