John_Diors 发表于 2013-4-2 22:52:57

atmega328 定时器溢出中断问题 求大神帮忙

板子是Aduino Duemilanove 芯片是Atmega328P
我想通过定时器0的溢出中断来控制13管脚的LED 1S交替闪烁
代码如下
int m=0;
int n=0;
void setup()
{
pinMode (13,OUTPUT);
TCCR0A = 0x00;
TCCR0B =0x04;
sei();
TIMSK0 =0x01;
TCNT0 =6;
}
#pragma interrupt_handler timer0_ovf_isr:17;
void timer0_ovf_isr(void)
{
n++;

TCNT0 =6;
if(n==1000)
{
if(m==0);
{
m=1;
digitalWrite(13,HIGH);
}
if(m==1);
{
m=0;
digitalWrite(13,LOW);
}
}
} void loop()
{
sei();
while(1);
}

上传到板子上 LED完全没有反应似乎中断服务程序没有被执行
求大神帮我看看我的程序那里错了感激不尽啊

John_Diors 发表于 2013-4-3 11:47:22

呃,是不是我的中断服务程序入口不对? 求大神帮忙看看啊感激不尽……

kitten2014 发表于 2014-2-14 22:57:34

John_Diors 发表于 2013-4-3 11:47 static/image/common/back.gif
**** 作者被禁止或删除 内容自动屏蔽 ****

你的这个问题可以参看下面这个帖子的内容。

新手请教关于定时器的问题
http://www.geek-workshop.com/thread-8610-1-1.html
页: [1]
查看完整版本: atmega328 定时器溢出中断问题 求大神帮忙