#define DELAY 100000
void setup() {
// put your setup code here, to run once:
volatile char *dir1;
dir1 = 0x30;
*dir1 = 0xff;
volatile char *dir2;
dir2 = 0x107;
*dir2 = 0xff;
volatile char *dir3;
dir3 = 0x21;
*dir3 = 0xff;
volatile char *dir4;
dir4 = 0x27;
*dir4 = 0xff;
}
void loop() {
// put your main code here, to run repeatedly:
volatile char *seg1;
seg1 = 0x31;
volatile char *seg2;
seg2 = 0x108;
volatile char *seg3;
seg3 = 0x22;
volatile char *seg4;
seg4 = 0x28;
volatile long i,j,k,l;
*seg1 = 0x3f;
*seg2 = 0x3f;
*seg3 = 0x3f;
for(l=0;l<10;l++){
if(l==0)*seg1 = 0x3f;
if(l==1)*seg1 = 0x06;
if(l==2)*seg1 = 0x5b;
if(l==3)*seg1 = 0x4f;
if(l==4)*seg1 = 0x66;
if(l==5)*seg1 = 0x6d;
if(l==6)*seg1 = 0x7d;
if(l==7)*seg1 = 0x07;
if(l==8)*seg1 = 0x7f;
if(l==9)*seg1 = 0x6f;
for(k=0;k<10;k++){
if(k==0)*seg2 = 0x3f;
if(k==1)*seg2 = 0x06;
if(k==2)*seg2 = 0x5b;
if(k==3)*seg2 = 0x4f;
if(k==4)*seg2 = 0x66;
if(k==5)*seg2 = 0x6d;
if(k==6)*seg2 = 0x7d;
if(k==7)*seg2 = 0x07;
if(k==8)*seg2 = 0x7f;
if(k==9)*seg2 = 0x6f;
for(j=0;j<10;j++){
if(j==0)*seg3 = 0x3f;
if(j==1)*seg3 = 0x06;
if(j==2)*seg3 = 0x5b;
if(j==3)*seg3 = 0x4f;
if(j==4)*seg3 = 0x66;
if(j==5)*seg3 = 0x6d;
if(j==6)*seg3 = 0x7d;
if(j==7)*seg3 = 0x07;
if(j==8)*seg3 = 0x7f;
if(j==9)*seg3 = 0x6f;
*seg4 = 0x3f;for(i=0;i<DELAY;i++);
*seg4 = 0x06;for(i=0;i<DELAY;i++);
*seg4 = 0x5b;for(i=0;i<DELAY;i++);
*seg4 = 0x4f;for(i=0;i<DELAY;i++);
*seg4 = 0x66;for(i=0;i<DELAY;i++);
*seg4 = 0x6d;for(i=0;i<DELAY;i++);
*seg4 = 0x7d;for(i=0;i<DELAY;i++);
*seg4 = 0x07;for(i=0;i<DELAY;i++);
*seg4 = 0x7f;for(i=0;i<DELAY;i++);
*seg4 = 0x6f;for(i=0;i<DELAY;i++);
}
}
}
}