Caja de Arduino Mastermind (prototipo) (14 / 14 paso)

Paso 14: El código

int led1 = 2; Esto establece números en nombres. Esto se utiliza más adelante para led [i]

int led2 = 3;

led3 int = 4;

led4 int = 5;

int i = -1; Se establece en -1, utilizado para aleatorizar sólo el código cuando setup(); se llama.

int j = 0; J se restablece a 0 para un nuevo redondo, j se utiliza para el índice cuando se llama el código correcto.

#include / / incluye la librería servo

Servo1 servo; Servo de nombre

doble código [4] = {1, 1, 1, 1}; Crea un array llamado código, es consiste en 4 dígitos.

corregir doble [5] = {0, 0, 0, 0, 0}; Crea un array llamado correcto, consta de 5 dígitos y se usa para ver si todos los números han sido conjeturados correctamente.

doble led [4] = {2, 3, 4, 5}; Crea una matriz led, es consiste en 4 dígitos y se utiliza para activar el LED cuando el índice se llama.

void setup() {}

Configuración también se utiliza para reiniciar el programa cuando se ha ingresado el código correcto.

inicializar comunicaciones serie a 9600 bps:

Serial.Begin(9600);

corregir doble [5] = {0, 0, 0, 0, 0}; Restablece la matriz correcta

Establece el LED (2 a 5) y los botones (de 9 a 12) para ser reconocido como entrada como salida.

pinMode (9, entrada);

pinMode (10, entrada);

pinMode (11, entrada);

pinMode (12, entrada);

pinMode (2, salida);

pinMode (3, salida);

pinMode (4, salida);

pinMode (5, salida);

servo1.Attach(1); se fija el servo en el pin 1

servo1.Write(90); Ponga el Servo en esta posición

Delay(2000); Mantenga esta posición de 2000ms reajustar la tapa

servo1.Write(170); cerradura de la tapa

i = -1; Aleatoriza el código si i = -1

digitalWrite (LED 1, bajo); Restablece todos los LED

digitalWrite (led2, LOW);

digitalWrite (LED 3, bajo);

digitalWrite (led4, LOW);

analogWrite (8, random(0,255)); Establecer el RGB en un color al azar

analogWrite (7, random(0,255));

analogWrite (6, random(0,255));

}

void generateCode()

{

aleatorizar el código si i = -1

randomSeed(random());

para (int i = 0; i < 4; i ++)

{

corregir [0] = 0;

corregir [1] = 0;

corregir [2] = 0;

corregir [3] = 0;

corregir [4] = 0;

código [i] = random(1,5);

}

depurar código para no tener que averiguar el código.

Serial.println("Code");

Serial.println(Code[0]);

Serial.println(Code[1]);

Serial.println(Code[2]);

Serial.println(Code[3]);

}

void retry() {}

Si el código es incorrecto de que esta función se llama

Serial.Begin(9600);

corregir doble [5] = {0, 0, 0, 0, 0};

i = 0; me puse a 0 por lo que el código no se restablece.

digitalWrite (LED 1, bajo);

digitalWrite (led2, LOW);

digitalWrite (LED 3, bajo);

digitalWrite (led4, LOW);

}

void loop() {}

Si (i == -1) {}

generateCode(); generar un nuevo código si i = -1

i ++;

}

// code 1 ////////////////////////

El siguiente código será leída si la entrada es igual al número en la posición actual.

Si el número y la posición es correcta el led se encenderá y la "correcta" de la matriz se establecerá en 1 para esa posición

Si el número es correcto, pero la posición es incorrecta, el led parpadeará lentamente y continuar a la siguiente posición, correcta no está establecido en 1

Si el número no es correcto el led parpadeará rápido y continuar a la siguiente posición correcta no está establecido en 1

Si todo correcto es = a 1. El LED parpadeará y el servo cambiará de posición para permitir que la caja abrir. la configuración de la función se llama para que el juego para comenzar de nuevo.

Si alguno de los números en la matriz "correcto" es 0 el led rojo parpadeará una vez y el reintento de función se llama.

Si (digitalRead(9) == HIGH) / / si se presiona el botón >

{

Si (código [i] == 1) {/ / si el código es correcto botón pulsado

digitalWrite((led[i]), HIGH); Gire ledon

i ++; Índice de avance

corregir [i] = 1; el valor correcto Índice 1

Delay(250);

}

else if (código [1] == 1 o código [2] == 1 o código [3] == 1 o código [4] == 1) {}

Serial.println ("a la derecha, pero la ubicación incorrecta");

digitalWrite((led[i]), HIGH);

Delay(500); retrasar para que botón no entrado a menudo durante 1 Pulse.

digitalWrite((led[i]), baja); LED parpadea lentamente código.

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

else if (código [i]! = 1) {}

Serial.println("Wrong");

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

}

Si (digitalRead(10) == HIGH)

{

Si (código [i] == 2) {}

digitalWrite((led[i]), HIGH);

i ++;

corregir [i] = 1;

Delay(250);

}

else if (código [1] == 2 o código [2] == 2 o código [3] == 2 o código [4] == 2) {}

Serial.println ("a la derecha, pero la ubicación incorrecta");

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

else if (código [i]! = 2) {}

Serial.println("Wrong");

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

digitalWrite((led[i]), HIGH);

Delay(200);

i ++;

Delay(250);

}

}

Si (digitalRead(11) == HIGH)

{

Si (código [i] == 3) {}

digitalWrite((led[i]), HIGH);

i ++;

corregir [i] = 1;

Delay(250);

}

else if (código [1] == 3 o código [2] == 3 o código [3] == 3 o código [4] == 3) {}

Serial.println ("a la derecha, pero la ubicación incorrecta");

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

else if (código [i]! = 3) {}

Serial.println("Wrong");

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

}

Si (digitalRead(12) == HIGH)

{

Si (código [i] == 4) {}

digitalWrite((led[i]), HIGH);

i ++;

corregir [i] = 1;

Delay(250);

}

else if (código [1] == 4 o código [2] == 4 o código [3] == 4 o código [4] == 4) {}

Serial.println ("a la derecha, pero la ubicación incorrecta");

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

Delay(500);

digitalWrite((led[i]), baja);

Delay(500);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

else if (código [i]! = 4) {}

Serial.println("Wrong");

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

Delay(200);

digitalWrite((led[i]), baja);

Delay(200);

digitalWrite((led[i]), HIGH);

i ++;

Delay(250);

}

}

comprueba si todo el código se ingresa correctamente.

Si (digitalRead(led4) == alta y corregir [1] == 1 y corregir [2] == 1 y corregir [3] == 1 y corregir [4] == 1) {}

Si (j < = 20) {}

digitalWrite (led2, LOW);

digitalWrite (LED 1, bajo);

digitalWrite (LED 3, bajo);

digitalWrite (led4, LOW);

Delay(100);

digitalWrite (led2, HIGH);

digitalWrite (LED 1, HIGH);

digitalWrite (LED 3, alto);

digitalWrite (led4, HIGH);

Delay(100);

j ++;

i = 0;

int i = 0;

servo1.Write(90);

}

else if (j > 20)

{

j = 0;

Setup();

}}

Si no correcto, vuelva a intentarlo

else if (digitalRead(led4) == alta y corregir [1] == 0 o digitalRead(led4) == alta y corregir [2] == 0 o digitalRead(led4) == alta y corregir [3] == 0 o digitalRead(led4) == alta y corregir [4] == 0) {}

Delay(2000);

digitalWrite (led4, LOW);

digitalWrite (led2, LOW);

digitalWrite (LED 1, bajo);

digitalWrite (LED 3, bajo);

Delay(600);

digitalWrite (led4, HIGH);

Delay(600);

i = 0;

int i = 0;

Retry() ;}}

Artículos Relacionados

Caja para Arduino con corte láser - Uno, Mega, Leonardo, Yun

Caja para Arduino con corte láser - Uno, Mega, Leonardo, Yun

Una caja para nuestras tarjetas Arduino, es un gran aliado para protegerlas y manipularlas de forma más sencilla. ¿Y qué mejor forma para conseguir una caja para tu Arduino fabricarla tú mismo?En este Instructable encontrarás los archivos para fabric
Protector de caja de Arduino (por falta de un mejor título)

Protector de caja de Arduino (por falta de un mejor título)

Esto es un diseño mío que se coloca dentro de una caja, cajón o nevera y un ruido de alarma cada vez que abres la caja, cajón o nevera. Se utiliza un resistor sensible a la luz y es tranquila cuando está oscuro (se cierra el cuadro) y reproduce un so
El tiempo en la caja usando ARDUINO ~ la

El tiempo en la caja usando ARDUINO ~ la

¿Cómo funciona?Comprobar la temperatura a tu alrededor con este dispositivo inteligente!Para más proyectos de interés visite: www.miymakers.comFacebook: www.facebook.com/miymakersPaso 1: ¿Cómo funciona?¿Cómo funciona?El DHT11 es un básico, ultra bajo
Un pequeño interruptor y potenciómetro caja para Arduino su

Un pequeño interruptor y potenciómetro caja para Arduino su

que improvisó cargas de Arduino circuitos y siempre encontré hurgando interruptores y potenciómetros a través de cartón pensé que era hora de producir algo un poco más bonito. Así que aquí está cómo hacer una hermosa caja para 3 interruptores y 5 pot
Caja de Arduino controlada por control remoto de TV y código

Caja de Arduino controlada por control remoto de TV y código

Este instructable mostrar cómo he creado una caja de control remoto por un transmisor infrarrojo del TV. He tomado inspiración de este instructable Control cualquier circuito con un TV remoto (y un Arduino). En este enlace pueden descubrir biblioteca
Centro prototipo de Arduino

Centro prototipo de Arduino

este es un relativamente barato y fácil de construir proyectos que le ayudarán a probar todos sus proyectos de Arduino y prototipos. Puesto que tiene una fuente de alimentación, que elimina el uso de la batería frecuentes y deja la placa libre de reg
Arduino prototipos Stand de tallado espuma

Arduino prototipos Stand de tallado espuma

la Idea: crear un Portable prototipado Arduino "stand" que es fácil de hacery fácil de transportar desde su casa a la escuela a su casa de amigos o simplementedesde su sala de estar en su habitación sin tener que preocuparse si algo dejado.Algun
Caja de Navidad: Arduino/ioBridge internet controla luces de Navidad y show musical

Caja de Navidad: Arduino/ioBridge internet controla luces de Navidad y show musical

mi proyecto de Navidad de la caja consiste en un internet controlado por luces de Navidad y show musical. Una canción de Navidad se puede solicitar on-line que se ponen en una cola y jugó en el orden que se pidió. La música es transmitida en una emis
Caja portable de prototipado Arduino

Caja portable de prototipado Arduino

en este instructable construyo una caja fácil de prototipos móviles de Arduino. El Arduino y protoboard el circuito está asegurado para que pueda trabajar en el circuito durante el viaje.Paso 1: La caja Sólo construí una simple caja con madera contra
Caja azul basados en Arduino (teléfono Phreaking)

Caja azul basados en Arduino (teléfono Phreaking)

Historia e historiaEn la década de 1950, años 1960, 1970, década de 1980 y aún hasta en la década de 1990 teléfono phreaking era una manera asombrosamente fresca a explorar un mundo desconocido de las redes de conmutación de teléfono. A "phreak"
Caja de seguridad de Arduino

Caja de seguridad de Arduino

caja de ArduinoEste proyecto crea un sistema de seguridad para una caja o contenedor. Coloque el LDR en un recipiente oscuro. Cuandoabrir el envase el zumbador sonará dejándole saber que el contenedor ha sido abierto a todo el mundoSi el contenedor s
GoproBOT Arduino Printbot

GoproBOT Arduino Printbot

ANTECEDENTESLa historia de este pequeño Printbot, del estamos muy orgullosos, comienza hace unos meses, cuando mi hijo de regalo de Javier de 8 años centro como Reyes un kit de Robótica (de bq, os lo recomiendo) y empezamos a trastear con cosas de el
Palma de los Arduino V3

Palma de los Arduino V3

diseño y crear este prototipo Palma Arduino V3 PCB, tal y como estaba cansado de recrear Arduino Compatible en perf tablero cada vez prototipos de un nuevo proyecto, especialmente cuando tuve que pasar mucho tiempo rastreando el cableado para ver que
HackerBoxes 0003: Radioaficionados, Arduino Nano, satélites, Packet, APRS

HackerBoxes 0003: Radioaficionados, Arduino Nano, satélites, Packet, APRS

¿Estás listo para obtener Radio activa? Este mes, explorar las comunicaciones de radio con un transceptor de VHF/UHF portátil potente, búsqueda para arriba satélites de aficionado y el prototipo tu propio proyecto de código Morse o Packet Radio Digit