📄 60de.c
字号:
#include<at89x51.h>
#define uchar unsigned char
sbit DAT=P1^4;
sbit CLK=P1^5;
sbit OE=P1^6;
uchar code tab[]={0x5f,0x03,0x76,0x37,0x2b,0x3d,0x7d,0x07,0x7f,0x3f,0x00};
void decode(uchar i)
{
uchar num,c;
num=tab[i];
for(c=0;c<8;c++)
{
CLK=1;
DAT=num%2;
CLK=0;
num=num/2;
}
}
void display(uchar i,uchar j)
{
OE=0;
decode((i/10)%10);
decode(i%10);
decode((j/10)%10);
decode(j%10);
OE=1;
}
void initial(void)
{
TMOD=0x01;
TH0=0xa6;
TL0=0x00;
TR0=1;
TF0=0;
}
char timer(uchar j)
{
while(j--)
{
while(TF0==0);
TF0=0;
TH0=0x4c;
TL0=0x00;
}
return j;
}
void display1()
{
uchar i,j;
P3_6=0;
P3_7=1;
for(i=30,j=26;i>0,j>0;i--,j--)
{
P3_0=0;
P3_5=0;
display(i-1,j-1);
timer(20);
}
P3_0=1;
for(i=4,j=4;i>0,j>0;i--,j--)
{
P3_5=0;
P3_1=0;
display(i-1,j-1);
timer(20);
}
P3_5=1;
P3_1=1;
P3_6=1;
P3_7=0;
for(j=30,i=26;j>0,i>0;j--,i--)
{
P3_2=0;
P3_3=0;
display(i-1,j-1);
timer(20);
}
P3_3=1;
for(i=4,j=4;i>0,j>0;i--,j--)
{
P3_2=0;
P3_4=0;
display(i-1,j-1);
timer(20);
}
P3_4=1;
P3_2=1;
}
void main(void)
{
initial();
while(1)
{
display1();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -