//ST_CP Registro de desplazamiento pin de reloj
int latchPin = 8;
//SH_CP Almacenamiento registro pin de reloj (pasador)
int clockPin = 12;
// DS Datos de entrada en serie
int dataPin = 11;
int valor = 0;
int numeroLed = 0;
//varible que contiene los numeros del 0 - 9
int dato[] = {126, 72, 61, 109, 75, 103, 119, 76, 127, 79};
void setup() {
//pines de salida
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
//comunicacion serial a 9600bps
Serial.begin(9600);
}
void loop()
{
//valor de tensión en el pin analógico A0
valor = analogRead(A0);
//se toma el valor para selecionar el numero del 0-9
numeroLed = map(valor,0,1023,0,10);
//metodo para iluminar los LEDs del DISPLAY
iluminar(dato[numeroLed]);
}
void iluminar(int dato){
//Se enciende el led, valor alto al pin digital
digitalWrite(latchPin, LOW);
//toma los bit de un byte en serie, para mostrarlos en paralelo
shiftOut(dataPin, clockPin, MSBFIRST, dato);
//Se apaga el led, valor bajo al pin pin digital
digitalWrite(latchPin, HIGH);
//tiempo de espera
delay(200);
}