




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AVR定时器/计数器
2/4/20231自动化学院定时与计数原理计数原理(溢出、比较匹配)定时原理事件捕获原理PWM原理
2/4/20232自动化学院0xF5计数原理(1)计数——对外部事件进行统计,外部事件以输入有效脉冲来表示。计数器溢出标志TF初值中断请求外部脉冲0xF50xF51S1S20xF60xF70xF80xF90xFA0xFB0xFC0xFD0xFE0xFF0中断开放中断响应后溢出标志清“0”当检测到有有效脉冲输入时,计数寄存器加1启动计数器工作当计数器计数溢出时的标志初值寄存器作为计数器回0时的初始值单片机的计数器用户是可以控制的(可编程的),包括计数器的启动、计数脉冲的有效方式、计数器的初值、计数溢出中断请求开放或禁止等。2/4/20233自动化学院0xFD0xFF0xFE计数器0xFA0xF80xF90xFB0xFC初值计数原理(2)比值寄存器比较器S1S2溢出标志TF外部脉冲比较匹配标志S30xF8计数器输出OC触发0xFC0xF810xF910xFA0xFB中断请求2中断请求102/4/20234自动化学院定时原理定时——当计数器的计数脉冲频率恒定时,计数器所记录的数值及代表了时间的概念。定时功能是通过计数器的计数来实现的。计数器溢出标志TF初值中断请求外部时钟源S1S2S0用于选择内部/外部时钟源S0内部时钟源定时器的工作原理与计数器相同,只是要求用于计数的脉冲,其频率恒定。单片机的定时器用户是可以控制(可编程)的。2/4/20235自动化学院事件捕获原理捕获寄存器捕获标志ICF捕获事件S1S3S0计数时钟源闸门电路计数器溢出标志TFS2中断请求2中断请求1计数器的工作原理与前述相同0x800x810x820x830x840x850x860x870x880x890x8A闸门电路0x8810x8B0x8C0x8E0x8F02/4/20236自动化学院PWM输出原理与方法PWM输出的最大特点是波形的频率恒定,波形的占空比D却可以改变。占空比的改变很具有实际意义,例如小功率直流电机的驱动与调速,其方法就是控制电机电枢电压接通和断开的比值来驱动电机和改变电机的转速,这种方法称为脉宽调速法。2/4/20237自动化学院PWM原理框图如下图所示:2/4/20238自动化学院定时器/计数器以一定的频率上、下计数,即计数器从00H~FFH(假设定时器/计数器为8位)进行计数,然后计数器反向从FFH~00H进行计数,如此反复。当计数器中的数值与比较寄存器中的数值相等时,比较器的输出按PWM预定的规律输出一系列的脉冲波,如图所示。2/4/20239自动化学院AVR单片机的定时器计数器工作原理AVR单片机的定时器计数器的特点AVR单片机的定时器计数器控制寄存器AVR单片机的定时器计数器定时和计数方法AVR单片机的定时器计数器应用实例2/4/202310自动化学院定时计数器概述
学习和使用定时计数器时,必须注意以下的基本要素:
定时计数器的长度:定时计数器的长度一般为8位或16位。
脉冲信号源:脉冲信号源是指输入到定时计数器的计数脉冲信号。通常用于定时计数器计数的脉冲信号可以由外部输入引脚提供,也可以由单片机内部提供。
计数器类型:计数器类型是指计数器的计数运行方式,可分为加(减)计数器,单程计数或双向计数等。2/4/202311自动化学院
计数器的上下限:计数器的上下限指计数单元的最小值和最大值。一般情况下,计数器的下限值为零,上限值为计数单元的最大计数值,即255(8位)或65535(16位)。需要注意的是,当计数器工作在不同模式下时,计数器的上限值并不都是计数单元的最大计数值255或65535,它将取决于用户的配置和设定。
计数器的事件:计数器的事件指计数器处于某种状态时的输出信号,该信号通常可以向MCU申请中断。如当计数器计数到达计数上限值255时,产生“溢出”信号,向MCU申请中断。2/4/202312自动化学院8位定时计数器的结构与寄存器配置ATmega16中有两个8位的定时计数器:T/C0、T/C2,它们都是通用的多功能定时计数器,其主要特点是:单通道计数器。比较匹配时清零计数器(自动重装特性)。可产生无输出抖动的,相位可调的脉宽调制(PWM)信号输出。频率发生器。外部事件计数器(仅T/C0)。带10位的时钟预分频器。溢出和比较匹配中断源(TOV0、OCF0和TOV2、OCF2)。允许使用外部引脚的32kHz手表晶振作为独立的计数时钟源(仅T/C2)。2/4/202313自动化学院一、8位T/C01、T/C0的组成结构图1为8位T/C0的硬件结构框图。图中给出了MCU可以操作的寄存器以及相关的标志位。在T/C0中,可操作的8位寄存器有:计数寄存器TCNT0输出比较寄存器OCR0T/C0的控制寄存器TCCR0中断标志寄存器TIFR定时器中断屏蔽寄存器TIMSKT/C0的计数器事件输出信号有两个,计数器计数溢出TOV0比较匹配相等OCF0。2/4/202314自动化学院图18位T/C0的结构框图2/4/202315自动化学院
T/C0的时钟源
T/C0的计数时钟源可由来自外部引脚T0的信号提供,也可来自芯片的内部。图2为T/C0时钟源部分的内部功能图。
T/C0计数时钟源的选择使用系统内部时钟源使用外部时钟源图2T/C0的时钟源与10位预定比例分频器2/4/202316自动化学院当定时计数器使用外部时钟作为计数源时,通常作为计数器使用,用于记录外部脉冲的个数。图3为外部时钟源的检测采样逻辑功能图。图3T/C0外部时钟检测采样逻辑功能图2/4/202317自动化学院
T/C0的计数单元
T/C0的计数单元是一个可编程的8位双向计数器,图4是它的逻辑功能图,图中符号所代表的意义如下:计数(count) TCNT0加1或减1。方向(direction) 加或减的控制。清除(clear) 清零TCNT0。计数时钟(clkT0) C/T0时钟源顶部值(TOP) 表示TCNT0计数值到达上边界。底部值(BOTTOM) 表示TCNT0计数值到达下边界(零)。图4T/C0计数单元逻辑功能图2/4/202318自动化学院输出比较单元图5为T/C0的输出比较单元逻辑功能图。在T/C0运行期间,比较匹配单元一直将寄存器TCNT0的计数值同寄存器OCR0的内容进行比较(硬件进行自动比较处理)。图5T/C0输出比较单元逻辑功能图2/4/202319自动化学院强制输出比较:工作于非PWM模式时,可以通过对强制输出比较位FOC0写”1”的方式来产生比较匹配。强制比较匹配不会置位OCF0标志,也不会重载/清零定时器,但是OC0引脚将被更新,好象真的发生了比较匹配一样。
使用输出比较单元:
通过写TCNT0寄存器屏蔽比较匹配事件:
2/4/202320自动化学院比较匹配输出单元标志位COM0[1:0]有两个作用:定义OC0的输出状态,以及控制外部引脚OC0是否输出OC0寄存器的值。图6为比较匹配输出单元的逻辑图。图6T/C0比较匹配输出单元逻辑图2/4/202321自动化学院2、与T/C0相关的寄存器T/C0计数寄存器—TCNT02/4/202322自动化学院输出比较寄存器—OCR02/4/202323自动化学院定时计数器中断屏蔽寄存器—TIMSK2/4/202324自动化学院定时计数器中断标志寄存器—TIFR2/4/202325自动化学院T/C0控制寄存器—TCCR02/4/202326自动化学院2/4/202327自动化学院2/4/202328自动化学院3、8位T/C0的工作模式T/C0的控制寄存器TCCR0的标志位WGM0[1:0]和COM0[1:0]的组合构成T/C0的四种工作模式以及OC0不同方式的输出。
普通模式(WGM0[1:0]=0)普通模式是T/C0最简单和基本的一种工作方式。T/C0工作在普通模式下时,计数器为单向加1计数器,一旦寄存器TCNT0的值到达0xFF(上限值),在下一个计数脉冲到来时便恢复为0x00,并继续单向加1计数。当TCNT0由0xFF转变为0x00的同时,溢出标志位TOV0置位为“1”,用于申请T/C0溢出中断。一旦MCU响应T/C0的溢出中断,硬件则将自动把TOV0清零。2/4/202329自动化学院比较匹配清零计数器CTC模式(WGM2[1:0]=2)
T/C0工作在CTC模式下时,计数器为单向加1计数器,一旦寄存器TCNT0的值与OCR0的设定值相等(此时寄存器OCR0的值为计数上限值),就将计数器TCNT0清零为0x00,然后继续向上加1计数。通过设置OCR0的值,可以方便地控制比较匹配输出的频率,也方便了外部事件计数的应用。图7为CTC模式的计数时序图。2/4/202330自动化学院快速PWM模式(WGM0[1:0]=3)
T/C0工作在快速PWM模式可以产生较高频率的PWM波形。当T/C0工作在此模式下时,计数器为单程向上的加1计数器,从0x00一直加到0xFF(上限值),在下一个计数脉冲到来时便恢复为0x00,然后再从0x00开始加1计数。在设置正向比较匹配输出(COM0[1:0]=2)方式中,当TCNT0的计数值与OCR0的值相同匹配时清零OC0,当计数器的值由0xFF返回0x00时置位OC0。而在设置反向比较匹配输出(COM0[1:0]=3)方式中,当TCNT0的计数值与OCR0的值相同匹配时置位OC0,当计数器的值由0xFF返回0x00时清零OC0。2/4/202331自动化学院2/4/202332自动化学院相位可调PWM模式(WGM0[1:0]=1)
相位可调PWM模式可以产生高精度相位可调的PWM波形。当T/C0工作在此模式下时,计数器为双程计数器:从0x00一直加到0xFF,在下一个计数脉冲到达时,改变计数方向,从0xFF开始减1计数到0x00。设置正向比较匹配输出(COM0[1:0]=2)方式:在正向加1过程中,TCNT0的计数值与OCR0的值相同匹配时清零OC0;在反向减1过程中,当计数器TCNT0的值与OCR0相同时置位OC0。设置反向比较匹配输出(COM0[1:0]=3)方式:在正向加1过程中,TCNT0的计数值与OCR0的值相同匹配时置位OC0;在反向减1过程中,当计数器TCNT0的值与OCR0相同时清零OC0。2/4/202333自动化学院2/4/202334自动化学院4、8位T/C0的计数工作时序图10、图11、图12和图13给出了T/C0在同步工作情况下的各种计数时序,同时给出标志位TOV0和OCF0的置位条件。图中MAX=0xFF,BOTTOM=0x00,TOP=[OCRn]。图10T/C0计数时序(无预分频)图11T/C0计数时序,带1/8预分频2/4/202335自动化学院
图12T/C0计数时序,OCFn置位,带1/8预分频(CTC模式除外)图13T/C0计数时序,OCFn置位,带1/8预分频(CTC模式)2/4/202336自动化学院二、16位定时计数器T/C1的应用ATmega16的T/C1是一个16位的多功能定时计数器,图14为该16位定时计数器的结构框图。其主要特点有:真正的16位设计。2个独立的输出比较匹配单元。双缓冲输出比较寄存器。一个输入捕捉单元。输入捕捉噪声抑制。比较匹配时清零计数器(自动重装特性,AutoReload)。可产生无输出抖动(glitch-free)的,相位可调的脉宽调制(PWM)信号输出。周期可调的PWM波形输出。频率发生器。外部事件计数器。带10位的时钟预分频器。4个独立的中断源(TOV1、OCF1A、OCF1B、ICF1)。2/4/202337自动化学院1、T/C1的组成结构图14中给出了MCU可以操作的寄存器以及相关的标志位,TCNT1、OCR1A、OCR1B、ICR1为16位的寄存器。计数器寄存器TCNT1;输出比较寄存器OCR1A、OCR1B;输入捕捉寄存器ICR1;T/C1所有的中断请求信号TOV1、OC1A、OC1B、ICF1可以在定时计数器中断标志寄存器TIFR找到;而在定时器中断屏蔽寄存器TIMSK中,可以找到与它们对应的4个相互独立的中断屏蔽控制位TOIE1、OCIE1A、OCIE1B和TICIE1;TCCR1A、TCCR1B为2个8位寄存器,是T/C1的控制寄存器;T/C1的时钟源的选择由T/C1的控制寄存器TCCR1B中的3个标志位CS1[2:0]确定,共有8种选择。
2/4/202338自动化学院图14T/C1结构图(图中n为1)2/4/202339自动化学院2、16位定时器计数器T/C1增强功能介绍与8位T/C0、T/C2相比,T/C1的功能主要表现在以下几个方面。16位的计数器
由于T/C1是16位的计数器,因此它的计数宽度、计时长度大大增加,配合一个独立的10位预定比例分频器,在系统时钟为4Mh条件下,16位的T/C1最高计时精度为0.25us,而最长的时宽可达到16.777216秒(精度为256us),这是其它的8位单片机所做不到的。16位寄存器的读写操作步骤16位寄存器的读操作16位寄存器的写入操作2/4/202340自动化学院更加强大和完善的PWM功能
T/C1配备了2个比较匹配输出单元OC1A、OC1B和比较匹配寄存器OCR1A、OCR1B。同时它的PWM模式,有多种不同的计数器上限(TOP)值可供选择,因此T/C1的PWM功能具备以下特点:可产生频率、相位均可调整的PWM波可同时产生2路不同占空比的PWM波输入捕捉功能
T/C1的输入捕捉功能是AVR定时计数器的另一个非常有特点的功能。T/C1的输入捕捉单元,如图15所示,可应用于精确捕捉一个外部事件的发生,记录事件发生的时间印记(Time-stamp)。捕捉外部事件发生的触发信号由引脚ICP1输入,或模拟比较器的AC0单元的输出信号也可作为外部事件捕获的触发信号。2/4/202341自动化学院图15T/C1的外部事件输入捕捉单元(n为1)2/4/202342自动化学院3、T/C1的控制寄存器说明
T/C1控制寄存器—TCCR1A2/4/202343自动化学院2/4/202344自动化学院2/4/202345自动化学院
T/C1控制寄存器—TCCR1B2/4/202346自动化学院2/4/202347自动化学院T/C1数据寄存器—TCNT1A(TCNT1H与TCNT1L)TCNT1H与TCNT1L组成了T/C1的数据寄存器TCNT1。通过它们可以直接对定时器/计数器单元的16位计数器进行读写访问。为保证CPU对高字节与低字节的同时读写,必须使用一个8位临时高字节寄存器TEMP。
2/4/202348自动化学院输出比较寄存器1A-OCR1AH与OCR1AL输出比较寄存器1B-OCR1BH与OCR1BL2/4/202349自动化学院输入捕捉寄存器1-ICR1H与ICR1LT/C1中断屏蔽寄存器-TIMSK2/4/202350自动化学院2/4/202351自动化学院T/C中断标志寄存器-TIFR2/4/202352自动化学院三、利用定时器实现发光管闪烁的实例本实例利用16位定时器/计数器的定时功能,在固定的时间间隔内使单片机的输出端口翻转,从而产生一定脉冲宽度的方波,如果控制输出端口翻转次数,就产生预计数量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第1章 信息时代-信息与信息技术 第2节 信息技术及其发展 教学设计 2023-2024学年河大版(2023)初中信息技术第一册
- 采购成本降低方案计划
- 儿童肥胖的生理影响及治疗
- 全球化背景下的营养与健康
- 班级文化建设的实践与探索计划
- 企业创新文化的构建与传承
- 全民健身战略在公共空间的应用推广研究
- 2024年高考数学专项复习:椭圆(解析版)
- 找规律(单元测试)-2024-2025学年六年级数学下册 人教版
- 企业合并报表的数字化处理技术
- 浙江省衢州市各县区乡镇行政村村庄村名居民村民委员会明细
- 初中英语《Unit5-Do-you-remember-what-you-were-doing》教学课件设计
- 品德家庭小账本
- 症状性大脑中动脉慢性闭塞血管内开通治疗课件
- 大象版科学四年级下册第一单元测试卷(含答案)
- 苏教版一年级数学下册第二单元《认识图形(二)》教材分析(定稿)
- 小学班会课件-端午节主题班会(共19张PPT)通用版 PPT课件
- 约等于计算题100道乘除法
- 水泵站工程施工设计方案
- 新闻类文体的翻译(课堂PPT)
- 员工年终述职报告工作总结PPT模板
评论
0/150
提交评论