Quand on a une fonction (n'importe laquelle) et qu'on veut l'alléger en déportant une partie du code dans une nouvelle ou une autre fonction, c'est une marche à suivre que personnellement je juge simple et sécurisée.
- on crée la nouvelle fonction
- on y copie le code à déporter
- on y ajoute tout ce qui doit être ajouté ( passage de variable par exemple)
- on ne supprime pas de suite le code dans la fonction initiale mais on le met en commentaire ( entre /* et */ )
En général celà ne fonctionne pas du premier coup parce qu'on oublie toujours quelque chose. Cela permet de revenir facilement en arrière pendant la mise au point : on ne perd pas son original. - Une fois que la nouvelle fonction est correcte on supprime le code de la fonction de départ.
C'est une simple méthodologie.
On peut tout laisser dans la fonction loop() mais dès qu'elle fera plusieurs pages écran elle deviendra vite ingérable.
PS la bibliothèque Adafruit n'est pas la meilleure, comme souvent.
Adafruit c'est une entreprise commerciale dont le but est de gagner du fric pas d'optimiser les bibliothèques. Une bibliothèque doit être écrite le plus rapidement possible et tant que la non optimisation ne fait pas diminuer les ventes ils n'amélioreront jamais.
Si tu gère les erreurs avec la bibliothèque tu verra apparaître de nombreuses erreurs de type "Checksum"
Celle que je t'ai indiqué, écrite par un bénévole du forum donc hors périmètre fric, n'en a quasiment pas car elle n'utilise pas la fonction digitalRead() qui est trop lente pour le DH11 ou le DH11 est trop rapide pour la fonction digitalRead().