目的:單片機上電后,顯示流水燈,按下按鍵后小燈全亮,然后返回主函數,繼續顯示流水燈。
目前問題:按下按鍵后,小燈全亮,但松開按鍵后小燈還是保持全亮,沒有恢復中斷前的狀態。
請問這是什么原因導致,以下是代碼
#include <reg52.h>
#include <intrins.h>
#define LED P0
sbit K1=P3^2;
int a;
void delay(ms)
{
int i;
while(ms--)
{
for (i=0;i<100;i++)
{
;
}
}
}
void zhongduan()
{
EA=1;
EX0=1;
}
void main()
{
a=0;
zhongduan();
LED=0xfe;
delay(200);
while(1)
{
for(a=0;a<7;a++)
{
LED=_crol_(LED,1);
delay(250);
}
for(a=0;a<7;a++)
{
LED=_cror_(LED,1);
delay(250);
}
}
}
void init0() interrupt 0
{
if(K1==0)
{
delay(10);
if(K1==0)
{
LED=0x00;
delay(200);
}
}
}
|