Documento Sin Título

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Juan david ortiz

yidwar hurtado

int boton[] = {4,10,11,12,13};


int led[] = {3,5,6,8,9};
int tono[] = {210, 310, 410, 510,610};
int rondasparaganar = 10;
int botonSecuencia[20];
int buzzerPin = 7;
int presionarboton = 4;
int EjecutarContador = 1;
long Inicio = 0;
long TiempoLimite = 200;
boolean Juega = false;

void setup(){
pinMode(boton[0], INPUT_PULLUP);
pinMode(boton[1], INPUT_PULLUP);
pinMode(boton[2], INPUT_PULLUP);
pinMode(boton[3], INPUT_PULLUP);
pinMode(boton[4], INPUT_PULLUP);
pinMode(led[0], OUTPUT);
pinMode(led[1], OUTPUT);
pinMode(led[2], OUTPUT);
pinMode(led[3], OUTPUT);
pinMode(led[4], OUTPUT);
pinMode(buzzerPin, OUTPUT);
}

void loop(){
if (Juega == false){
IniciaSecuencia();
EjecutarContador = 0;
delay(150);
Juega = true;
}

for(int i=0; i <= EjecutarContador; i++){


flashLED(botonSecuencia[i]);
delay(200);
todosLEDapagado();
delay(200);
}

for(int i=0; i <= EjecutarContador; i++){


Inicio = millis();
while(true){
presionarboton = botonVerificar();
if (presionarboton < 5){
flashLED(presionarboton);
if(presionarboton == botonSecuencia[i]){
delay(250);
todosLEDapagado();
break;
} else{
PerderSecuencia();
break;
}
} else {
todosLEDapagado();
}
if(millis() - Inicio > TiempoLimite){
PerderSecuencia();
break;
}
}
}
EjecutarContador = EjecutarContador + 1;
if (EjecutarContador >= rondasparaganar){
GanarSecuencia();
}
delay(50);
}
void flashLED (int ledNumber){
digitalWrite(led[ledNumber], HIGH);
tone(buzzerPin, tono[ledNumber]);
}

void todosLEDapagado (){


digitalWrite(led[0],LOW);
digitalWrite(led[1],LOW);
digitalWrite(led[2],LOW);
digitalWrite(led[3],LOW);
digitalWrite(led[4],LOW);
noTone(buzzerPin);
}

int botonVerificar(){
if(digitalRead(boton[0]) == LOW){
return 0;
}else if(digitalRead(boton[1]) == LOW){
return 1;
}else if(digitalRead(boton[2]) == LOW){
return 2;
}else if(digitalRead(boton[3]) == LOW){
return 3;
}else if(digitalRead(boton[4]) == LOW){
return 4;
}else{
return 5;
}
}

void IniciaSecuencia(){
randomSeed(analogRead(A0));
for (int i=0;i<=rondasparaganar;i++){
botonSecuencia[i] = round(random(0,4));
}

for(int i=0; i<=4; i++){


tone(buzzerPin, tono[i], 200);
digitalWrite(led[0],HIGH);
digitalWrite(led[1],HIGH);
digitalWrite(led[2],HIGH);
digitalWrite(led[3],HIGH);
digitalWrite(led[4],HIGH);
delay(100);
digitalWrite(led[0],LOW);
digitalWrite(led[1],LOW);
digitalWrite(led[2],LOW);
digitalWrite(led[3],LOW);
digitalWrite(led[4],LOW);
delay(100);
}
}

void GanarSecuencia(){
for(int j=0; j<=4; j++){
digitalWrite(led[j], HIGH);
}
tone(buzzerPin, 1318, 150);
delay(175);
tone(buzzerPin, 1567, 150);
delay(175);
tone(buzzerPin, 2637, 150);
delay(175);
tone(buzzerPin, 2093, 150);
delay(175);
tone(buzzerPin, 2349, 150);
delay(175);
tone(buzzerPin, 3135, 500);
delay(50);
do {
presionarboton = botonVerificar();
} while(presionarboton > 4);
delay(100);
Juega = false;

void PerderSecuencia(){
for(int j=0; j<=4; j++){
digitalWrite(led[j], HIGH);
}
tone(buzzerPin, 130, 250);
delay(275);
tone(buzzerPin, 73, 250);
delay(275);
tone(buzzerPin, 65, 150);
delay(175);
tone(buzzerPin, 98, 500);
delay(500);
do {
presionarboton = botonVerificar();
} while(presionarboton > 4);
delay(200);
Juega = false;
}

You might also like