|
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
void delay(uchar shu);
void sszzgdl();
void sszzgxm();
void lmtsdl();
void lmtsxm();
void bgdlxh();
void lgbgdlxh();
uchar code shuzhu1[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
uchar code shuzhu2[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00};
uchar code shuzhu3[]={0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
uchar code shuzhu4[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
void main()
{
while(1)
{
sszzgdl();
sszzgxm();
sszzgdl();
sszzgxm();
lmtsdl();
lmtsxm();
lmtsdl();
lmtsxm();
bgdlxh();
lgbgdlxh();
}
}
///////延时函数///////
void delay(uchar shu)
{
uchar i,j;
for(i=0;i<shu;i++)
for(j=0;j<120;j++);
}
///////顺时针逐个点亮/////////
void sszzgdl()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P1=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P0=shuzhu2[i];
delay(500);
}
}
///////顺时针逐个熄灭/////////
void sszzgxm()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu3[i];
delay(500);
}
for(i=0;i<8;i++)
{
P1=shuzhu3[i];
delay(500);
}
for(i=0;i<8;i++)
{
P0=shuzhu4[i];
delay(500);
}
}
///////俩面同时点亮/////////
void lmtsdl()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu1[i];
P0=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu1[i];
P1=shuzhu2[i];
delay(500);
}
}
///////俩面同时熄灭/////////
void lmtsxm()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
P0=shuzhu3[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu3[i];
P1=shuzhu4[i];
delay(500);
}
}
///////8个点亮循环/////////
void bgdlxh()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
P3=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu3[i];
P1=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P1=shuzhu3[i];
P0=shuzhu2[i];
delay(500);
}
for(i=0;i<8;i++)
{
P0=shuzhu4[i];
P2=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
P3=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu3[i];
P1=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P1=shuzhu3[i];
P0=shuzhu2[i];
delay(500);
}
for(i=0;i<8;i++)
{
P0=shuzhu4[i];
delay(500);
}
sszzgdl();
sszzgxm();
}
///////俩个8个点亮循环/////////
void lgbgdlxh()
{
uchar i;
for(i=0;i<8;i++)
{
P2=shuzhu1[i];
P1=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
P1=shuzhu3[i];
P3=shuzhu1[i];
P0=shuzhu2[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu1[i];
P0=shuzhu4[i];
P2=shuzhu1[i];
P1=shuzhu1[i];
delay(500);
}
for(i=0;i<8;i++)
{
P2=shuzhu3[i];
P1=shuzhu3[i];
P3=shuzhu1[i];
P0=shuzhu2[i];
delay(500);
}
for(i=0;i<8;i++)
{
P3=shuzhu3[i];
P0=shuzhu4[i];
delay(500);
}
}
|
|