El último juego de memoria
Colocado enEmpezar...
Para verificar el cableado de este proyecto, escribí un pequeño código de prueba. Cuando presiona un botón, la luz correspondiente se encenderá
testcode
const int BUTTON_PIN1 = 2; // definiëren van de poorten
const int BUTTON_PIN2 = 3;
const int BUTTON_PIN3 = 4;
const int LED_PIN1 = 5;
const int LED_PIN2 = 6;
const int LED_PIN3 = 7;
int buttonState1 = 0; //definiëren van de variable en ze instellen op 0
int buttonState2 = 0;
int buttonState3 = 0;
void setup() {
pinMode(LED_PIN1, OUTPUT); //definiëren van de outputs
pinMode(LED_PIN2, OUTPUT);
pinMode(LED_PIN3, OUTPUT);
pinMode(BUTTON_PIN1, INPUT_PULLUP); //definiëren van de inputs
pinMode(BUTTON_PIN2, INPUT_PULLUP);
pinMode(BUTTON_PIN3, INPUT_PULLUP);
}
void loop() {
buttonState1 = digitalRead(BUTTON_PIN1); //variable controleren
buttonState2 = digitalRead(BUTTON_PIN2);
buttonState3 = digitalRead(BUTTON_PIN3);
if(buttonState1 == LOW)
digitalWrite(LED_PIN1, HIGH);
else if(buttonState2 == LOW)
digitalWrite(LED_PIN2, HIGH);
else if(buttonState3 == LOW)
digitalWrite(LED_PIN3, HIGH);
else
digitalWrite(LED_PIN1, LOW);
digitalWrite(LED_PIN2, LOW);
digitalWrite(LED_PIN3, LOW);
}
El programa
En primer lugar, tenemos que definir todos los pines, esto asegura que podemos nombrar los pines y no tenemos que usar un número de pin cada vez. A continuación, debemos establecer qué pines son de entrada y salida. Debido a que hemos optado por un botón pulsador 'a tierra' o 'pullup', también agregamos esto. Finalmente, también agregamos nuestra variable que necesitamos para los botones.
xxxxxxxxxx
const int BUTTON_PIN1 = 2;
const int BUTTON_PIN2 = 3;
const int BUTTON_PIN3 = 4;
const int LED_PIN1 = 5;
const int LED_PIN2 = 6;
const int LED_PIN3 = 7;
int buttonState1 = 0;
int buttonState2 = 0;
int buttonState3 = 0;
void setup() {
pinMode(LED_PIN1, OUTPUT);
pinMode(LED_PIN2, OUTPUT);
pinMode(LED_PIN3, OUTPUT);
pinMode(BUTTON_PIN1, INPUT_PULLUP);
pinMode(BUTTON_PIN2, INPUT_PULLUP);
pinMode(BUTTON_PIN3, INPUT_PULLUP);
}
número aleatorio
Para obtener LED aleatorios, usamos un generador de números aleatorios. El Arduino tiene un generador de números aleatorios incorporado, por lo que con un poco de código podemos hacer que 3 LED se enciendan al azar. Para hacer esto, necesitamos agregar una nueva variable a nuestro 'lugar definido' (desde arriba). Llamamos a esto 'randNumber'. Luego ponemos el código en nuestro 'lugar de configuración' semilla aleatoria (lectura analógica (0));. Para luego obtener un número aleatorio necesitamos el código NúmeroAleatorio = aleatorio(4); usar. El randNumber es nuestra variable, y el 4 representa cualquier número entre 0 y 4.
Así es como se ve nuestro código ahora:
xxxxxxxxxx
const int BUTTON_PIN1 = 2;
const int BUTTON_PIN2 = 3;
const int BUTTON_PIN3 = 4;
const int LED_PIN1 = 5;
const int LED_PIN2 = 6;
const int LED_PIN3 = 7;
long randNumber; //<--
int buttonState1 = 0;
int buttonState2 = 0;
int buttonState3 = 0;
void setup() {
randomSeed(analogRead(0)); //<--
pinMode(LED_PIN1, OUTPUT);
pinMode(LED_PIN2, OUTPUT);
pinMode(LED_PIN3, OUTPUT);
pinMode(BUTTON_PIN1, INPUT_PULLUP);
pinMode(BUTTON_PIN2, INPUT_PULLUP);
pinMode(BUTTON_PIN3, INPUT_PULLUP);
}