aiuto accendere 2 led con un pulsante

salve a tutti ragazzi, mi presento mi chiamo Francesco e sono alle prime armi con arduino, vi spiego il problema, devo fare accendere 2 led con un pulsante, i led si dovbrebbero accendere alla pressione del pulsante, e spegnere con la successiva pressione del pulsante, i led dovrebbero avere un ritardo di qualche secondo, cercando su internet ho trovato parecchi tutorial di accensione di un led con un pulsante, ma niente di 2 led con pulsante, vi metto qui sotto quello che avevo visto io:

int pinLed=13;
int bottone=2;
int statoLed=LOW;

void setup() {
pinMode(pinLed, OUTPUT);
pinMode(bottone, INPUT);
}

void loop() {
int leggiBottone=digitalRead(bottone);

if (leggiBottone == 1)
{
if (statoLed == LOW)
{

statoLed=HIGH;
digitalWrite(pinLed, statoLed);
delay(1000);

} else {

statoLed=LOW;
digitalWrite(pinLed, statoLed);
delay(1000);

}
}
}

Buongiorno,
essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del nostro regolamento, ti chiedo cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ...

Inoltre devi includere il codice negli appositi tag code code previsto dal regolamento editando il tuo post

Grazie. :slight_smile:

daltanius29877: Come ti è stato indicato, in conformità al regolamento, punto 7, devi editare il tuo primo post (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More -> Modify che si trova in basso a destra del tuo post) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag:

[code] _il _tuo_ codice_ [/code]

così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati. Grazie.

Guglielmo

La cosa più semplice è quella di collegare i due led allo stesso canale 13 :slight_smile:

Altrimenti dai un altro canale al secondo led (che chiameremo Led2) e lo metti sul pin 12 (ma puoi metterlo sui qualsiasi altro pin)

int pinLed =13;
int pinLed2=12;
int bottone=2;
int statoLed=LOW;
 
void setup() {                
  pinMode(pinLed, OUTPUT);  
  pinMode(pinLed2, OUTPUT);
  pinMode(bottone, INPUT);
}
 
void loop() {
  int leggiBottone=digitalRead(bottone);
 
  if (leggiBottone == 1)
  {
     if (statoLed == LOW)
     {
 
       statoLed=HIGH;
       digitalWrite(pinLed, statoLed);
       digitalWrite(pinLed2, statoLed);

       delay(1000);
 
     } else {
 
       statoLed=LOW;
       digitalWrite(pinLed, statoLed);
       digitalWrite(pinLed2, statoLed);
       delay(1000);
 
     }
  }
}

Oltre a tutto quello che ti hanno consigliato io ci aggiungerei di prendere le forbici e potare (metaforicamente parlando) il programma
È inutilmente barocco per un semplice led.
Sfronda, sfronda tanto o quando dovrai fare lavori seri farai programmi ingestibilmente lunghi