#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit DULA=P2^6;
sbit WELA=P2^7;
void display(uchar number1);
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
};
uchar hundreds,decades,unit;
void separate(uchar number2);
void delay(uchar time);
void main()
{
display(255);
}
void display(uchar number1)
{
separate(number1);
while(1)
{
WELA=1;
P0=0x7f;
WELA=0;
DULA=1;
P0=table[hundreds];
DULA=0;
delay(50);
WELA=1;
P0=0xbf;
WELA=0;
DULA=1;
P0=table[decades];
DULA=0;
delay(50);
WELA=1;
P0=0xdf;
WELA=0;
DULA=1;
P0=table[unit];
DULA=0;
delay(50);
}
}
void separate(uchar number2)
{
hundreds=number2/100;
decades=number2%100/10;
unit=number2%10;
}
void delay(uchar time)
{
uchar x, y;
for(x=time;x>0;x--)
for(y=110;y>0;y--);
}