AVR单片机定时器计数器一Word下载.docx
《AVR单片机定时器计数器一Word下载.docx》由会员分享,可在线阅读,更多相关《AVR单片机定时器计数器一Word下载.docx(4页珍藏版)》请在冰豆网上搜索。
![AVR单片机定时器计数器一Word下载.docx](https://file1.bdocx.com/fileroot1/2022-10/30/f0f1810b-f414-48c9-8d0f-09344b5ed254/f0f1810b-f414-48c9-8d0f-09344b5ed2541.gif)
定时计数中断屏蔽寄存器,TIFR:
定时计数器中断标志寄存器,ASSR:
异步状态寄存器,
SFIOR:
特殊功能寄存器
T/C0相关寄存器:
TCCR0
:
控制寄存器,TCNT0:
计数寄存器,OCR0:
输出比较寄存器
T/C1相关寄存器:
TCCR1A,TCCR1B:
控制寄存器,TCNT1(TCNT1H,TCNT1L)计数寄存器,OCR1A,OCR1B:
输出比较寄存器,
ICR1:
输入捕捉寄存器
T/C2相关寄存器:
TCCR2:
控制寄存器,
TCNT2:
计数寄存器,OCR2:
输出比较寄存器,
溢出中断:
以定时器/计数器T/C0为例,T/C0为8位定时器,计数范围为十六进制0x00-0xFF,对应的十进制为0-255,由0开始计数,
当计数值超过255时就产生一个中断,中断标准寄存器TIFR的TOV0(T/C0的溢出标准位)置1。
比较中断:
当T/C0的计数寄存器TCNT0的数值,和预置的OCR0的数值一致时,将产生一个比较中断,中断标志寄存器TIFR的
OCF0(T/C0的比较中断标志位)置1。
T/C0溢出中断使能过程:
1、中断总使能:
SREG=0x80;
2、T/C0的溢出中断使能:
将中断使能寄存器的T/C0溢出中断使能位TOIE0置1,c语言:
TIMSK|=0x01;
当产生溢出中断时,硬件自动将中断标志寄存器TIFR的TOVO(T/C0溢出中断标志)位置1,用于软件查询判断,执行完中断处理程序后,由硬件自动清0。
普通模式:
普通模式(WGM01:
0=0)为最简单的工作模式。
在此模式下计数器不停地累加。
计到8比特的最大值后(TOP=0xFF),
由于数值溢出,计数器简单地返回到最小值0x00重新开始
CTC(比较匹配时清0定时器):
在CTC模式(WGM01:
0=2)下OCR0寄存器用于调节计数器的分辨率。
当计数器的数值TCNT0等于
OCR0时计数器清零。
OCR0定义了计数器的TOP值,亦即计数器的分辨率。
快速PWM:
快速PWM模式(WGM01:
0=3)可用来产生高频的PWM波形。
快速PWM模式与其他PWM模式的不同之处是其单斜坡
工作方式。
计数器从BOTTOM计到MAX,然后立即回到BOTTOM重新开始
相位修正PWM:
相位修正PWM模式(WGM01:
0=1)为用户提供了一个获得高精度相位修正PWM波形的方法。
此模式基于双斜坡
操作。
计时器重复地从BOTTOM计到MAX,然后又从MAX倒退回到BOTTOM。
定时器/计数器的工作必须指定时钟源,无时钟源定时器不能工作。
时钟源有内部时钟源和外部时钟源,由CS02,CS01,CS00位选择。
外部时钟源由T0引脚输入。
OC0为T/C0的输出引脚,即设置当TNCT0和OCR0数值相等时,外部输出引脚OC0上的电平变化。
TCNT0-计数寄存器:
通过它寄存器可以直接对计数器的8位数据进行读写访问。
OCR0-输出比较寄存器
包含一个8位的数据,不间断地与计数器数值TCNT0进行比较。
匹配事件可以用来产生输出比较中断,
或者用来在OC0引脚上产生波形。
小企鹅diy科学探究学习网
更多相关文章转到:
文章分类下的单片机