int pin;
int disp_pin[7]={6,7,8,9,10,11,12};
int start=6,stop=12;
#define h HIGH
#define l LOW
#define dw digitalWrite
void display(int n){
int i;
switch(n)
{
case 0:
for(i=0;i<=6;i++)
{
if(i==6)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 1:
for(i=0;i<=6;i++)
{
if(i==1||i==2)
dw(disp_pin[i],l);
else
dw(disp_pin[i],h);
}
break;
case 2:
for(i=0;i<=6;i++)
{
if(i==2||i==5)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 3:
for(i=0;i<=6;i++)
{
if(i==4||i==5)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 4:
for(i=0;i<=6;i++)
{
if(i==0||i==3||i==4)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 5:
for(i=0;i<=6;i++)
{
if(i==1||i==4)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 6:
for(i=0;i<=6;i++)
{
if(i==1)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
case 7:
for(i=0;i<=6;i++)
{
if(i==0||i==1||i==2)
dw(disp_pin[i],l);
else
dw(disp_pin[i],h);
}
break;
case 8:
for(i=0;i<=6;i++)
{
dw(disp_pin[i],l);
}
break;
case 9:
for(i=0;i<=6;i++)
{
if(i==4)
dw(disp_pin[i],h);
else
dw(disp_pin[i],l);
}
break;
}
}
void setup() {
// put your setup code here, to run once:
/*pinMode(disp_pin[0], OUTPUT);
pinMode(disp_pin[1], OUTPUT);
pinMode(disp_pin[2], OUTPUT);
pinMode(disp_pin[3], OUTPUT);
pinMode(disp_pin[4], OUTPUT);
pinMode(disp_pin[5], OUTPUT);
pinMode(disp_pin[6], OUTPUT);*/
for(int i=start;i<=stop;i++){
pinMode(i, OUTPUT);
}
}
void loop() {
// put your main code here, to run repeatedly:
int i;
for(i=0;i<=9;i++){
display(i);
delay(800);
}
for(i=9;i>=0;i--){
display(i);
delay(800);
}
}