#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
uchar code TAB[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar a,b,c,d;
sbit START=P2^3;
sbit CLK=P2^4;
sbit EOC=P2^5;
sbit OE=P2^6;
sbit P20=P2^0;
sbit P21=P2^1;
sbit P22=P2^2;
void AD();
void display();
void delayms(uchar m);
void main()
{
P0=0x80;
P1=0XFF;
while(1)
{
AD();
display();
}
}
void AD()
{
START=1;
_nop_();
_nop_();
START=0;
delayms(2);
d=P1;
a=d/51;
b=d%51;
c=d%51/5;
}
void display()
{
P21=0;
P0=TAB[a];
delayms(1);
P21=1;
P22=0;
P0=TAB[c];
delayms(1);
P22=1;
P21=0;
P0=0x80;
delayms(1);
P21=1;
}
void delayms(uchar no)
{uchar i,j;
for(i=0;i<no;i++)
{for(j=0;j<164;j++);
for(j=0;j<164;j++);
}
}