本帖最后由 一屡星辰 于 2013-5-3 09:49 编辑
AVR Atmega 88 timer1 普通计数模式下 如何去抖动?在ctc模式下如何设置才能进中断,ctc模式下是进捕捉中断吗?
timer1 CTC模式初始化:
{
TCCR1A=0x00; //设置为CTC ICR1模式
TCCR1B |= (1<<WGM12)|(1<<WGM13)|(1<<CS10)|(1<<CS11)|(1<<CS12); //开启外部T1时钟,开启输入捕捉口的噪声抑制器 外部计数
TIMSK1 |= (1 << ICIE1); //输入捕捉使能
TCNT1=0; //计数初值
ICR1=10;//TOP值为10
SREG_Bit7=0x01; //I 全局中断使能
}
中断服务为:
#pragma vector=TIMER1_CAPT_vect//
__interrupt void InterruptTimer1A(void)
{
}
这样设置当计数值达到top值时ICF1会置位吗?能进中断吗?求高手指点。
|