具体代码如下:
#include <REGX52.H>
char shuzitable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0X7F,0x6F};
void Delay(int x) //@11.0592MHz
{
unsigned char data i, j;
while(x--)
{ i = 11;
j = 190;
do
{
while (--j);
} while (--i);}
}
void add(char weizhi,shuzi)
{
switch(weizhi)
{
case 1:P2_4=1;P2_3=1;P2_2=1;break;
case 2:P2_4=1;P2_3=1;P2_2=0;break;
case 3:P2_4=1;P2_3=0;P2_2=1;break;
case 4:P2_4=1;P2_3=0;P2_2=0;break;
case 5:P2_4=0;P2_3=1;P2_2=1;break;
case 6:P2_4=0;P2_3=1;P2_2=0;break;
case 7:P2_4=0;P2_3=0;P2_2=1;break;
case 8:P2_4=0;P2_3=0;P2_2=0;break;
}
P0=shuzitable[shuzi];
Delay(1);
P0=0x00;
}
int main()
{
while(1)
{add(3,5);
// Delay(200);
add(5,2);
// Delay(200);
add(7,0);
//Delay(200);
}
}
效果呈现: