[Risolto] Combinazione Pulsanti

Mi permetto di dirti che come scrivi il codice (indentazione e parentisi graffe) non permette una facile lettura del codice:

void loop()  
{ digitalRead(button1);
  digitalRead(button2);
  digitalRead(button3);
  digitalRead(button4);
  if (button1 == HIGH) 
  { codice[1] = 10;
    i++;
    if (button2 == HIGH) 
    { codice[2] = 9;
      i++;
      if (button3 == HIGH) 
      { codice[3] = 8;
        i++;
        if (button4 == HIGH) 
       { codice[4] = 7;
         i++;
         if (i == 4) 
         {  if (pulsantipremuti[] == sequenza[]) // test errato
            { digitalWrite(led, HIGH);
            }
         }
       }
     }
  }

Come l'ho scritto io è evidente che gli if sono uno DENTRO all'altro, nel tuo codice sembrava quasi fosse un select (if multiplo)
Come le ho scritte io, le graffe chiuse devono essere sulla stessa colonna delle corrispondente graffa aperta. Molto più semplice non perdersi con le chiusure di graffa. Di solito mi sposto di 2 spazi alla volta.
Infatti tu di graffe ne chiudi a bizzeffe e a caso. Una di quelle graffe poi è da mettere moolto prima. La setup() deve avere la sua chiusa graffa PRIMA della loop

void setup()
{
}

void loop()
{
}