📄 km6.c
字号:
//P1口接了8个发光二极管,在外部中断0上接了一个按键。
//要求开始工作时8个发光二极管全亮,当按键按下时,8
//个二极管全熄灭,并且二极管D1~~D8依次的亮(每次亮
//一个),亮到D8时又从D1开始。当再次按下键时,发光
//二极管立即按D8~~D1的顺序依次亮,亮到D1时又从D8开
//始。
#include<at89x52.h>
void initi(void)
{P1=0xff;
IT0=1;
EX0=1;
EA=1;}
void lamp(void) interrupt 0
{
EA=0;
P2_0=~P2_0;
}
delay()
{unsigned char i,j;
for(i=0;i<255;i++)
for(j=0;j<255;j++);
}
main()
{unsigned char k=0xfe,a,b;
initi();
while(1)
{if(P2_0==0)
{while(1)
{P1=k;
delay();
a=k<<1;
b=k>>7;
k=a|b;
EA=1;
if(P2_0==1){k=0xfe;
while(1)
{P1=k;
delay();
a=k>>1;
b=k<<7;
k=a|b;
EA=1;}};
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -