#include <OneWire.h>//bibliotheque pour les capteur temperature
#include "SDP6x.h"//bibliotheque pour le capteur de pression
#include <DallasTemperature.h>//bibliotheque pour les capteur temperature
#include <Wire.h>//bibliotheque pour les capteur temperature
#include <LiquidCrystal_I2C.h>//toute les bibliotheque a avoir pour temp et lcd
#include <RunningAverage.h>
float difPressure;
byte nike_wr[8] = {
B11100,
B10100,
B11100,
B00000,
B00000,
B00000,
B00000,
B00000
};
byte cho[8] = {
B00000,
B00000,
B00000,
B00000,
B00000,
B00000,
B00000,
B00000
};// creation d'un motif
OneWire oneWire(6);//fil sur la broche 6 arduino Configurez une instance oneWire pour communiquer avec n'importe quel appareil
DallasTemperature sensors(&oneWire); // prendre cette reference la mettre dans dallas temperature
LiquidCrystal_I2C lcd(0x27, 16, 2);// dimension de l'ecran lcd et son addresse
DeviceAddress insideThermometer={0x28, 0x21, 0x4A, 0x25, 0x13, 0x21, 0x01, 0xCF};//addressage des deux sondes
DeviceAddress outsideThermometer={0x28, 0xBF, 0x3A, 0x2C, 0x13, 0x21, 0x01, 0x93};
int h = 00;
int m = 00;
int s = 00;
int i=00;
float moyenne = 0;
int j=0;
RunningAverage Moy(20);
void setup() {
Wire.begin();//commencement
lcd.init();//demarage du lcd
lcd.backlight();//affichage de l'eclairage
lcd.createChar(0, nike_wr);//creation du caractere 0 nommer nikewr
lcd.createChar(1, cho);
Serial.begin ( 9600 ) ;//pour le demarage de la console
//sensors.begin();
sensors.setResolution(insideThermometer, 64);//resolution des sondes le nom suivis de nombre de bit
sensors.setResolution(outsideThermometer, 64);
}
void loop() {
// put your main code here, to run repeatedly:
sensors.requestTemperatures();//envoie la commande pour receptionner les temperature
float w=sensors.getTempC(outsideThermometer);//creation de la variable w pour avoir la temperature de la sonde en degres celsuis
lcd.setCursor(0,0);//affichage a la ligne 0 et colone 0 T1 sur l'ecrant lcd
lcd.print("T1=");
lcd.print(w);
lcd.write(0);
lcd.print("C");//ecriture lcd
float p=sensors.getTempC(insideThermometer);
lcd.setCursor(0,1);
lcd.print("T2=");
lcd.print(p);
lcd.write(0);
lcd.print("C");
//lcd.setCursor(11,0);
//lcd.print(m);
//lcd.print("min");
//lcd.setCursor(11,1);
//lcd.print(s);
//lcd.print("sec");
//s = millis()/1000 % 60; //compteur
// if (s == 59) {
// s = 0;
// delay(1000);
// m++;
// i++;
//lcd.setCursor(15,1);
//lcd.write(1);
// if (m >= 60) {
// m = 0;
// h++;
// lcd.setCursor(15,0);
// lcd.write(1);
// if (h >= 24) {
// h = 0;
// }
// }
// }
// if(i>=30){
// lcd.clear();
// lcd.print("temps programme");
// lcd.setCursor(3,1);
// lcd.print(h);
// lcd.print("h");
// lcd.print(m);
// lcd.print("min");
// delay(2000);
// lcd.clear();
// i=0;
// }
difPressure= SDP6x.GetPressureDiff();//prendre le signal du capteur
difPressure= difPressure*2;
difPressure= difPressure/1.293;
difPressure=sqrt( difPressure);
difPressure= difPressure*3.6;
i=0;
while(i<=20){
difPressure+difPressure;
i++;
}
difPressure=difPressure/20;
Serial.print(difPressure);
Serial.print("\n");
//if( -0.9<SDP6x.GetPressureDiff()<0.0000){
//Serial.print("nul\n");
//} Serial.print(difPressure);
//Serial.print("\n");
//lcd.setCursor(12,1);
//lcd.print(difPressure);
//Serial.println(m);
//Moy.addValue((int)SDP6xx.readPA());
// moyenne =((int)SDP6xx.readPA());
//moyenne = Moy.getAverage();
//moyenne = moyenne/1200;// Convertion en Pa (modèle 25 Pa)
//moyenne = 2*moyenne;
//moyenne=moyenne/1.293;
//moyenne=sqrt(moyenne);// Conversion en m/s
//moyenne=moyenne*3.6;
//lcd.setCursor(12,1);
//lcd.print(moyenne);
//Serial. println(moyenne);
// if(moyenne==nan){
// lcd.print("error"); ;
//}
//Moy.clear();
//delay(1000);
}
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.