Bugg

Bonjours, j’ai un bugg avec ce code mais je trouve pas d’ou vien le problème. tout marche sauf la led 4 qui allume mais s’ éteins pas pouver vous m’aider svp

#include <IRremote.h>

int RECV_PIN = 2;
int led1 = 3;
int led2 = 4;
int led3 = 5;
int led4 = 6;
int itsONled = {0,0,0,0};

#define code1 15045 // r
#define code2 47685 // v
#define code3 31365 // j
#define code4 64005 // b

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
}

void loop() {
if (irrecv.decode(&results)) {
unsigned int value = results.value;
switch(value) {
case code1:
if(itsONled[1] == 1) {
digitalWrite(led1, LOW);
itsONled[1] = 0;
} else {
digitalWrite(led1, HIGH);
itsONled[1] = 1;
} break;

case code2:
if(itsONled[2] == 1) {
digitalWrite(led2, LOW);
itsONled[2] = 0;
} else {
digitalWrite(led2, HIGH);
itsONled[2] = 1;
}
break;
case code3:
if(itsONled[3] == 1) {
digitalWrite(led3, LOW);
itsONled[3] = 0;
} else {
digitalWrite(led3, HIGH);
itsONled[3] = 1;
}
break;

case code4:
if(itsONled[4] == 1) {
digitalWrite(led4, LOW);
itsONled[4] = 0;
} else {
digitalWrite(led4, HIGH);
itsONled[4] = 1;

}
break;
}
Serial.println(value); // you can comment this line
irrecv.resume(); // Receive the next value
}
}

Les indices un tableau commencent à 0, donc de 0 à 3 pour itsOnLed:
itsOnLed[0] : premier élément
itsOnLed[1] : deuxième élément
Etc

Tu as un décalage, retranche 1 à l'indice dans l'utilisation du tableau

parfait sa marche merci