Commande Bluetooth, nouvel essaie

Bon alors voilà : Mon projet est de faire tourner un moteur dans les deux sens, avec une arduino Uno + Shield. Pour cela, j'ai intégré deux relais, qui change le sens du courant, et donc change le sens de rotation du moteur.

Maintenant je dois intégrer un capteur bluetooth. J'ai fait plusieurs tentatives, toute on menée a un échec.
Je crois que que l'erreur viens du branchement de mon capteur bluetooth (actuellement branche sur le port UART) , et bien sur e ma programmation Arduino.

Voila mon code e nquestion avc tentative d'intégrer le bluetooth :

void __ardublockDigitalWrite(int pinNumber, boolean status)
{
  pinMode(pinNumber, OUTPUT);
  digitalWrite(pinNumber, status);
}

void setup()
{ 
  __ardublockDigitalWrite(2, LOW);
  __ardublockDigitalWrite(3, LOW);
  Serial.begin(9600); // Demarrer la liaison a 9600bauds

}

void loop()
{
   while (Serial.available() == 0); // Attendre de recevoir des caracteres
   char c = Serial.read(); // Lire les caracteres recus et les stocker dans c
   
   if(c =='1') // Si c = 1
   {
    __ardublockDigitalWrite(2,HIGH);
    __ardublockDigitalWrite(3, LOW);// Ouvrir le relais
   }
   
   if(c == '2') // Si c = 0
   {
     __ardublockDigitalWrite(2,LOW);
     __ardublockDigitalWrite(3, HIGH); // Fermer le relais
   }
   
   if(c == '0') // Si c = 0
   {
    __ardublockDigitalWrite(2,LOW);
    __ardublockDigitalWrite(3, LOW); // Ouvrir le relais
   }
   
}

J'envoie mes données via l'application android Serial Bluetooth Terminal.

Est-ce que quelqu'un aurais une idée ? Je suis désespéré :cry: :cry: :cry:

Merci par avance.

Tu devrais lire ce tuto, qui t'en dira plus sur la gestion des communications série.

Essaye ceci :

void __ardublockDigitalWrite(int pinNumber, boolean status)
{
  digitalWrite(pinNumber, status);
}

void setup()
{
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  __ardublockDigitalWrite(2, LOW);
  __ardublockDigitalWrite(3, LOW);
  Serial.begin(9600); // Demarrer la liaison a 9600bauds

}

void loop()
{
  if (Serial.available()) { // Attendre de recevoir des caracteres
    char c = Serial.read(); // Lire les caracteres recus et les stocker dans c

    if (c == '1') // Si c = 1
    {
      __ardublockDigitalWrite(2, HIGH);
      __ardublockDigitalWrite(3, LOW);// Ouvrir le relais
    }

    else if (c == '2') // Si c = 0
    {
      __ardublockDigitalWrite(2, LOW);
      __ardublockDigitalWrite(3, HIGH); // Fermer le relais
    }

    else if (c == '0') // Si c = 0
    {
      __ardublockDigitalWrite(2, LOW);
      __ardublockDigitalWrite(3, LOW); // Ouvrir le relais
    }
  }
}

en plus d'ouvrir un deuxième post en laissant tomber les réponses du premier

J'ai copié ton code mais sa m'affiche le message d'erreur suivant :

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x59
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x59

ne pas flasher avec le Bluetooth branché