Bonjour à tous!
Je travail depuis plus d'un mois sur un projet intégrant un module radio.
J'ai donc besoin des développeurs les plus généreux de ce forum pour m'aider! :3
Mon problème est surement simple, mais je n'ai pas encore trouvé de solution...
J'aimerais simplement faire que à la réception d'un certain message, l'arduino recepteur allume une LED (par exemple).
Voici les deux parties du code d'exemple:
Le recepteur:
#include <VirtualWire.h>
byte message[VW_MAX_MESSAGE_LEN];
byte messageLength = VW_MAX_MESSAGE_LEN;
void setup(){
Serial.begin(9600);
Serial.println("Arduino pret");
vw_setup(2000); //bps
vw_rx_start();
}
void loop(){
if (vw_get_message(message, &messageLength)){
Serial.print("Recu: ");
for (int i = 0; i < messageLength; i++){
Serial.write(message[i]);
if(message == byte("hello world")){
digitalWrite(13, HIGH);
delay(500);
}
}
Serial.println();
}
}
L'emetteur:
#include <VirtualWire.h>
void setup(){
vw_setup(2000); // bps
}
void loop(){
send("Hello world");
delay(1000);
}
void send (char *message){
vw_send((uint8_t *)message, strlen(message));
vw_wait_tx();
}
Le code du recepteur me pose problème. Je ne sais pas de quel type est le message qu'il reçoit... Un byte? Un char? Et comment pourrais-je le comparer à une valeur ? Le code ci-dessus me sort une belle erreur "error: ISO C++ forbids comparison between pointer and integer [-fpermissive]"...
Merci d'avance et bonne journée! <3