#include <stdio.h>
#include <math.h>
sbit hang1=P1^7;
sbit hang2=P1^6;
sbit hang3=P1^5;
sbit hang4=P1^4;
sbit lie1=P1^3;
sbit lie2=P1^2;
sbit lie3=P1^1;
sbit lie4=P1^0;
sbit ledWei1=P2^2;
sbit ledWei2=P2^3;
sbit ledWei3=P2^4;
sbit ledshu1=P0;
char code shu[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
int n;
void play(int a);
int saohang();
void Delay10ms();
void main(){
while(1){
play(saohang());
}
}
void play(int x){
ledWei1=0;
ledWei2=0;
ledWei3=0;
ledshu1=shu[x];
}
int saohang(){
P1=1;
hang1=0;
if(lie1==0){
Delay10ms();
if(lie1==0){
n= 1;
}
}else if(lie2==0){
Delay10ms();
if(lie2==0){
n= 2;
}
}else if(lie3==0){
Delay10ms();
if(lie3==0){
n= 3;
}
}else if(lie4==0){
Delay10ms();
if(lie3==0){
n= 4;
}
}
P1=1;
hang2=0;
if(lie1==0){
Delay10ms();
if(lie1==0){
n= 5;
}
}else if(lie2==0){
Delay10ms();
if(lie2==0){
n= 6;
}
}else if(lie3==0){
Delay10ms();
if(lie3==0){
n= 7;
}
}else if(lie4==0){
Delay10ms();
if(lie3==0){
n= 8;
}
}
P1=1;
hang3=0;
if(lie1==0){
Delay10ms();
if(lie1==0){
n= 9;
}
}else if(lie2==0){
Delay10ms();
if(lie2==0){
n= 10;
}
}else if(lie3==0){
Delay10ms();
if(lie3==0){
n= 11;
}
}else if(lie4==0){
Delay10ms();
if(lie3==0){
n= 12;
}
}
return n;
}
void Delay10ms()
{
unsigned char i, j;
i = 18;
j = 235;
do
{
while (--j);
} while (--i);
}