télécommande

Tu as des erreurs dans la lecture de tes boutons.
Voici :

#include <IRremote.h>
#define APPUI 1
const int BUTTON_5 = 5;  //capteur de fin de course porte ouverte entre gnd et d3
const int BUTTON_6 = 6;  //capteur de fin de course porte fermer entre gnd et d2
int IR = 11; // Récepteur IR en broche 11
const byte LED3  = 3; // led rouge en broche 3
const byte LED4  = 4; // led verte en broche 4
IRrecv RCEP(IR);

decode_results RIR; //

void setup()
{
  Serial.begin(9600); // permet de vérifier sur le moniteur série si le code de la touche est le bon
  // sinon cette ligne n'est pas nécessaire
  RCEP.enableIRIn(); // Commencement de la réception
  pinMode(LED3, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(BUTTON_5, INPUT_PULLUP); // valide la résistance de pullup interne au microcontroleur
  pinMode(BUTTON_6, INPUT_PULLUP); // valide la résistance de pullup interne au microcontroleur
  digitalWrite (LED3, LOW);
  digitalWrite (LED4, LOW);
}

void loop()
{
  int ETAT_BP_5 = digitalRead(BUTTON_5);
  if (ETAT_BP_2 == APPUI)  digitalWrite(LED3, LOW);

  int ETAT_BP_6 = digitalRead(BUTTON_6);
  if (ETA_BP_6 == APPUI)  digitalWrite(LED4, LOW);

  if (RCEP.decode(&RIR)) // si il y a une réception sur le capteur
  {
    Serial.println(RIR.value, DEC); // vérification du code de la touche actionnée sur le moniteur série
    // sinon cette ligne n'est pas nécessaire
    if (RIR.value == 0x40bf00ff) // si touche 0 actionnée
    {
      digitalWrite(LED3, LOW); // Les LED s'éteignent
      digitalWrite(LED4, LOW);
    }
    if (RIR.value == 0xfb9) // si touche 1 actionnée
    {
      digitalWrite(LED4, LOW);
      digitalWrite(LED3, HIGH); // La LED verte s'allume
    }
    if (RIR.value == 0x40bf50af) //telecomande differente
    {
      digitalWrite(LED3, HIGH);
    }
    if (RIR.value == 0x40bf906f) //telecommande differente
    {
      digitalWrite(LED4, HIGH);
    }
    if (RIR.value == 0x7ba) // si touche 2 actionnée
    {
      digitalWrite(LED3, LOW);
      digitalWrite(LED4, HIGH); // La LED Rouge s'allume
    }
    RCEP.resume(); // Réception de la prochaine valeur
  }
}