J'utilise un module ESP-12F (ESP8266) avec le microprogramme NodeMCU sur lequel le module BME280 est activé. J'ai testé le capteur en interrogeant manuellement la température et l'humidité, tout va bien.Pourquoi bme280.startreadout() ne se déclenche qu'une fois?
Maintenant, je voulais utiliser la fonction bme280.startreadout(...)
afin d'envoyer périodiquement les valeurs à mon serveur (ou simplement les imprimer sur le terminal série dans ESPlorer pour l'instant). Le code suivant ne renvoie aucune erreur, mais la fonction de rappel ne s'exécute qu'une seule fois. Quelqu'un peut-il me dire pourquoi? Lorsque j'envoie ce script au module et que je l'exécute, la température correcte est écrite une fois au bout de 2 secondes, c'est tout.
Voici quelques détails sur le firmware:
NodeMCU custom build by frightanic.com
branch: dev
commit: 79013ae79a85798cba470ac1168e75c755f58f42
SSL: true
modules: adc,adxl345,am2320,apa102,bme280,crypto,dht,file,gpio,hmc5883l,http,i2c,l3g4200d,mqtt,net,node,ow,pwm,spi,tmr,tsl2561,uart,websocket,wifi
build built on: 2016-12-05 17:30
powered by Lua 5.1.4 on SDK 1.5.4.1(39cb9a32)
Mise à jour: Je n'ai pas pensé avant: est startreadout
signifiait pour déclencher la fonction de rappel une seule fois? Ou pour le mettre en termes JavaScript: fonctionne-t-il comme setTimeout
par opposition à setInterval
?
Est-ce fermé ou avez-vous besoin de plus de commentaires? –