int pines[7] = {22, 2, 3, 4, 5, 15, 16};
int ledV = 26;
int ledA = 25;
int ledAm = 33;
int ledR = 32;
int ledBn = 35 ;
int ledMdo = 34 ;
byte displaySieteSeg[10][7] ={
{1, 1, 1, 1, 1, 1, 0},// digito 0
{0, 1, 1, 0, 0, 0, 0},
{1, 1, 0, 1, 1, 0, 1},
{1, 1, 1, 1, 0, 0, 1,},
{0, 1, 1, 0, 0, 1, 1}, //digito4
{1, 0, 1, 1, 0, 1, 1},
{1, 0, 1, 1, 1, 1, 1 },// digito6
};
int numero =0;
int boton =13;
void setup() {
pinMode(ledV, OUTPUT);
pinMode(ledA, OUTPUT);
pinMode(ledAm, OUTPUT);
pinMode(ledR, OUTPUT);
pinMode(ledBn, OUTPUT);
pinMode(ledMdo, OUTPUT);
// put your setup code here, to run once:
Serial.begin(115200);
for(int i=0; i<7; i++)
pinMode(pines[i], OUTPUT);
pinMode(boton, INPUT_PULLDOWN);
//inicia el display con el numero 0
for(int i=0; i<7; i++){
formaNumero(i);
delay(300);
}
formaNumero(0);
randomSeed(analogRead(34));
}
void loop() {
int estadoBoton = digitalRead(boton);
delay(300);
if( estadoBoton == HIGH){
numero = random(1, 6);
Serial.print("Numero");
Serial.print(numero);
formaNumero(numero);
if(numero==1){
digitalWrite(ledV, HIGH);
delay(1000);
digitalWrite(ledV, LOW);
delay(200);
}
if(numero==2){
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
}
if(numero==3){
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
}
if(numero==4){
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
delay(300);
}
if(numero==5){
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
delay(300);
}
if(numero==6){
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
digitalWrite(ledV, HIGH);
digitalWrite(ledA, HIGH);
digitalWrite(ledAm, HIGH);
digitalWrite(ledR, HIGH);
digitalWrite(ledBn, HIGH);
digitalWrite(ledMdo, HIGH);
delay(700);
digitalWrite(ledV, LOW);
digitalWrite(ledA, LOW);
digitalWrite(ledAm, LOW);
digitalWrite(ledR, LOW);
digitalWrite(ledBn, LOW);
digitalWrite(ledMdo, LOW );
delay(300);
}
}
}
void formaNumero(int digito){
int pin = 0;
for (int contadorSegmentos =0; contadorSegmentos < 7; ++contadorSegmentos){
digitalWrite(pines[pin], !displaySieteSeg[digito][contadorSegmentos]);
++pin;
}
}