comunication xbee arduino et stepper, capteurs vers arduino "poste de comande"

Bonsoir
je suis ne train de programmer ma station météo avec un moteur et boutons pour fermer "l'ouverture" en cas de pluie
sauf que j'ai de nouveau un problème
je débute avec XBee et je n'y connais rien
le premier code (celui qui mesure avec les capteurs) échoue à la compilation (j'ai le message no maching funtion ....) bref voici le message d'erreur et il me met aussi que je n'ai pas défini les boutons, mais je ne sais pas comment les définir, car c'est le module XBee qui prend la commande
message d'erreur 1 voir post 2 car je suis limité à 9000 caractères
le code 1 (celui qui prend les données avec les capteurs)

#include <Wire.h>
#include <SFE_BMP180.h>
#include <SoftwareSerial.h>
#include <AccelStepper.h>

SFE_BMP180 bmp180;
SoftwareSerial XBee(0, 1);
AccelStepper stepper1(AccelStepper::FULL4WIRE, 2, 3, 4 ,5);

void setup() {  

  Serial.begin(9600);
  XBee.begin(9600);

  bool success = bmp180.begin();

  if (success) {
    Serial.println("BMP180 init success");
  }
  
  stepper1.setMaxSpeed(5000);
  stepper1.setSpeed(0);
  
}

void loop() {

  if (Serial.available())
  { 
    XBee.write(Serial.read());
      }
  if (XBee.available())
  { 
    Serial.write(XBee.read());
  }
   if (XBee.read(bouton1 == LOW)){
    steppeer1.setSpeed(5000);
   }
   if (XBee.read(bouton2 == LOW)){
    steppeer1.setSpeed(-5000);
   }
     else {
    stepper1.setSpeed(0);
  }
  stepper1.runSpeed();

  char status;
  double T, P;
  bool success = false;

  status = bmp180.startTemperature();

  if (status != 0) {
    delay(1000);
    status = bmp180.getTemperature(T);

    if (status != 0) {
      status = bmp180.startPressure(3);

      if (status != 0) {
        delay(status);
        status = bmp180.getPressure(P, T);

        if (status != 0) {
          Serial.print("Pressure: ");
          Serial.print(P);
          Serial.println(" hPa");

          if (Serial.available())
          { 
          XBee.write(Serial.read());
          }
          if (XBee.available())
          { 
          Serial.write(XBee.read());
          }

          if (XBee.read(bouton1 == LOW)){
          steppeer1.setSpeed(5000);
          }
          if (XBee.read(bouton2 == LOW)){
          steppeer1.setSpeed(-5000);
          }
          else {
          stepper1.setSpeed(0);
          }
          stepper1.runSpeed();

          delay(10000);

          Serial.print("Temperature: ");
          Serial.print(T);
          Serial.println(" C");

          if (Serial.available())
          { 
          XBee.write(Serial.read());
          }
          if (XBee.available())
          { 
          Serial.write(XBee.read());

          if (XBee.read(bouton1 == LOW)){
          steppeer1.setSpeed(5000);
          }
          if (XBee.read(bouton2 == LOW)){
          steppeer1.setSpeed(-5000);
          }
          else {
          stepper1.setSpeed(0);
          }
          stepper1.runSpeed();
          
          }
        }
      }
    }
  }
}

le deuxième problème est celui avec le deuxième code (celui qui fait le "poste des commandes")
il me met "Stepper 1 was not declared in this scope"
mais comme le Stepper 1 est utilisé avec l'arduino qui prend les mesures, je ne sais pas comme définir ce stepper1
le code 2

#include <SoftwareSerial.h>

SoftwareSerial XBee(0, 1);

const int bouton1 = 2;
const int bouton2 = 3;

void setup()
{
  XBee.begin(9600);
  Serial.begin(9600);
}

void loop()
{
  if (Serial.available())
  { 
    XBee.write(Serial.read());
      }
  if (XBee.available())
  { 
    XBee.write(XBee.read());
      }

   if (digitalRead(bouton1 == LOW)){
    XBee.write(steppeer1.setSpeed(5000));
   }
   if (digitalRead(bouton2 == LOW)){
    XBee.write(steppeer1.setSpeed(-5000));
   }
   else {
    XBee.write(stepper1.setSpeed(0));
  }
    XBee.write(stepper1.runSpeed());
}

avez-vous une idée ??????
Merci
cdt

message d'erreur 1

Arduino : 1.8.13 (Windows 10), Carte : "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino: In function 'void loop()':

BPM_180_en_hPa:36:18: error: 'bouton1' was not declared in this scope

if (XBee.read(bouton1 == LOW)){

^~~~~~~

BPM_180_en_hPa:37:5: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:37:5: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(5000);

^~~~~~~~~

stepper1

BPM_180_en_hPa:39:18: error: 'bouton2' was not declared in this scope

if (XBee.read(bouton2 == LOW)){

^~~~~~~

BPM_180_en_hPa:40:5: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(-5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:40:5: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(-5000);

^~~~~~~~~

stepper1

BPM_180_en_hPa:78:25: error: 'bouton1' was not declared in this scope

if (XBee.read(bouton1 == LOW)){

^~~~~~~

BPM_180_en_hPa:79:11: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:79:11: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(5000);

^~~~~~~~~

stepper1

BPM_180_en_hPa:81:25: error: 'bouton2' was not declared in this scope

if (XBee.read(bouton2 == LOW)){

^~~~~~~

BPM_180_en_hPa:82:11: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(-5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:82:11: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(-5000);

^~~~~~~~~

stepper1

BPM_180_en_hPa:103:25: error: 'bouton1' was not declared in this scope

if (XBee.read(bouton1 == LOW)){

^~~~~~~

BPM_180_en_hPa:104:11: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:104:11: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(5000);

^~~~~~~~~

stepper1

BPM_180_en_hPa:106:25: error: 'bouton2' was not declared in this scope

if (XBee.read(bouton2 == LOW)){

^~~~~~~

BPM_180_en_hPa:107:11: error: 'steppeer1' was not declared in this scope

steppeer1.setSpeed(-5000);

^~~~~~~~~

C:\Users\Hadrien\Documents\Arduino\BPM_180_en_hPa\BPM_180_en_hPa.ino:107:11: note: suggested alternative: 'stepper1'

steppeer1.setSpeed(-5000);

^~~~~~~~~

stepper1

Plusieurs bibliothèque trouvées pour "SoftwareSerial.h"

Utilisé : C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SoftwareSerial

Non utilisé : C:\Users\Hadrien\Documents\Arduino\libraries\EspSoftwareSerial

exit status 1

'bouton1' was not declared in this scope

Ce rapport pourrait être plus détaillé avec
l'option "Afficher les résultats détaillés de la compilation"
activée dans Fichier -> Préférences.

encore MERCI à vous
cdt

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