打印
[AVR单片机]

初学AVR mega16问题忘各位大神指点

[复制链接]
1240|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
agz1989|  楼主 | 2013-10-22 21:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
外部中断按下按钮之后没中断
以下是硬件电路


#include "mega16.h"
#define uchar unsigned char
#define button1 PIND.2
#define button2 PIND.3
#define sounder PORTD.0
int a;
flash uchar tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
                         0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
                         0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
                         0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};  
flash uchar tab2[]={0xf0,0x0f,0xf0,0x0f,0xf0,0x0f};
void delay (int k)
{
int i,j;
for(i=0;i<k;i++)
    for(j=0;j<1140;j++);
}

interrupt[EXT_INT0]void int0()
{
int i;  
for(i=0;i<500;i++)
   {
    sounder=1;
    delay(2);
    sounder=1;
    delay(2);
   }
}
interrupt[EXT_INT1]void int1()
{
int i,j;
a++;
#asm("sei")
if(a%2==0)
   {
    for(i=0;i<6;i++)
       {
        tab2[i];
        delay(5);
       }
   }   
else   
     for(j=0;j<24;j++)
       {
        tab[j];
        delay(5);
       }
   
}

void main()
{

DDRC=0xff;
PORTC=0xff;
DDRD=0xf3;
PORTD=0xff;
MCUCR=0x0a;
GICR=0xc0;
#asm("sei")
while(1)
{
  PORTC=0xff;
  delay(500);
  PORTC=0x00;
  delay(500);  
}
}

QQ截图20131022215617.jpg (175.77 KB )

QQ截图20131022215617.jpg

相关帖子

沙发
qin552011373| | 2013-10-24 13:30 | 只看该作者
开发环境都没写,还有你是怎么调试的,问问题的方法也不对

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

45

帖子

1

粉丝