最近在搞AVR-ATMEGA16,关于定时器溢出的问题请教下。

使用的是16位定时器1,TCNT1H=0Xfe;TCNT1L=0X6f;TCCR1B=0X05;这样的话定时器就应该可以开始计时了吧,我没开中断,但是为什么while(1... 使用的是16位定时器1,
TCNT1H = 0Xfe;
TCNT1L = 0X6f;
TCCR1B = 0X05;
这样的话定时器就应该可以开始计时了吧,我没开中断,但是为什么while(1)中一直检测不到TIFR的bit(2)溢出置位呢?
请教了!
展开
 我来答
百度网友5a45a47
2013-12-04 · TA获得超过136个赞
知道答主
回答量:71
采纳率:0%
帮助的人:63.9万
展开全部
我试了下,可以啊;
#include<iom16v.h>
void main()
{DDRA=0XFF;
TCNT1H = 0Xfe;
TCNT1L = 0X6f;
TCCR1B = 0X05;
while(1)
{if(TIFR&0X04)
{PORTA=0XFF;
TCNT1H = 0Xfe;
TCNT1L = 0X6f;
TIFR=0X00;}
else
PORTA=0X00;
}
}
fgale
2013-12-05 · TA获得超过1450个赞
知道小有建树答主
回答量:1857
采纳率:50%
帮助的人:537万
展开全部
中断寄存器设置了么?TIMSK = 0x04; //timer interrupt sources
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式