// Constantes para identificar cada pin conectado a cada segmento. Son constantes porque
// nunca voy a re-cablear el circuito
const int A = 10;
const int B = 11;
const int C = 3;
const int D = 4;
const int E = 5;
const int F = 9;
const int G = 8;
const int DP = 2;
void setup() {
// Configurar cada pin como salida
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(DP, OUTPUT);
}
void loop() {
display(0);
delay(1000);
display(11); // Recuerde que el número 11 decimal es el símbolo 'b' en hexadecimal
delay(1000);
/*
Para tener todos los valores debe implementar:
El 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, C, d, E, F.
Note que algunas letras son mayúsculas y unas minúsculas. Debido a la limitante de segmentos
esta es la mejor forma de diferenciar un número de otro.
*/
}
void display(int valor) {
switch(valor){
case 0:
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
digitalWrite(DP, LOW);
break;
case 11:
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(DP, HIGH); // Intencionalmente encendí el 'punto' como ejemplo
break;
}
}