Code Arduino ayant servi, dans le cadre du projet ARE 2015, à tester les conditions de température et d'humidité afin de garantir le bon fonctionnement de l'éthylotest. Le code est dédié pour un capteur DHT11. #include #define dht_dpin A0 /** Broche "DATA" du DHT11 */ const byte DHT11_PIN = 5; /** Code d'erreur de la fonction readDHT11() */ enum { DHT11_SUCCESS, //!< Pas d'erreur DHT11_TIMEOUT_ERROR, //!< Temps d'attente dépassé DHT11_CHECKSUM_ERROR //!< Données reçues erronées }; void setup() { /* Initialisation du port série */ Serial.begin(115200); } void loop() { /* Variables d'usage */ byte temperature, humidity; /* Lecture de la température et de l'humidité + gestion des erreurs */ switch (readDHT11(DHT11_PIN, &temperature, &humidity)) { case DHT11_SUCCESS: while((humidity>75 || humidity<55) && (temperature>25 || temperature<15)){ if (humidity > 75) { digitalWrite(LEDpin, HIGH) //LED rouge// } else if (humidity < 55) { digitalWrite(LEDpin, HIGH) //LED bleue// } else{ digitalWrite(LEDpin, HIGH) //LED verte// } if (temperature > 25) { digitalWrite(LEDpin, HIGH) //LED rouge// } else if (temperature < 15) { digitalWrite(LEDpin, HIGH) //LED bleue// } else{ digitalWrite(LEDpin, HIGH) //LED verte// } delay(3000) digitalWrite(LEDpin, LOW) digitalWrite(LEDpin, LOW) digitalWrite(LEDpin, LOW) digitalWrite(LEDpin, LOW) digitalWrite(LEDpin, LOW) digitalWrite(LEDpin, LOW) } if (humidity < 75 and humidity > 55) { digitalWrite(LEDpin, HIGH) //LED verte// } if (temperature > 15 and temperature < 25) { digitalWrite(LEDpin, HIGH) //LED verte// }