/* Affichage de température sur ecran LCD avec capteur TMP36 tutoarduino.wordpress.com merci de votre visite */ // Inclure la librairie LiquidCrystal #include // Initialisation de la librairie Liquid Crystal LiquidCrystal lcd(12, 11, 5, 4, 3, 2); int sensorPin = A0; float temperature[10]; int index=0 ; void setup() { // Configuration de l'afficheur 16 caractères en 2 lignes lcd.begin(16, 2); // Ecriture de la ligne 1 lcd.print("Temperature :"); } void loop() { // positionnement du curseur en ligne 2 1ere position ( on partd e zéro) lcd.setCursor(0, 1); //acquisition de la valeur analogique dans sensorValue // de 0 à 1023 -> 0 à 5V int sensorValue = analogRead(sensorPin); //transformation en milliVolts dans outputValue float outputValue = (((float)(sensorValue))*5000.0)/1023.0; //Calcul de la température en fonction des milliVolts float outputTemp = ( (float) outputValue - 500.0) /10.0; //insertion de la température dans le tableau temperature[index] = outputTemp; //incrémentation de l'index modulo 10 index = (index + 1) % 10; // calcul de la moyenne ( Méthode barbare, une boucle for l'aurait mieux fait) float tempMoy = (temperature[0]+temperature[1]+temperature[2]+temperature[3]+temperature[4]+temperature[5]+temperature[6]+temperature[7]+temperature[8]+temperature[9])/10; // Afficgahe d ela température lcd.print(tempMoy); // delai de 500ms entre deux calculs delay(500); }