station météo

Commences par le commencement : lis le message "Règles du forum francophone". Il y a les conseils pour donner TOUS les renseignements en UNE SEULE FOIS.
Cela te permettra de perdre moins de temps et d'éviter d'en faire perdre aux autres.

Exemple : le LCD il est à fils, à 8 fils, il est I2C ?
Où est le lien cliquable (icone chaîne) vers sa documentation ou le site marchand ?
Ta réponse est totalement insuffisante pour que quelqu'un puisse t-aider.

Si tu veux de l'aide il faut y mettre du tien

le lien du produit

j'ai mis les détails dans la première page .pas tout mais quelque uns
et il n'y a pas de branchements directs sur le lcd

j'ai mis les détails dans la première page .pas tout mais quelque uns

Nous n'avons pas le même notion sur ce qu'est "un détail" et je ne pense pas être le seul :

J-M-L:
on ne sait pas ce que vous avez...

Revenons au sujet :

il n'y a pas de branchements directs sur le lcd

Ça veut dire quoi ? Qu'il y a des branchements indirects ou que rien n'a encore été commencé ?

Il y a deux grandes familles de branchement :
soit on connecte tout à un microcontrôleur et il faut beaucoup d'E/S disponibles,
soit on utilise un expenseur I2C, on trouve des modules qui se soudent directement sur un module LCD et qui le plus souvent sont basé sur un PCF8575. En I2C il suffit de 2 fils de commande mais il faut choisir la bibliothèque adaptée.

Quel a été ton choix ou quel sera ton choix ?
Tu as déjà le matériel ou tu te renseignes avant de l'acheter ?

PS : pour quelques euros de plus le DHT22 est bien plus précis que le DHT11.

vu le lien, ce n'est pas un I2C.

il faudra sans doute le connecter comme décrit ici

tant que le programme Hello World de ce lien ne fonctionne pas pour vous, pas la peine d'aller plus loin.
Quand vous réussirez à lire quelque chose sur l'écran alors vous rajoutez le reste du code

vu le lien, ce n'est pas un I2C.

Oui c'est un LCD nu, mais il est possible d'y ajouter un module I2C qui est prévu pour les LCD.
Une petite vérif de sécurité s'impose pour la compatibilité du câblage mais je suis confiant.

bien sûr - mais ça fait un composant à acheter qu'il n'a peut-être pas sous la main pour le projet actuel

68tjs:
Nous n'avons pas le même notion sur ce qu'est "un détail" et je ne pense pas être le seul :
Revenons au sujet :Ça veut dire quoi ? Qu'il y a des branchements indirects ou que rien n'a encore été commencé ?

Il y a deux grandes familles de branchement :
soit on connecte tout à un microcontrôleur et il faut beaucoup d'E/S disponibles,
soit on utilise un expenseur I2C, on trouve des modules qui se soudent directement sur un module LCD et qui le plus souvent sont basé sur un PCF8575. En I2C il suffit de 2 fils de commande mais il faut choisir la bibliothèque adaptée.

Quel a été ton choix ou quel sera ton choix ?
Tu as déjà le matériel ou tu te renseignes avant de l'acheter ?

PS : pour quelques euros de plus le DHT22 est bien plus précis que le DHT11.

je n'ai pas le petit convertisseur qui va sur l'ecran
comme celui ci

j'ai trouvé ça j'ai tout fait mais il me met un message d'erreur :

dht11.h: No such file or directory

alors que j'ai bien tout fait, je l'ai refait mais rien
si quelqu'un voit le problème
et le code

#include <dht11.h>

dht11 DHT11;

#define DHT11PIN 4

void setup()
{
  Serial.begin(9600);
  Serial.println("DHT11 TEST PROGRAM ");
  Serial.print("LIBRARY VERSION: ");
  Serial.println(DHT11LIB_VERSION);
  Serial.println();
}

void loop()
{
  Serial.println("\n");

  int chk = DHT11.read(DHT11PIN);

  Serial.print("Read sensor: ");
  switch (chk)
  {
    case DHTLIB_OK: 
    Serial.println("OK"); 
    Serial.print("Humidity (%): ");
    Serial.println((float)DHT11.humidity, 2);
  
    Serial.print("Temperature (°C): ");
    Serial.println((float)DHT11.temperature, 2);
  
    Serial.print("Temperature (°F): ");
    Serial.println(Fahrenheit(DHT11.temperature), 2);
  
    Serial.print("Temperature (°K): ");
    Serial.println(Kelvin(DHT11.temperature), 2);
  
    Serial.print("Dew PointFast (°C): ");
    Serial.println(dewPointFast(DHT11.temperature, DHT11.humidity));
    
    break;
    case DHTLIB_ERROR_CHECKSUM: 
    Serial.println("Checksum error"); 
    break;
    case DHTLIB_ERROR_TIMEOUT: 
    Serial.println("Time out error"); 
    break;
    default: 
    Serial.println("Unknown error"); 
    break;
  }

  delay(2000);
}

//Celsius to Fahrenheit conversion
double Fahrenheit(double celsius)
{
  return 1.8 * celsius + 32;
}

//Celsius to Kelvin conversion
double Kelvin(double celsius)
{
  return celsius + 273.15;
}

// dewPoint function NOAA
// reference (1) : http://wahiduddin.net/calc/density_algorithms.htm
// reference (2) : http://www.colorado.edu/geography/weather_station/Geog_site/about.htm

double dewPointFast(double celsius, double humidity)
{
  double a = 17.271;
  double b = 237.7;
  double temp = (a * celsius) / (b + celsius) + log(humidity*0.01);
  double Td = (b * temp) / (a - temp);
  return Td;
}

merci

avez vous installé la bibliothèque ? (et si oui laquelle et comment ?)

ah bah en fait c'est bon ça marche

mais la librairie dht elle n y est pas de base sur l'IDE ?

ah oui et si quelqu'un trouve la librairie dht11
envoyez moi le lien s'il vous plait
merci

dragonard:
ah oui et si quelqu'un trouve la librairie dht11

vous avez dit

ah bah en fait c'est bon ça marche

c'est donc que vous avez la bibliothèque...

sinon vous allez dans l'IDE et vous tapez DHT11 dans le menu de recherche de bibliothèques - il y en a plein sur github, donc il faut prendre celle qui va avec votre code

j'en ai essayé plein mais aucunes ne fonctionnent
si quelqu'un aurait trouvé une librairie dht11
envoyez la moi s'il vous plait
merci

M'enfin... :o

Comme votre code vient directement de cet exemple, moi je serais tenté d'utiliser la bibliothèque associée...

rien a faire même en l'ajoutant il me marque :

dht11.h: No such file or directory

et le code :

    #include <dht11.h>
    #define DHT11PIN 4 // broche DATA -> broche 4
     
    dht11 DHT11;
     
    void setup()
    {
      Serial.begin(9600);
      while (!Serial) {
        // wait for serial port to connect. Needed for native USB (LEONARDO)
      }
      Serial.println("DHT11 programme d'essai ");
      Serial.print("LIBRARY VERSION: ");
      Serial.println(DHT11LIB_VERSION);
      Serial.println();
    }
     
    void loop()
    {
      DHT11.read(DHT11PIN);
     
      Serial.print("Humidité (%): ");
      Serial.print((float)DHT11.humidity, 2);
      Serial.print("\t");
      Serial.print("Température (°C): ");
      Serial.println((float)DHT11.temperature, 2);
     
      delay(2000);
    }

Dans le meilleur des cas tu as un bug de ton installation, dans le cas le plus probable le bug est entre la chaise et le clavier.

Dans ce cas le mieux est de recommencer pour avoir une installation propre.
Il n'y a pas que l'IDE qui est à effacer et à réinstaller il y a un autre fichier.
Sous Debian/Ubuntu ce fichier est un fichier caché et il se nomme .arduino15, sous windows je ne sais pas où il est, ni comment il se nomme. Il est à effacer avant de refaire l'installation de l'IDE.

PS :
change :

Serial.begin(9600);

en
Serial.begin(115200);
9600 c'était pour la préhistoire.
Pour le moment tu ne vois de ralentissement mais si le message à beaucoup de caractères tu risques d'en voir un jour et tu ne penseras pas au 9600.
Évidemment il faut aussi changer dans le serial_monitor.

?
je n'ai pas très bien compris

je n'ai pas très bien compris

Il est fort probable que l'installation de la bibliothèque soit foireuse.

Et quelle bibliothèque ?
Les premières bibliothèques pour les DHT11 et 22 étaient des bouses qui ne faisait que générer des erreurs de lecture.
Comme d'habitude dans le monde arduino il traine des antiquités désastreuses comme le Serial.begin(9600).

Quand on ne sait pas où aller le mieux est de passer par le gestionnaire de bibliothèque de l'IDE.