Encender 8 LEDs y apagarlos cada uno con su respectivo push

Hola buen día, Estimados tengo una duda respecto a un programa que estoy intentando echar a andar, la verdad es que tengo muy poco tiempo en esto pero tengo la inquietud de correr un programa para el siguiente escenario: Son 8 LEDs y 9 Pushbotton, la idea es que al habilitar el push de inicio enseguida se encienda el LED1, después oprimir el push1 correspondiente al apagado del led1, y enseguida que se encienda aleatoriamente otro led, ejemplo, led5, oprimir push5 para que se apague y se encienda el led7, y apagarlo con push7, y asi sucecivamente hasta que se enciendan y apaguen aleatoriamente 40 veces. Actualmente puedo hacer que se enciendan solo los 8 sin problema, pero si intento poner en el programa una repetición de alguno de los 8 leds, empieza a ser cosas que no el arduino. Alguien tendrá una sugerencia sobre como puedo armarlo de forma correcta?
Anexo imagen de lo que llevo hasta ahorita.Este ejemplo solo estoy simulando con 3 LEDs. Pero el comportamiento es el mismo.
Muchas gracias!!!!

He trasladado su tema de una categoría de idioma inglés del foro a la categoría International > Español @loaner555.

En adelante por favor usar la categoría apropiada a la lengua en que queráis publicar. Esto es importante para el uso responsable del foro, y esta explicado aquí la guía "How to get the best out of this forum".
Este guía contiene mucha información útil. Por favor leer.

De antemano, muchas gracias por cooperar.

Ok muchas gracias, disculpe no volverá a pasar. Saludos

1 Like

Hola estimados, buena noche,
Realice algunos ajustes sobre el código mencionado anteriormente y ya se realizan los procesos de encendido correcto con su respectivo push, sin embargo si pongo un contador no funciona a la par con los leds, ambos codigos por separado funcionan bien pero no simultaneamente. La idea es que cuando entre el pulsadorsw_1 entre la secuencia de LEDs y el contador.
Alguien me podría ayudar con su opinion sobre el por que en el siguiente código no se ejecutan de manera simultanea los 2 void que tengo? soy realmente nuevo en esto y ya llevo varios días y no logro encontrar la forma de que funcionen simultaneamente, dejo el código:

#include <LiquidCrystal.h>
LiquidCrystal lcd(22, 24, 26, 28, 30, 32);
int k;
int rs = 22;
int e = 24;
int d04 = 26;
int d05 = 28;
int d06 = 30;
int d07 = 32;
int numero= 0;
const int reset = 7;

int led1 = 4;
int led2 = 3;
int led3 = 8;  
int led4 = 10;       
int led5 = 34;
int led6 = 38;
int led7 = 42;
int led8 = 46;


const int pulsadorsw_1 = 5;
//int pulsadorsw_2 = ???; 
const int pulsador1 = 2;
const int pulsador2 = 1;
const int pulsador3 = 9;
const int pulsador4 = 11;
const int pulsador5 = 36;
const int pulsador6 = 40;
const int pulsador7 = 44;
const int pausa_pulsador8 = 48;


const int push1 = 0;
const int push2 = 0;
const int push3 = 0;
const int push4 = 0;
const int push5 = 0;
const int push6 = 0;
const int push7 = 0;
const int push8 = 0;

unsigned long tI = 0;  //tiempoInicio
unsigned long tE = 0;  //tiempoEncendido

//unsigned long horas = 0;
//unsigned long minutos = 0;
//unsigned long segundos = 0;
//unsigned long centesimos =0;
//unsigned long milisegundos;


unsigned long PRESSED = 0;

unsigned long horas = 0;
unsigned long minutos = 0;
unsigned long segundos = 0;
unsigned long decimas = 0;
//unsigned long milisegundos = 0;

int a = 0;
int b = 0;
//const int contador = 0;



void setup() 
{
    reloj();
    cuadro(); 
}

void loop()
{
 
}

void reloj()
{
  pinMode(pulsadorsw_1,INPUT_PULLUP);
  lcd.begin(16,2);
  //lcd.setCursor(3,0);
  //lcd.print("CRONOMETRO");
  //Serial.begin(9600);
  //Serial.println("Start the Counter");
  lcd. setCursor(12,0);
  lcd.print("Time");
  lcd. setCursor(0,0);
  lcd.print("h");
  lcd. setCursor(3,0);
  lcd.print("m");
  lcd. setCursor(6,0);
  lcd.print("s");
  lcd. setCursor(9,0);
  lcd.print("ds");

inicio:

do
{
if (digitalRead(pulsadorsw_1) == LOW)
{
a = 1;
b = 0;
while (a == 1)
{ 
contador:
tI = millis();
if (tI % 100 == 0)
{
decimas++;
if (decimas == 10)
{
decimas = 0;
   segundos++;
   }
   if (segundos == 60)
   {segundos = 0;
    minutos++;
   }
 if (minutos == 60)
  {
   minutos = 0;
   horas++;
  }
 lcd.setCursor(0, 1);
 if (horas < 10)
 {
 lcd.print("0");
 }
 lcd.print(horas);
 lcd.print(":");
 lcd.setCursor(3, 1);
 if(minutos < 10)
 {
 lcd.print("0");
 }
 lcd.print(minutos);
 lcd.print(":");
 lcd.setCursor(6, 1);
 if (segundos < 10)
 {
 lcd.print("0");
 }
 lcd.print(segundos);
 lcd.print(":");
 lcd.setCursor(9, 1);
 lcd.print (decimas);	

if (digitalRead(pausa_pulsador8) == false)
 {
 delay(200);
 a = 0;
 b = 1;
 while (b == 1)
 {
 if (digitalRead(pulsadorsw_1) == false)
 {
 goto contador;
 }
 if (digitalRead(reset) == false)
 {
 horas = 0;
 minutos = 0;
 segundos = 0;
 decimas = 0;
 lcd.clear();
 delay(200);
 goto inicio;
 }
 if (digitalRead(reset) == false)
 {
 a = 0;
 horas = 0;
 minutos = 0;
 segundos = 0;
 decimas = 0;
 lcd.clear();
 delay(200);
 goto inicio;
 }
 }
 }
}
}
}
}
while(true);
}

void cuadro()
{
  pinMode(pulsadorsw_1,INPUT_PULLUP);
  //pinMode(pulsadorsw_2,INPUT_PULLUP);
  pinMode(pulsador1,INPUT_PULLUP);
  pinMode(pulsador2,INPUT_PULLUP);
  pinMode(pulsador3,INPUT_PULLUP);
  pinMode(pulsador4,INPUT_PULLUP);
  pinMode(pulsador5,INPUT_PULLUP);
  pinMode(pulsador6,INPUT_PULLUP);
  pinMode(pulsador7,INPUT_PULLUP);
  pinMode(pausa_pulsador8,INPUT_PULLUP);
  pinMode(reset,INPUT_PULLUP);
  pinMode(led1,OUTPUT);
  pinMode(led2,OUTPUT);
  pinMode(led3,OUTPUT);
  pinMode(led4,OUTPUT);
  pinMode(led5,OUTPUT);    
  pinMode(led6,OUTPUT);
  pinMode(led7,OUTPUT);
  pinMode(led8,OUTPUT);
 do {
 if (digitalRead(pulsadorsw_1) == LOW)
    {
  digitalWrite(led1, HIGH);
  boolean pulsado = false;   // original false
        boolean tE = true;  // original true
      tI = millis();
     while(!pulsado && tE)//original while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push1 == PRESSED)
          {
            delay(50);
            pulsado = true;  // original: true
            digitalWrite(led1, LOW);
        }
        }
    }
    if (digitalRead(pulsador1) == LOW)
  {
  digitalWrite(led5, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
       while(!pulsado && tE)        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push5 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led5, LOW);
        }
        }
    }

    if (digitalRead(pulsador5) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }

    if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led2, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push2 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led2, LOW);
        }
        }
    }
if (digitalRead(pulsador2) == LOW)
  {
  digitalWrite(led4, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
     while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push4 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led4, LOW);
        }
        }
    }
if (digitalRead(pulsador4) == LOW)
  {
  digitalWrite(led6, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push6 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led6, LOW);
        }
        }
    }

if (digitalRead(pulsador6) == LOW)
  {
  digitalWrite(led2, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push2 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led2, LOW);
        }
        }
    }

if (digitalRead(pulsador2) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }


if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led3, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push3 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led3, LOW);
        }
        }
    }

if (digitalRead(pulsador3) == LOW)
  {
  digitalWrite(led6, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push6 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led6, LOW);

        }
        }
    }
    if (digitalRead(pulsador6) == LOW)
  {
  digitalWrite(led1, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push1 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led1, LOW);
        }
        }
    }
if (digitalRead(pulsador1) == LOW)
  {
  digitalWrite(led4, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push4 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led4, LOW);

        }
        }
    }
    if (digitalRead(pulsador4) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }

if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led5, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push5 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led5, LOW);
        }
        }
    }
if (digitalRead(pulsador5) == LOW)
  {
  digitalWrite(led2, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push2 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led2, LOW);
        }
        }
    }

if (digitalRead(pulsador2) == LOW)
  {
  digitalWrite(led6, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push6 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led6, LOW);
        }
        }
    }
if (digitalRead(pulsador6) == LOW)
  {
  digitalWrite(led4, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push4 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led4, LOW);
        }
        }
    }

if (digitalRead(pulsador4) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }

    if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led2, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push2 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led2, LOW);
        }
        }
    }
if (digitalRead(pulsador2) == LOW)
  {
  digitalWrite(led5, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push5 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led5, LOW);
        }
        }
    }

    if (digitalRead(pulsador5) == LOW)
  {
  digitalWrite(led3, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push3 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led3, LOW);
        }
        }
    }

if (digitalRead(pulsador3) == LOW)
  {
  digitalWrite(led6, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push6 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led6, LOW);
        }
        }
    }

if (digitalRead(pulsador6) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }

if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led4, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push4 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led4, LOW);
        }
        }
    }

if (digitalRead(pulsador4) == LOW)
  {
  digitalWrite(led7, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push7 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led7, LOW);
        }
        }
    }

if (digitalRead(pulsador7) == LOW)
  {
  digitalWrite(led2, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push2 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led2, LOW);
        }
        }
    }

if (digitalRead(pulsador2) == LOW)
  {
  digitalWrite(led1, HIGH);
  boolean pulsado = false;
        boolean tE = true;
        tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push1 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led1, LOW);
        }
        }
    }

if (digitalRead(pulsador1) == LOW)
  {
  digitalWrite(led8, HIGH);
  boolean pulsado = false;
        boolean tE = true;
      tI = millis();
      while(!pulsado && tE)
        {
          const int push1 = digitalRead(pulsador1);
          const int push2 = digitalRead(pulsador2);
          const int push3 = digitalRead(pulsador3);
          const int push4 = digitalRead(pulsador4);
          const int push5 = digitalRead(pulsador5);
          const int push6 = digitalRead(pulsador6);
          const int push7 = digitalRead(pulsador7);
          const int push8 = digitalRead(pausa_pulsador8);        
          if(push8 == PRESSED)
          {
            delay(50);
            pulsado = true;
            digitalWrite(led8, LOW);
            exit(0);
        }
        }
    } 
 }
 while(true);
}

Los códigos que incluyen delay() solo funcionan en ese ambiente por asi decirlo pero si compartes o unes ese código con otro por supuesto que no va a funcionar.
Eso ocurre por desconocer que hace delay() pues no hace nada. Cuando el código encuentra un delay() solo pierde tiempo sin hacer nada.
Entonces debes reemplazar esas demoras por millis() pero resulta que los cambios no son inmediatos. Ve a documentación y estudia como se hace. Hay varios tutoriales sobre el uso de millis() y las máquinas de estado.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.