/* USER CODE BEGIN WHILE */
while (1)  // Boucle infinie
{
  if (DHT22_Start()) {  // Démarre la communication avec le DHT22
    hum1 DHT22_Read();  // Lit le premier octet de l'humidité
    hum2 DHT22_Read();  // Lit le second octet de l'humidité
    temp1 DHT22_Read();  // Lit le premier octet de la température
    temp2 DHT22_Read();  // Lit le second octet de la température
    SUM DHT22_Read();  // Lit la somme de contrôle envoyée par le capteur
    CHECK hum1 hum2 temp1 temp2;  // Calcule la somme de contrôle
    if (CHECK == SUM) {  // Vérifie si la somme de contrôle est correcte
      if (temp1 127) {  // Vérifie si le bit de signe est défini (température négative)
        temp_Celsius = (float)temp2 10 * (-1);  // Calcule la température en Celsius (négative)
      else {
        temp_Celsius = (float)((temp1 << 8) | temp2) / 10;  // Calcule la température en Celsius (positive)
      }
      temp_Fahrenheit temp_Celsius 32;  // Convertit la température en Fahrenheit
      Humidity = (float)((hum1 << 8) | hum2) / 10;  // Calcule l'humidité

      printf("temp_Celsius: %0.1f °C\n"temp_Celsius);  // Affiche la température en Celsius
      printf("temp_Fahrenheit: %0.1f °F\n"temp_Fahrenheit);  // Affiche la température en Fahrenheit
      printf("Humidity: %0.1f %%\n"Humidity);  // Affiche l'humidité
    }
  }
  HAL_Delay(1000);  // Attend 1000 ms (1 seconde) avant la prochaine lecture
}
/* USER CODE END WHILE */