Bonjour,
je réalise un projet des capteurs de poids avec une esp8266 wemos d1 mini et je veux détecter un seuil de poids pour allumer une led , pour se faire j'ai brancher la led au GPIO5 et aux GND en utilisant une résistance et le problème c'est que la led s'allume jamais même en arrivant a ce seuil
voila la partie du code qui est sensé faire le boulot :
Le code :
//------------------------------------------------------------/
// Variables globales /
//------------------------------------------------------------/
static const uint8_t D1 = 5;
pinMode(D1 , OUTPUT ); // Initialise la broche D1 comme sortie
//*============================================================*/
static int periode_poids = 0;
int seuil = 57;
void loop()
{
poidsTmoins1=poidsCourant;
seuilTmoins1=seuilCourant;
reconnect();
client.loop();
delay(SBAG_CONFIG.intervalleMesure); // délai entre deux mesures de poids 200ms
LectureBoutons(); // surveillance boutons tare et calibration
//------ mesure poids--------------------
poidsCourant = weight.get_units(2); // lecture poids
periode_poids ++;
if(periode_poids == 5)
{
if(poidsCourant > seuil)
{
digitalWrite(D1, HIGH); // Met la broche D1 au niveau haut = allume la LED
}
else
{
digitalWrite(D1, LOW); // Met la broche D1 uu niveau Bas = allume la LED
}
periode_poids = 0;
}
Post mis dans la mauvaise section, on parle anglais dans les forums généraux. ➜ déplacé vers le forum francophone.
La rédaction de votre message ne répond pas aux critères attendus. Il n’aura sans doute pas de réponse tant que vous n’aurez pas pris en compte et mis en application les recommandations listées dans “Les bonnes pratiques du Forum Francophone”
si si j'ai le setup() et le loop() c'est moi j'ai copier juste la partie qui m’intéresse car le reste du programme est déjà en marche et aucun soucis d'ailleurs même en introduisant cette partie sa marche quand même mais par contre la led ne s'allume pas
OK, pas facile de dire où se trouve l'erreur sans voir le code entier.
Commence pas corriger ton premier message en plaçant les balises CODE (touche </>) autour de ton code STP.
Ta commande d'allumage de la LED se situe dans deux if imbriquées. Pour en savoir plus, il faut que tu affiches les valeurs de periode_poids et poidsCourant pour voir si elles vérifient les tests. Le problème est peut-être juste lié à ça, et nous on ne peut pas le savoir puisqu'on ne peut pas faire tourner le code.
Ca permet d'afficher sur la même ligne les valeurs de periode_poids et poidsCourant, avec une tabulation entre les deux (attention, ça peut aller très vite...)
Après, tu ouvres la console et tu règles la vitesse de communication à 115200 (pas 9600) dans le menu déroulant tout en bas :
Ensuite tu uploades ton sketch et tu regardes si tu peux avoir des valeurs qui permettent d'allumer la LED, c'est à dire :
periode_poids = 5
poidsCourant > seuil (a priori 57)
Normalement, si tu arrives à avoir ces deux conditions remplies, ta LED devrait s'allumer...