[Aide] Disfonctionnement "Capteur de température" DHT11

Je ne vois pas ce qui empêcherait de gérer le DHT11 et la RTC dans deux fonctions séparées.
Au contraire le programme y gagnerait en clarté.

Je fais deux remarques :
DHT
Je ne connais pas l'origine de ta bibliothèque, il en existe beaucoup qui portent le même nom (foutoir arduino) mais elles ne se valent pas toutes.
Je te conseille celle là qui se trouve dans le playground de ce site.
Dernière version ici : Arduino/libraries/DHTlib at master · RobTillaart/Arduino · GitHub
Un conseil : pour quelques centimes de plus tu as le DHT22 qui est bien plus précis, je ne comprend toujours pas pourquoi il existe encore autant de références qui préconisent le DHT11.

J'ai donc essayé de faire un "Void draw2" qui n'a rien donné

  1. L'IDE est un peu particulière dans le sens où tu n'écris qu'un source en C/C++ très partiel et que c'est l'IDE qui construit le vrai source en C/C++, mais toi tu ne le vois pas ce vrai fichier.
    Perso je place les fonctions supplémentaires après les fonction setup() et loop(), cela n'a peut-être aucune importance mais au moins cela à toujours fonctionné.

  2. Quand je déplace des portions de code de loop() vers une autre fonction je fais un copier coller dans la nouvelle fonction, je ne supprime pas de suite le code dans loop() je le met juste en commentaire. C'est plus simple pour faire des aller et retour pour détecter ce qui manque dans le transfert .
    --> souvent c'est un problème de visibilité des variables.
    Quand c'est réglé je fais le ménage dans loop().

  3. void loop() n'est pas le nom de la fonction. La fonction s'appelle loop() tout simplement.
    le préfixe void (dont la traduction en français est "vide") indique au compilateur que la fonction ne renvoie rien : elle n'a pas de ligne : return machin;
    Si une fonction bidule renvoit

  • rien il faut la déclarer void bidule()
  • un entier il faut la déclarer int bidule()
  • un float il faut la déclarer float bidule()
    etc......

Si une fonction reçoit un entier il faut la déclarer :
xxx truc(int variable)
écrire truc() est équivalent à écrire truc(void)
void sert dans les deux sens : rien en entrée ou rien en sortie.