满意答案
wxl1215
2013.11.11
采纳率:49% 等级:12
已帮助:17031人
#include
#define uchar unsigned char
#define uint unsigned int
uchar code seg1[]={ 0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00}; //控制字) 从左向右开始逐个点亮
uchar code seg2[]={ 0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff} ;//控制字(从 右向左LED发光二极管再逐个熄灭)//
uchar code seg3[]= {0x7e, 0x3c, 0x18,0x00,0xff,0x00,0xff}; //控制字(由两边到中间点亮再明暗2次)
sbit P2_0=P2^0;
sbit P2_1=P2^1;
/********************延时y*1mS子函数*********************/
void delay(uint k)
{
uint i,j;
for(i=0;i
for(j=0;j<121;j++)
{;}}
}
main()
{
uchar m,n,p;
while(1)
{ while((P2_0!=0)||(P2_1!=1))//P2_0,P2_1接按键K1 K2
{for(m=0;m<8;m++) //K1 k2均未按下,8个LED发光二极管依次从左向右开始逐个点亮 { delay(1000);//延时1S P1=seg1[m]; }
}
while(P2_0==0) //K1 按下 状态2
{
for(n=0;n<8;n++)
{
delay(1000);
P1=seg2[n];
}
}
while(P2_1==0) //K2 按下 状态3
{
for(p=0;p<7;p++)
{
delay(1000);
P1=seg3[p];
}
}
}
}
00分享举报