按五次led亮,再按五次led闪烁,在按五次led灭
#include"reg52.h"
#define uint unsigned int
#define uchar unsigned char
uint i;
void delay (uint z)
{
uchar x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
IE=0x81;//开总中断,外部0中断开启
IT0=1; //下降沿触发
P1=0xff;//关闭所有LED
if(i==5)
{
P1=0xfe;
} //按5次 一个led发光
if(i==10)
{
while(1)
{
P1=0xff;
delay(1000);
P1=0xfe;
delay(1000);
}
} //按10次闪烁
if(i==5)
{
P1=0xfe;
} //再按5次关闭所有led
}
void INT0_1() interrupt 0 //外部中断触发事件
{
i++;
}
我感觉就是if那里有问题 可是又不知道 用proteus仿真 一点反应没有 电路在附件
我是新手 能说详细一些么? 谢谢了 |