Allumage led par commande Bluetooth "==" impossible

Bonjour,

Je cherche à allumer des LEDs, gauche et droite, par commande bluetooth pour créer un clignotant à distance.

Je sais en théorie comment, faire j'ai déjà travaillé avec ce genre de matériel.
Mon programme est le suivant:

#include <SoftwareSerial.h>
char message;

SoftwareSerial bluetooth(11, 10); // (RX, TX) (pin Rx BT, pin Tx BT)

void setup() {
  Serial.begin(9600);
  bluetooth.begin(9600);
 pinMode(5, OUTPUT);
  pinMode(8, OUTPUT);
}
 
void loop() {

  if (bluetooth.available()) {
   message = bluetooth.read();
  
   Serial.print(message);

   if (message = "a") {
    for (;;) {
    digitalWrite(5,HIGH);
    delay(500);
    digitalWrite(5,LOW);
    delay(500);
    }
   }
 
   }
}

Cependant au niveau de la boucle if, si la condition contient un simple égale, je peux envoyer n'importe quel caractère ça allumera quand même la LED (d'ailleurs si j'en met plusieurs ça les allume toutes...).
Et quand je cherche à mettre un strictement égal avec "==", plus rien ne se passe.

Est ce que quelqu'un a une solution ?

Merci d'avance pour vos réponses.

if (message == 'a') 

message est un char et tu fais la comparaison avec une c-string.
Enfin je dis comparaison si tu remplaces le = par ==

If n’est pas une boucle… c’est une condition
La boucle c’est soit votre for(;;) soit la loop() qui tourne en boucle

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.