*
Robotix 2022




Sélecteur avec "switch/case"

L'instructions switch et case permettent un meilleur contrôle du déroulement du programme en sélectionnant des parties de code en fonction des conditions. Par exemple, si une entrée analogique a une entrée qui est est égale à 0xE01F, une action est exécutée et une autre action réalisée si l'entrée est égale à 0xC03F, etc...

Dans notre exemple ci-contre les constantes hexadécimales :
#define code1 0xE01F
#define code2 0xC03F
#define code3 0x807F

ont élé inclues dans les variables code1, code2 et code3.

  • Trouvez ici un script pour relever les codes de votre télécommande.

















  • #include "Servo.h"
    #include "IRremote.h"

    // codes télécommande
    #define code1 0xE01F
    #define code2 0xC03F
    #define code3 0x807F


    // remote control
    int IR_signal = 3;
    IRrecv irrecv(IR_signal);
    decode_results results;

    void setup()
    {
    pinMode(IR_signal, INPUT);
    irrecv.enableIRIn();
    }

    void loop()
    {
    if(irrecv.decode(&results) ) {
    unsigned int value = results.value;

    switch(value){

    case code1:
    commande_A(); // exécuter fonction
    break;

    case code2:
    commande_B(); // exécuter fonction
    break;

    case code3:
    commande_C(); // exécuter fonction
    break;
    } // switch
    irrecv.resume();
    } // if decode
    } // loop