Erreur exit status 1

bonjour

je me permets de prendre ma plume car je suis debutant dans le domaine arduino.
je cherche à commander mon extracteur de salle de bain avec un arduino uno et un capteur dht 11
j ai un message erreur exit status 1
je n arrive pas resoudre ce probleme
auriez vous une piste
cdt

Pas de piste tant qu'on n'a pas vu ton code. Pour le poster sur le forum, respecte les recommandations du message épinglé en haut du forum Français

Pour avoir une piste il faut avoir des indices.
Or, là, tu ne donnes aucune info à part un message d'erreur abscons.
Donne le code qui te pose problème.
Et poste le tel que demandé dans "Les bonnes pratiques du forum francophone" en le mettant en forme avec les balises <code/>

Je vais rajouter une couche en répétant ce que disent les deux autres forumeurs :slight_smile:
La piste est qu'il y a un surement problème dans ton code.

bonsoir

merci de vos retours et bien desole de ne pas avoir respecte les regles du forum.
j essaie de creer seul mon programme sans le recuperer deja cree afin d apprendre mais j avoue que la tache est hardue et que seul c est complique
j essaie de comprendre la logique de la programmation et je suis pret a prendre des cours a ce sujet
voici le fameux code qui doit avoir des failles si j en crois vos retours
la difficulte pour moi est de fixer un seuil humidite et de savoir comment la distinction se fait au niveau de la machine entre la valeur humidite et temperature
j espere que la mis en forme du code est bien celle que reclame le forum ..
merci de vos retours et de votre patience

#include <DHT.h>
#include <DHT_U.h>
#include <dht_nonblocking.h>
#define DHT_SENSOR_TYPE DHT_TYPE_11
const int DHT_SENSOR_PIN = 7;
DHT_nonblocking dht_sensor(DHT_SENSOR_PIN, DHT_SENSOR_TYPE);
const int RELAY = 12;
int cons_humi = 53 %; // consigne humidite
float humidite = DHT_SENSOR_TYPE DHT_TYPE_11.realHumidite();

void setup() {
  // put your setup code here, to run once:
  pinMode(RELAY, OUTPUT);
  pinMode(HUMIDITE, INPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  if (humidite > cons_humi) {
    digitalWrite(RELAY, HIGH);
  } else {
    digitalWrite(RELAY, LOW);
  }
}

Très bien

Tu devais avoir un autre message d'erreur que le seul "Erreur exit status 1".
Et ce message devait indiquer clairement l'erreur.
Je pense qu'il devait t'indiquer un problème sur cette ligne:

int cons_humi = 53 %; // consigne humidite

Le symbole % est l'opérateur pour le modulo et ne peut pas être utilisé dans ce cas.
Avec la librairie que tu utilises, l'humidité est retournée comme un float donc il faudrait faire une comparaison entre des float
Il faudrait changer la ligne comme ceci:

float cons_humi = 0.53 // consigne humidite

Je ne sais pas quelle librairie tu as utilisé mais je pense qu'il y a une erreur ici:

float humidite = DHT_SENSOR_TYPE DHT_TYPE_11realHumidite();

[quote="fabseg86, post:5, topic:1220447"]

On dirait que tu mélanges plusieurs bibliothèques. Il faut en choisir une et utiliser ses fonctions.
Tu peux prendre celle-ci :

et regarder l'exemple

il est très bien expliqué.

Pour ton besoin, tu dois lire l'humidité dans la loop et faire ton test par rapport à la consigne pour actionner ton relais. Lorsque tu auras réussi à faire ça, tu devras t'intéresser à l'hystérésis, mais ça peut attendre un peu...

bonsoir et merci de tes retours
il y a effectivement un message plus complet concernant mon erreur
il doit y avoir une erreur de librairy qui n est pas trouve
voici le message complet que je trouve avec le code modifie

#include <DHT.h>
#include <DHT_U.h>

#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>

#include <DHT.h>
#include <DHT_U.h>
#define DHT_SENSOR_TYPE DHT_TYPE_11
const int DHT_SENSOR_PIN = 7;
const int RELAY = 12;
int cons_humi = 53 // consigne humidite
float humidite = DHT_SENSOR_TYPE DHT_TYPE_11.realHumidite();

void setup() {
  // put your setup code here, to run once:
  pinMode(RELAY, OUTPUT);
  pinMode(HUMIDITE, INPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  if (humidite > cons_humi) {
    digitalWrite(RELAY, HIGH);
  } else {
    digitalWrite(RELAY, LOW);
  }
}

voici le message erreur

In file included from C:\Users\fabri\Documents\Arduino\sketch_jan17b\sketch_jan17b.ino:2:0:
C:\Users\fabri\Documents\Arduino\libraries\DHT_sensor_library/DHT_U.h:36:10: fatal error: Adafruit_Sensor.h: No such file or directory
#include <Adafruit_Sensor.h>
^~~~~~~~~~~~~~~~~~~
compilation terminated.

exit status 1

Compilation error: exit status 1

j espere ne pas encombre le forum avec une formulation non conforme

Il faut installer cette librairie. Elle est proposée dans le gestionnaire de librairie de l'IDE.

rebonsoir

tout d abord merci pour votre aide precieuse et surtout rapide ..
j ai corrige des elements du code qui posait probleme mais a chaque fois j ai de nouveau probleme qui apparaissent
je me permets de remettre à nouveau le code re-ecrit et les message erreur

#include <DHT.h>
#include <DHT_U.h>

#include <Adafruit_CircuitPlayground.h>
#include <Adafruit_Circuit_Playground.h>

#include <DHT.h>
#include <DHT_U.h>
#define DHT_SENSOR_TYPE DHT_TYPE_11
const int DHT_SENSOR_PIN = 7;
const int RELAY = 12;
int cons_humi = 53; // consigne humidite
float humidite;

void setup() {
  // put your setup code here, to run once:
  pinMode(RELAY, OUTPUT);
  pinMode  (DHT_SENSOR_PIN , INPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  if (humidite > cons_humi) {
    digitalWrite(RELAY, HIGH);
  } else {
    digitalWrite(RELAY, LOW);
  }
}

message erreur compilation qui parle de pWm alors qu il n ya pas de pwm
et j ai comme la sensation qu il manque encore des librairie

bon je reste a votre ecoute

C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp: In member function 'void Adafruit_CircuitPlayground::playTone(uint16_t, uint16_t, bool)':
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:238:3: error: 'PLLFRQ' was not declared in this scope
PLLFRQ = (PLLFRQ & 0xCF) | 0x30; // Route PLL to async clk
^~~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:238:3: note: suggested alternative: 'PCIFR'
PLLFRQ = (PLLFRQ & 0xCF) | 0x30; // Route PLL to async clk
^~~~~~
PCIFR
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:3: error: 'TCCR4A' was not declared in this scope
TCCR4A = _BV(COM4A0) | _BV(PWM4A); // Clear on match, PWMA on
^~~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:3: note: suggested alternative: 'TCCR0A'
TCCR4A = _BV(COM4A0) | _BV(PWM4A); // Clear on match, PWMA on
^~~~~~
TCCR0A
In file included from c:\users\fabri\appdata\local\arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7\avr\include\avr\io.h:99:0,
from c:\users\fabri\appdata\local\arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7\avr\include\avr\pgmspace.h:90,
from C:\Users\fabri\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Arduino.h:28,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground/utility/Adafruit_CPlay_LIS3DH.h:30,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground/Adafruit_Circuit_Playground.h:21,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:30:
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:16: error: 'COM4A0' was not declared in this scope
TCCR4A = _BV(COM4A0) | _BV(PWM4A); // Clear on match, PWMA on
^
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:16: note: suggested alternative: 'COM0A0'
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:30: error: 'PWM4A' was not declared in this scope
TCCR4A = _BV(COM4A0) | _BV(PWM4A); // Clear on match, PWMA on
^
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:239:30: note: suggested alternative: 'PWM'
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:240:3: error: 'TCCR4B' was not declared in this scope
TCCR4B = _BV(PWM4X) | scalebits; // PWM invert
^~~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:240:3: note: suggested alternative: 'TCCR0B'
TCCR4B = _BV(PWM4X) | scalebits; // PWM invert
^~~~~~
TCCR0B
In file included from c:\users\fabri\appdata\local\arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7\avr\include\avr\io.h:99:0,
from c:\users\fabri\appdata\local\arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7\avr\include\avr\pgmspace.h:90,
from C:\Users\fabri\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/Arduino.h:28,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground/utility/Adafruit_CPlay_LIS3DH.h:30,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground/Adafruit_Circuit_Playground.h:21,
from C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:30:
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:240:16: error: 'PWM4X' was not declared in this scope
TCCR4B = _BV(PWM4X) | scalebits; // PWM invert
^
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:240:16: note: suggested alternative: 'PWM'
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:241:3: error: 'TCCR4D' was not declared in this scope
TCCR4D = 0; // Fast PWM mode
^~~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:241:3: note: suggested alternative: 'TCCR0A'
TCCR4D = 0; // Fast PWM mode
^~~~~~
TCCR0A
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:242:3: error: 'TCCR4E' was not declared in this scope
TCCR4E = 0; // Not enhanced mode
^~~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:242:3: note: suggested alternative: 'TCCR0A'
TCCR4E = 0; // Not enhanced mode
^~~~~~
TCCR0A
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:243:3: error: 'DT4' was not declared in this scope
DT4 = 0; // No dead time
^~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:243:3: note: suggested alternative: 'DD4'
DT4 = 0; // No dead time
^~~
DD4
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:249:3: error: 'TC4H' was not declared in this scope
TC4H = hi1;
^~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:249:3: note: suggested alternative: 'PC4'
TC4H = hi1;
^~~~
PC4
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:250:3: error: 'OCR4C' was not declared in this scope
OCR4C = lo1; // TOP
^~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:250:3: note: suggested alternative: 'OCR2A'
OCR4C = lo1; // TOP
^~~~~
OCR2A
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:252:3: error: 'OCR4A' was not declared in this scope
OCR4A = lo2; // 50% duty
^~~~~
C:\Users\fabri\Documents\Arduino\libraries\Adafruit_Circuit_Playground\Adafruit_CircuitPlayground.cpp:252:3: note: suggested alternative: 'OCR2A'
OCR4A = lo2; // 50% duty
^~~~~
OCR2A

exit status 1

Compilation error: exit status 1

Je ne comprends pas pourquoi tu utilises Circuit_Playground avec une UNO. Cette librairie est spécifique à certaines cartes d'Adafruit.
Avec une UNO et si tu veux utiliser les librairies Adafruit tu devrais regarder ici:

Il faut enlever ces lignes.

Tu ne déclares par ton DHT, et tu ne lis pas la mesure d'humidité. Donc, c'est pas encore bon...

Ici tu déclares deux bibliothèques pour ton capteur : c'est inutile, il faut en choisir une seule.

En fait, j'ai l'impression que tu te lances sans savoir où tu vas. Tu dois trouver des tutos et les essayer sans les comprendre, donc tu n'y arrives pas.

Voici un très bon tutoriel :

Il utilise un capteur 'nu', pas un module DHT11. Comme on ne sait pas ce que tu utilises, ce n'est peut-être pas adapté. Peux-tu poster un image ou une photo de ton DHT ?

bonsoir

bon je persiste dans mon aventure ...non sans douleur concernant le capteur DHT11
j aisuivi le tutos propose et la j ai un message qui remonte :
FAILED TO READ FROM DHT SENSOR!
je ne sais pas a quoi cela est du
j ai verifier conexion ,le cable la carte uno avec un autre sketch concernant un autre capteur et la tout fonctionne
voici mon capteur https://www.gotronic.fr/rechercher.htm?action=search&qm=dht
le capteur est neuf
est ce que vous voyez une explication a ce probleme
merci par avance
bon dimanche

Tu as connecté comme indiqué dans le tuto ?

When the sensor is facing you, pin numbering starts at 1 from left to right

image

Le GND doit être commun entre le capteur et l'arduino. Explique nous précisément comment tu connectes.

Bonsoir
Voici une photo du branchement
J ai bien respecte ce qui est demande
Le fil orange sur 5v
Le fil fu milieu sur le pin declare dans sketch
L autre sur le gnd
A priori le souci lecture ne vient pas câblage
Si vs avez hypothèse...
Cordialement

Bonjour,

Sur ta photo on voit que le +5V et le signal sont inversés (le module n'a pas le même brochage que le composant seul).
image

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