Commande a distance RF Grove

Bonjour , je suis sur un problème , je souhaite commander a distance deux servomoteurs a l'aide de deux carte arduino et de deux modules RF Grove.
De plus j'envoi un signal que la deuxième carte arduino reçoit en hexa et je souhaite dire en gros "if tu reçois tel lettre en hexa tu appelle tel programme" cependant deux problème ce pose :

  1. je ne sais pas si je dois créer une nouvelle variable pour faire cette fonction if

  2. je ne sais pas vraiment quelle fonction utiliser pour peller un programme

Voila le programme

#include <SoftwareSerial.h>

SoftwareSerial SoftSerial(3, 4); // TX, RX
int buffer[64];
int count=0;
void setup()
{
    SoftSerial.begin(9600);              
    Serial.begin(9600);           

}

void loop()
{
    delay(1000);
//    SoftSerial.write(0xAA);
  //  SoftSerial.write(0xFA);
    //SoftSerial.write(0xE1);

    if (SoftSerial.available())           
    {
        while(SoftSerial.available())         
        {
            buffer[count++]=SoftSerial.read();    
            if(count == 64)break;
        }
        for (int i=0; i<count; i++) {
            Serial.print(buffer[i],HEX);            
        }
        clearBufferArray();          
        count = 0;                  
    
    if (Serial.available())            
    SoftSerial.write(Serial.read());    
//    Serial.println("...");
}




void clearBufferArray()              
{
    for (int i=0; i<count;i++)
    { buffer[i]=NULL;}                 
}

Bonjour,

Il suffit de tester le premier caractère du buffer et d'appeler la fonction en conséquence:

    switch (buffer[0])
    {
      case 0xAA:
        fonction1();
        break;
      case 0xFA:
        fonction2();
        break;
      case 0xE1:
        fonction3();
        break;
    }

Attention au mélange de caractères signés/non signés, tu debrais déclarer buffer comme byte[] et non int[]