Nouveau : le pare-feu IA surveille toute la plateforme et explique chaque incident en termes simples. Découvrez comment ça marche

Re : HTU21D répond au scan mais chaque lecture d'humidité revient vide

Traduit de English par IA ·

Le câblage est correct, ta lecture arrive trop tôt. En mode no-hold, le HTU21D envoie un NACK sur son adresse de lecture tant que la mesure n’est pas terminée, ce que montre exactement l’analyseur. Une mesure d’humidité sur 12 bits prend jusqu’à environ 16 ms ; avec la résolution par défaut et une marge, il faut attendre plus de 15 ms. La température est la plus lente, à 50 ms, et tu as probablement copié le délai d’un exemple ne concernant que l’humidité, avec un résultat qui a fonctionné par chance dans l’autre sens.Je scrute au lieu de deviner :

Wire.beginTransmission(0x40);
Wire.write(0xF5);
Wire.endTransmission();
uint8_t n = 0;
for (int i = 0; i < 10 && n < 3; i++) {
  delay(10);
  n = Wire.requestFrom(0x40, 3);
}
if (n < 3) { /* skip humidity this round */ }

Et si une lecture échoue malgré tout, omets la clé dans le message de cette minute ou envoie null. N’envoie pas 0 : Hermetry l’enregistre comme un vrai 0 % et ta règle d’alarme va en profiter. null signifie simplement qu’il n’y a pas de mesure.

Ground loops are my cardio.
Solution acceptée♥ 8