// Display 9999 to 0 in loop with dealy, do not display the prefix 0
void setup() {
// put your setup code here, to run once:
volatile char *dirf,*dirk,*dira,*dirc,*dirL,*dirB;
volatile char *outf,*outk,*outa,*outc,*outL,*outB;
volatile long a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67};
volatile long b[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xE7};
volatile long i,j,x,k,k1,second=0,mint=0,hour=0,am=1,pm=1;
dirf = 0x30; outf = 0x31;
dirk = 0x107; outk = 0x108;
dira = 0x21; outa = 0x22;
dirc = 0x27; outc = 0x28;
dirL = 0x10A; outL = 0x10B;
dirB = 0x24; outB = 0x25;
loop:if(am<12)
second=1,mint=1,hour=1;
while(second<61)
{
for(i=1;i<61;i++)
{
k=i/10;
k1=i%10;
*outL=a[k];
*outB=a[k1];
for(j=0;j<5000;j++);
}
if(second == mint)
{
k=second%10;
k1=second/10;
*outc=a[k];
*outa=a[k1];
mint++;
}
second++;
if(mint==60)
{
k=mint%10;
k1=mint/10;
*outc=a[k];
*outa=a[k1];
}
if(mint==60)
{
k=hour/10;
k1=hour%10;
*outf=a[k];
*outk=a[k1];
mint=1;
second=1;
hour++;
}
if(hour==13)
{
break;
}
}
am+1;
goto loop;
}
void loop() {
// put your main code here, to run repeatedly:
}