Étape 3: Arduino Code pour capteur Temp/Hum sI70xx
OK, nous sommes tous filaire vers le haut, vous avez exécuté l’esquisse de Scanner I2C, il trouve votre appareil, donc je suppose que nous sommes prêts pour un code.
Je n’est pas écrire le croquis suivant et, bien sûr, je ne me souviens plus où j’ai trouvé ça tellement je ne peux pas crédit l’entité correcte pour elle. Si vous le reconnaître et savoir où il a de s’il vous plaît laissez-moi savoir si je peux mettre à jour ce convenablement.
#include
const int ADDR = 0 x 40 ;
int X0, X 1, Y0, Y1, Y2, Y3 ;
double X, Y, X_out, Y_out1, Y_out2 ;
void setup() {}
Serial.Begin(19200) ;
Wire.Begin() ;
Delay(100) ;
Wire.beginTransmission(ADDR) ;
Wire.endTransmission() ;
pinMode(13,OUTPUT) ;
}
void loop() {}
/ ** Envoyer la commande d’ouverture de mesure de température ** /
Wire.beginTransmission(ADDR) ;
Wire.Write(0xe3) ;
Wire.endTransmission() ;
Serial.Print("Temp") ;
Serial.Print("\t") ;
Serial.println("RH") ;
/ ** Lire les données de température ** /
digitalWrite(13,HIGH) ;
Wire.requestFrom(ADDR,2) ;
if(Wire.available() < = 2) ;
{X0 = Wire.read() ;
X1 = Wire.read() ;
X0 = X0 << 8 ;
X_out = X 0 + X1 ; }
/ ** Calcule et affiche la température ** /
X=(175.72*X_out)/65536 ;
X = X-46,85 ;
Serial.Print(X) ;
Serial.Print("C") ;
Serial.Print("\t") ;
/ ** Envoyer la commande d’ouverture de mesure de l’humidité relative ** /
Wire.beginTransmission(ADDR) ;
Wire.Write(0xE5) ;
Wire.endTransmission() ;
/ ** Lire les données d’hygrométrie ** /
Wire.requestFrom(ADDR,2) ;
if(Wire.available() < = 2) ;
{Y0 = Wire.read() ;
Y2 = Y0/100 ;
Y0 = Y0 % 100 ;
Y1 = Wire.read() ;
Y_out1 = Y2 * 25600 ;
Y_out2 = Y0 * 256 + Y1 ; }
/ ** Calcule et affiche l’humidité relative ** /
Y_out1 = (125 * Y_out1) / 65536 ;
Y_out2 = (125 * Y_out2) / 65536 ;
Y = Y_out1 + Y_out2 ;
Y = Y-6 ;
Serial.Print(Y) ;
Serial.println("%") ;
digitalWrite(13,LOW) ;
Delay(300) ;
Voici les éléments ajoutés par Brad White 07/12/2015
Serial.println() ; Ajoute une ligne vide entre la lecture sur le moniteur de la série
Delay(1000) ; ralentir un peu choses pour plus de lisibilité
fin de Brad de déconner avec cette esquisse
}
Le fichier .ino pour cette esquisse est attaché. Double-cliquez dessus pour le charger automatiquement dans votre interface Arduino.