I use the Arduino Uno
this the data sheet i use the 25Pa
data sdp-610 25 Pa
#include "SDP6xx.h"
#include <OneWire.h>
#include <DallasTemperature.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>//toute les bibliotheque a avoir pour temp et lcd
#include <Wire.h>
// #include <RunningAverage.h>
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(150);
void setup() {
Wire.begin();
Serial.begin(115200);
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);
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");
j++;
//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;
// }
while(j==1){
//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;
// if(moyenne==nan){
// lcd.print("error"); ;
//}
Serial.println(moyenne);
lcd.setCursor(13,1);
lcd.print(moyenne);
j=0;}
//Moy.clear();
//delay(1000);
}```
this is the entire code
i use this for code
[SDP6xx.zip|attachment](upload://zt4hhpgtZYXa4Qb4rRAwpcix3pC.zip) (3,8 Ko)
and other library they are for another sensor who use one wire and dallastemp library the sensor called DS18B20 but in fact this information isnt use full