/* CODIGO 1, PROBADO Y FUNCIONANDO */
#include <Arduino.h>
#define BOTON_PIN 14
#define LED_PIN_2 2
#define LED_PIN_15 15
#define LED_PIN_16 16
#define LED_PIN_26 26
#define INTERVALO 300
bool botonPresionado = false;
bool ultimaPresion = false;
void setup() {
pinMode(BOTON_PIN, INPUT_PULLUP);
pinMode(LED_PIN_2, OUTPUT);
pinMode(LED_PIN_15, OUTPUT);
pinMode(LED_PIN_16, OUTPUT);
pinMode(LED_PIN_26, OUTPUT);
}
void loop() {
// Verifica si el botón ha sido presionado
bool estadoBoton = digitalRead(BOTON_PIN);
if (estadoBoton == LOW && ultimaPresion == HIGH) {
// Inicia la secuencia solo si el botón ha sido recientemente presionado
botonPresionado = !botonPresionado; // Cambia el estado del botón presionado
}
ultimaPresion = estadoBoton; // Almacena el estado actual del botón
// Si el botón está presionado, realiza las secuencias de encendido y apagado
if (botonPresionado) {
// Enciende y apaga los LEDs conectados a los pines 2 y 15 simultáneamente 5 veces
for (int i = 0; i < 5; i++) {
digitalWrite(LED_PIN_2, HIGH);
digitalWrite(LED_PIN_15, HIGH);
delay(INTERVALO);
digitalWrite(LED_PIN_2, LOW);
digitalWrite(LED_PIN_15, LOW);
delay(INTERVALO);
}
// Enciende y apaga los LEDs conectados a los pines 15 y 16 simultáneamente 5 veces
for (int i = 0; i < 5; i++) {
digitalWrite(LED_PIN_15, HIGH);
digitalWrite(LED_PIN_16, HIGH);
delay(INTERVALO);
digitalWrite(LED_PIN_15, LOW);
digitalWrite(LED_PIN_16, LOW);
delay(INTERVALO);
}
// Enciende y apaga los LEDs conectados a los pines 16 y 26 simultáneamente 5 veces
for (int i = 0; i < 5; i++) {
digitalWrite(LED_PIN_16, HIGH);
digitalWrite(LED_PIN_26, HIGH);
delay(INTERVALO);
digitalWrite(LED_PIN_16, LOW);
digitalWrite(LED_PIN_26, LOW);
delay(INTERVALO);
}
// Enciende y apaga todos los LEDs simultáneamente una vez
digitalWrite(LED_PIN_2, HIGH);
digitalWrite(LED_PIN_15, HIGH);
digitalWrite(LED_PIN_16, HIGH);
digitalWrite(LED_PIN_26, HIGH);
delay(INTERVALO);
digitalWrite(LED_PIN_2, LOW);
digitalWrite(LED_PIN_15, LOW);
digitalWrite(LED_PIN_16, LOW);
digitalWrite(LED_PIN_26, LOW);
delay(INTERVALO);
// Delay adicional de 5 segundos al final de la secuencia completa
delay(5000);
} else {
// Si el botón no está presionado, apaga todos los LEDs
digitalWrite(LED_PIN_2, LOW);
digitalWrite(LED_PIN_15, LOW);
digitalWrite(LED_PIN_16, LOW);
digitalWrite(LED_PIN_26, LOW);
}
}
/* CODIGO 2, PROBADO Y FUNCIONANDO */
#define Led1 2
#define Led2 15
#define Led3 16
#define Led4 26
#define Pul1 14
void setup() {
pinMode(Pul1, INPUT);
pinMode(Led1, OUTPUT);
pinMode(Led2, OUTPUT);
pinMode(Led3, OUTPUT);
pinMode(Led4, OUTPUT);
}
void loop() {
if (digitalRead(Pul1) == HIGH){
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
// segunda secuencia
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, LOW);
digitalWrite(Led4, HIGH);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, LOW);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, LOW);
digitalWrite(Led4, LOW);
delay(500);
digitalWrite(Led1, HIGH);
digitalWrite(Led2, LOW);
digitalWrite(Led1, LOW);
digitalWrite(Led2, LOW);
delay(500);
}
else {
digitalWrite(Led1, HIGH);
digitalWrite(Led2, HIGH);
digitalWrite(Led3, HIGH);
digitalWrite(Led4, HIGH);
delay(500);
}
}