#define pines 3
#define pot A0
const int pinLatch = 2;
const int pinReloj = 3;
const int pinDato = 4;
int led[pines] = {2,3,4};
// creamos una tabla para los numeros del 0 al 9
int num1[1]={249};
int num2[1]={164};
int num3[1]={176};
int num4[1]={153};
int num5[1]={146};
int num6[1]={131};
int num7[1]={248};
int num8[1]={128};
int num9[1]={144};
int num0[1]={192};
void setup ()
{
for (int i=0;i<pines;i++)
pinMode(led[i],OUTPUT);
}
void loop()
{
int valor = analogRead(pot);
int i=map(valor, 0, 1023, 0, 10);
rutina(i);
}
void rutina(int i)
{
switch(i)
{
case 0:
for(int j=0;j<1;j++)
{
activacion(num0[j]);
delay(60);
}
break;
case 1:
for(int j=0;j<1;j++)
{
activacion(num1[j]);
delay(60);
}
break;
case 2:
for(int j=0;j<1;j++)
{
activacion(num2[j]);
delay(60);
}
break;
case 3:
for(int j=0;j<1;j++)
{
activacion(num3[j]);
delay(60);
}
break;
case 4:
for(int j=0;j<1;j++)
{
activacion(num4[j]);
delay(100);
}
break;
case 5:
for(int j=0;j<1;j++)
{
activacion(num5[j]);
delay(60);
}
break;
case 6:
for(int j=0;j<1;j++)
{
activacion(num6[j]);
delay(60);
}
break;
case 7:
for(int j=0;j<1;j++)
{
activacion(num7[j]);
delay(60);
}
break;
case 8:
for(int j=0;j<1;j++)
{
activacion(num8[j]);
delay(60);
}
break;
case 9:
for(int j=0;j<1;j++)
{
activacion(num9[j]);
delay(60);
}
break;
}
}
void activacion(int i)
{
digitalWrite (pinLatch, LOW);
shiftOut (pinDato, pinReloj, MSBFIRST, i);
digitalWrite (pinLatch, HIGH);
delay(50);
}