心形流水灯Word文档格式.docx
《心形流水灯Word文档格式.docx》由会员分享,可在线阅读,更多相关《心形流水灯Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
/***********************************************************/
voiddelay(uintt);
//延时
voidzg(uintt,uchara);
//两边逐个亮
voidqs(uintt,uchara);
//全部闪烁
voidzgxh(uintt,uchara);
//逆时针逐个点亮
//voidzgxh1(uintt,uchara);
//顺时针逐个点亮
voiddjs(uintt,uchara);
//对角闪
voidlbzgm(uintt,uchara);
//两边逐个灭
//voidsszgm(uintt,uchara);
//顺时针逐个灭
voidnszgm(uintt,uchara);
//逆时针逐个灭
voidsztl(uintt,uchara);
//顺时逐个同步亮
voidnztl(uintt,uchara);
//逆时逐个同步亮
voidsztm(uintt,uchara);
//顺时逐个同步灭
voidnztm(uintt,uchara);
//逆时逐个同步灭
voidhwzjl(uintt,uchara);
//横往中间亮
voidhwzjm(uintt,uchara);
//横往中间灭
//voidswzjl(uintt,uchara);
//竖往中间亮
//voidswzjm(uintt,uchara);
//竖往中间灭
voidnzdl(uintt,uchara);
//逆时逐段亮
voidnzdgl(uintt,uchara);
//逆时逐段一个点亮
voidjgs(uintt,uchara);
//间隔闪
/**********************************************************/
voidzg(uintt,uchara)//两边逐个亮
{
uchari,j;
for(j=0;
j<
a;
j++)
{
P0=P1=P2=P3=0xff;
P0=0x7f;
delay(t);
for(i=0;
i<
7;
i++)
{
P0=table1[i+1];
P2=table1[i];
delay(t);
}
P2=0x00;
P1=0xfe;
P1=table[i+1];
P3=table1[i];
delay(t);
P3=0x00;
}
}
voidqs(uintt,uchara)//全部闪烁
ucharj;
P0=P1=P2=P3=0xff;
delay(t);
P0=P1=P2=P3=0x00;
}
voidzgxh(uintt,uchara)//逆时针逐个点亮
for(j=0;
for(i=0;
8;
P0=table1[i];
P1=table[i];
P3=table[i];
P2=table[i];
voidnszgm(uintt,uchara)//逆时针逐个灭
P0=P1=P2=P3=0x00;
P0=table3[i];
P1=table2[i];
P3=table2[i];
P2=table2[i];
/*
voidzgxh1(uintt,uchara)//顺时针逐个点亮
P2=table1[i];
P1=table1[i];
P0=table[i];
*/
/*
voidsszgm(uintt,uchara)//顺时针逐个灭
P2=table3[i];
P3=table3[i];
P1=table3[i];
P0=table2[i];
*/
voiddjs(uintt,uchara)//对角闪
P0=P3=0x00;
P1=P2=0x00;
voidlbzgm(uintt,uchara)//两边逐个灭
P0=P2=0x00;
P3=0x01;
for(i=7;
i>
1;
i--)
P1=table[i-1];
P3=table1[i-2];
P1=0xfe;
P3=0xff;
P1=0xff;
P2=0x01;
P0=table1[i-1];
P2=table1[i-2];
P2=0xff;
P0=0xff;
voidsztl(uintt,uchara)//顺时逐个同步亮
P1=P2=P3=table1[i];
voidnztl(uintt,uchara)//逆时逐个同步亮
P1=P2=P3=table[i];
voidsztm(uintt,uchara)//顺时逐个同步灭
P1=P2=P3=table3[i];
voidnztm(uintt,uchara)//逆时逐个同步灭
P1=P2=P3=table2[i];
voidhwzjl(uintt,uchara)//横往中间亮
P0=P2=P1=table1[i];
voidhwzjm(uintt,uchara)//横往中间灭
P0=P2=P1=table3[i];
voidswzjl(uintt,uchara)//竖往中间亮
P0=P2=P1=table[i];
voidswzjm(uintt,uchara)//竖往中间灭
P0=P2=P1=table2[i];
voidnzdl(uintt,uchara)//逆时逐段亮
P3=0xff;
P2=0xff;
voidnzdgl(uintt,uchara)//逆时逐段一个点亮
uchari,j,k,l;
k=table1[0];
P0=k;
l=table[0];
P1=P2=P3=l;
k=_crol_(k,-1);
P0=k;
l=_crol_(l,1);
P1=P2=P3=l;
voidjgs(uintt,uchara)//间隔闪
P0=0x55;
P1=P2=P3=0xaa;
P0=0xaa;
P1=P2=P3=0x55;
voidmain()
uchari;
while
(1)
zg(100,1);
//两边逐个亮
lbzgm(100,1);
//两边逐个灭
jgs(300,10);
djs(100,20);
////////////////////////////////////////////
P1=P2=P3=0xff;
for(i=0;
3;
P0=0x00;
delay(800);
P0=0xff;
P1=0x00;
P1=0xff;
P3=0x00;
P3=0xff;
P2=0x00;
P2=0xff;
qs(500,3);
/////////////////////////////////////////////
6;
zgxh(50,1);
nszgm(50,1);
qs(200,10);
djs(100,50);
5;
sztl(200,1);
//顺时逐个同步亮
nztm(200,1);
nztl(200,1);
sztm(200,1);
//顺时逐个同步灭
djs(300,10);
nzdgl(300,10);
zgxh(100,1);
nszgm(100,1);
zgxh1(100,1);
sszgm(100,1);
nzdl(200,3);
jgs(50,100);
/*/////////////////////////////////////////////////////
for(i=0;
P0=table1[i];
delay(200);
P1=table[i];
P0=P1=0x00;
delay(200);
P0=P1=0xff;
P3=table1[i];
P2=P3=0x00;
P2=P3=0xff;
*///////////////////////////////////////////////////
nzdgl(50,40);
4;
qs(100,10);
//djs(50,100);
djs(1000,10);
10;
hwzjl(200,1);
hwzjm(200,1);
/*for(i=0;
swzjl(200,1);
swzjm(200,1);
zg(300,1);
lbzgm(300,1);
djs(500,20);
djs(100,30);
djs(50,50);
//djs(10,100);
delay(1000);
voiddelay(uintt)
uintx,y;
for(x=t;
x>
0;
x--)
for(y=120;
y>
y--);
因为89C52的容量有限,所以还有几个方式注释掉了。