Bonjour a tous,
je suis nouveau ici et j'aurais besoin de votre aide. Je suis actuellement en terminale Sti2d spécialité sin et je doit réaliser un projet.
Notre projet est en fait une station météo indépendante qui affiche les données sur un écran lcd et un écran d'ordi pour faire court. Je m’occupe de la partie sans fils: je dois envoyer les variables recu par les capteurs de météo (relie a une arduino uno) a une deuxième arduino uno. Pour sa je doit utiliser 2 modules xbee (xbp24). J'ai déja réussi a les configurer grâce a X-ctu. Je doit maintenant envoyer les valeurs d'un potentiomètre(pour simplifier les capteurs pour le moment) qui s’affichent dans le moniteur de série arduino a la deuxième arduino qui elle doit les recevoir.
J'ai déjà deux programmes:
mon programme qui envoi qui d'apres moi est juste
int sensorPin =A0;
int sensorValue =0; //Valeur a emettre
void setup() {
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(sensorPin); //Lecture de la valeur
Serial.println(sensorValue); //Emission de la valeur
delay(100);
}
//Configuration du XBEE
void Configuration() {
Serial.print("+++" );
char thisByte = 0;
while (thisByte != '\r') {
if (Serial.available() > 0) {
thisByte = Serial.read();
}
}
Serial.print("ATRE\r" );
Serial.print("ATDL0\r" ); // sent to xbee 0
Serial.print("ATMY1\r" ); // this xbee is 1
Serial.print("ATID1111\r" );
Serial.print("ATCN\r" );
}
et mon programme recepteur qui je pence a deux trois truc a coriger
String inputString = "";
int ChoseRecu;
void setup() {
Serial.begin(9600);
setDestination();
}
void loop() {
if (Serial.available() > 0) {
char inByte = Serial.read();
// save only ASCII numeric characters (ASCII 0 - 9):
if (isDigit(inByte)){
inputString = inputString + inByte;
}
// if you get an ASCII newline:
if (inByte == '\n') {
// convert the string to a number:
ChoseRecu = inputString.toInt();
Serial.print("Valeur recu: " );
Serial.println(ChoseRecu);
inputString = "";
}
}
}
// Configuration XBEE
void setDestination() {
Serial.print("+++" );
char thisByte = 0;
while (thisByte != '\r') {
if (Serial.available() > 0) {
thisByte = Serial.read();
}
}
Serial.print("ATRE\r" );
Serial.print("ATMY0\r" );
Serial.print("ATID1111\r" );
Serial.print("ATCN\r" );
delay(100);
}
Les programment ne marchent pas, je n'arive pas a recevoir les variables, je ne suis meme pas sur qu'elle est envoyer corectement. Donc si quelqu'un poeut m'aider sa serait sympa.
MERCI d'avance et désoler si j'ai été trop long !