#include?<REG51.H>?
#define?uint?unsigned?int?
#define?uchar?unsigned?char
uchar?code?DIS_SEG7[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8};
uchar?code?DIS_BIT[8]={0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87};
/****************************/
void?delay1ms(uint?i)
{?
uint?j;
while(i--)?
for(j?=?0;?j?<?125;?j++)?{;}?}?
void?main(void)?
{?
uchar?cnt,?ttt;
uchar?DISP[]?=?{0,?1,?2,?3,?4,?5,?6,?7};
while(1)?{?
for(ttt?=?0;?ttt?<?100;?ttt++)?for(cnt?=?0;?cnt?<?8;?cnt++)?{//點亮數碼管0-7?
P2?=?0; P0?=?~DIS_SEG7[DISP[cnt]]; P2?=?DIS_BIT[cnt]; delay1ms(1);}
//-------------------以上顯示800ms,下面更新顯示內容
ttt?=?DISP[0]; DISP[0]?=?DISP[1]; DISP[1]?=?DISP[2]; DISP[2]?=?DISP[3]; DISP[3]?=?DISP[4]; DISP[4]?=?DISP[5]; DISP[5]?=?DISP[6]; DISP[6]?=?DISP[7]; DISP[7]?=?ttt;}
}