📄 text1.c
字号:
#include <REG51.H>
unsigned char i;
unsigned char P3_FLAG;
unsigned char P3_dir;
unsigned char temp[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};//0~9,blank;
sbit P3_5=P3^5;
sbit P3_7=P3^7;sbit P3_0=P3^0;
//unsigned char data lie1[8],lie2[2];
//us delay time
void delayus(int time)
{
do
time--;
while(time>1);
}
//ms delay time
void delayms(int time)
{
while(time!=0)
{
delayus(1000);
time--;
}
}
void display_pro(unsigned char HI, unsigned char LO)
{
if(HI==10)
{
P1=temp[LO];
P3_7=0;
P3_5=1;
}
else
{P1=temp[LO];
P3_7=0;
P3_5=1;
delayus(100);
P1=temp[HI];
P3_5=0;
P3_7=1;
delayus(100);
}
}
void main(void)
{
unsigned char m;
unsigned char mn[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40};
P1=0x00;
P3=0xff;
for(m=0;m<7;m++)
{
P1=mn[m];
P3_5=0;
P3_7=0;
delayms(40);
}
P3_5=1;
P3_7=1;
while(1)
{
P3_FLAG=(P3&0x1f);
switch(P3_FLAG)
{
case 31:display_pro(10,10);
break;
case 30:display_pro(10,1);
break;
case 29:display_pro(10,2);
break;
case 28:display_pro(10,3);
break;
case 27:display_pro(10,4);
break;
case 26:display_pro(10,5);
break;
case 25:display_pro(10,6);
break;
case 24:display_pro(10,7);
break;
case 23:display_pro(10,8);
break;
case 22:display_pro(10,9);
break;
case 21:display_pro(1,0);
break;
case 20:display_pro(1,1);
break;
case 19:display_pro(1,2);
break;
case 18:display_pro(1,3);
break;
case 17:display_pro(1,4);
break;
case 16:display_pro(1,5);
break;
case 15:display_pro(1,6);
break;
case 14:display_pro(1,7);
break;
case 13:display_pro(1,8);
break;
case 12:display_pro(1,9);
break;
case 11:display_pro(2,0);
break;
case 10:display_pro(2,1);
break;
case 9:display_pro(2,2);
break;
case 8:display_pro(2,3);
break;
case 7:display_pro(2,4);
break;
case 6:display_pro(2,5);
break;
case 5:display_pro(2,6);
break;
case 4:display_pro(2,7);
break;
case 3:display_pro(2,8);
break;
case 2:display_pro(2,9);
break;
case 1:display_pro(3,0);
break;
case 0:display_pro(3,1);
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -