Simon
Dependencies: mbed
Diff: main.cpp
- Revision:
- 3:1610e2f8803b
- Parent:
- 2:f45bd4655817
- Child:
- 4:ddba0fd2caa4
--- a/main.cpp Tue May 28 11:41:17 2019 +0000 +++ b/main.cpp Mon Jun 17 04:52:45 2019 +0000 @@ -35,7 +35,7 @@ DigitalOut Verde(LED2); DigitalOut Azul(LED3); -void invierte(); +void invierte(); void simon(); char Pulsador (); void leds(int num); // led(0b000) = apagados, led(0b100) = rojo, led(0b010) = Verde, led(0b001) = Azul, led(0b111) = Blanco, @@ -88,7 +88,7 @@ static int i; switch(estado) { case ESTADO_COMENZAR: - //Espero que pulsen un pulsador para empezar + //Espero que pulsen un pulsador para empezar times = 0; if(pulsador != 0 && flagPulsador == 1) { leds(0b000); @@ -106,7 +106,7 @@ sec[i] = rand() % 3 + 1; } nivelSec = 1; - posJuego = 0; + posSec = 0; posJuego = 0; estado = ESTADO_MUESTREO; times = 0; @@ -128,7 +128,7 @@ } switch(sec[posSec]) { case 1: - //Muestro LED rojo + //Muestro LED rojo leds(0b100); if(times > 5) { times = 0; @@ -138,7 +138,7 @@ } break; case 2: - //Muestro LED verde + //Muestro LED verde leds(0b010); if(times > 5) { apagado = 1; @@ -148,7 +148,7 @@ } break; case 3: - //Muestro LED azul + //Muestro LED azul leds(0b001); if(times > 5) { apagado = 1; @@ -178,7 +178,7 @@ } break; case ESTADO_JUEGO: - //Detecto si el jugador tarda mucho tiempo en apretar un boton + //Detecto si el jugador tarda mucho tiempo en apretar un boton if (espera > 50) { printf("Tardaste demaciado tiempo en elegir\r\n"); estado = ESTADO_PERDER; @@ -216,7 +216,7 @@ estado = ESTADO_GANAR; } else { //Si no llegué al máximo nivel paso de nivel - printf("\nPasaste al nivel %d!\r\n\n", r); + printf("\nPasaste al nivel %d!\r\n\n", nivelSec); posSec = 0; posJuego = 0; estado = ESTADO_MUESTREO; @@ -236,7 +236,7 @@ } break; case ESTADO_PERDER: - //Prendo el LED blanco para mostrar que termino el juego y vuelvo al estado COMENZAR + //Prendo el LED blanco para mostrar que termino el juego y vuelvo al estado COMENZAR printf("\nPerdiste Bro :(\r\n"); printf("Apreta cualquier boton para reiniciar!\r\n\n"); leds(0b111); @@ -244,7 +244,7 @@ break; case ESTADO_GANAR: - //Mustro el LED blanco para mostrar que termino el juego y aviso que completo la secuencia + //Mustro el LED blanco para mostrar que termino el juego y aviso que completo la secuencia printf("\nGANASTE!!! :)\r\n\n"); printf("Apreta cualquier boton para reiniciar!\r\n\n"); leds(0b111); @@ -289,6 +289,11 @@ //Funcion que aciva un flag con el cambio del pulsador y guarda el pulsado en una variable pulsador = 0; + if (PR.rising()) { + flagPulsador = 1; + pulsador = 1; + return 0; + } if (PV.rising()) { flagPulsador = 1; pulsador = 2; @@ -299,11 +304,6 @@ pulsador = 3; return 0; } - if (PR.rising()) { - flagPulsador = 1; - pulsador = 1; - return 0; - } pulsador = 0; flagPulsador = 0;