#include <STC15F2K60S2.H>
unsigned char num;
unsigned char code Duan[22]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x80,
0xc6,0xc0,0x86,0x8e,0xbf,0x7f,0XC1,0X8C,0XC8,0xc3};
void shumadong();
void suocun(unsigned char n)
{
switch(n)
{
case 4:P2 = (P2 & 0x1f)|0x80;break;
case 5:P2 = (P2 & 0x1f)|0xa0;break;
case 6:P2 = (P2 & 0x1f)|0xc0;break;
case 7:P2 = (P2 & 0x1f)|0xe0;break;
}
}
void shuma(unsigned char wei ,unsigned char shu)
{
suocun(6);
P0=0x01<<wei;
suocun(7);
P0=Duan[shu];
}
void Delay(unsigned int t)
{
while(t--);
}
void Delay_shuma(unsigned int t)
{
while(t--)
{
shumadong();
}
}
void shumadong()
{
shuma(0,1);
Delay(500);
shuma(2,num);
Delay(500);
}
void main()
{
while(1)
{
shumadong();
num+=1;
if(num>9)
{
num=0;
}
Delay_shuma(100);
}
}