Arduino-xbee-potentiometre

Arduino-xbee-potentiometre - Langages fonctionnels - Programmation

Marsh Posté le 08-11-2013 à 21:39:47    

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
 

  • //sender!


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
 
 

  • //receiver !


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 !

Reply

Marsh Posté le 08-11-2013 à 21:39:47   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed