#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit wela=P2^0;
sbit dula=P2^1;
uchar temp,num;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x7b,0x71
};
void delay(uchar z)
{
	uchar x,y;
	for(x=z;x>0;x--)
	{
		for(y=110;y>0;y--);
	}
}
void main()
{
	wela=1;
	P0=0x00;
	wela=0;
	dula=1;
	P0=0x00;
	dula=0;
	while(1)
	{
		P3=0xfe;
		temp=P3;
		temp=temp&0xf0;
		while(temp!=0xf0)//可改为if(temp!=0xf0)
		{
			delay(5);
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)//可改为if(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xee: num=3;break;
					case 0xde: num=2;break;
					case 0xbe: num=1;break;
					case 0x7e: num=0;break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}
				dula=1;
				P0=table[num];
				dula=0;
			}
		}
		P3=0xfd;
		temp=P3;
		temp=temp&0xf0;
		while(temp!=0xf0)
		{
			delay(5);
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xed: num=7;break;
					case 0xdd: num=6;break;
					case 0xbd: num=5;break;
					case 0x7d: num=4;break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}
				dula=1;
				P0=table[num];
				dula=0;
			}
		}
		P3=0xfb;
		temp=P3;
		temp=temp&0xf0;
		while(temp!=0xf0)
		{
			delay(5);
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xeb: num=11;break;
					case 0xdb: num=10;break;
					case 0xbb: num=9;break;
					case 0x7b: num=8;break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}
				dula=1;
				P0=table[num];
				dula=0;
			}
		}
		P3=0xf7;
		temp=P3;
		temp=temp&0xf0;
		while(temp!=0xf0)
		{
			delay(5);
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xe7: num=15;break;
					case 0xd7: num=14;break;
					case 0xb7: num=13;break;
					case 0x77: num=12;break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}
				dula=1;
				P0=table[num];
				dula=0;
			}
		}
	}
}

  

posted on 2011-11-18 19:51    阅读(153)  评论(0编辑  收藏  举报