Temperatur och luftfuktighet övervakning med hjälp av SHT25 och Arduino Nano (4 / 5 steg)
Steg 4: Temperatur och luftfuktighet övervakning kod:
Kan börja med arduino koden nu.
När du använder modulen sensor med arduino, inkluderar vi Wire.h bibliotek. "Wire" bibliotek innehåller funktioner som underlättar i2c kommunikationen mellan sensorn och arduino styrelsen.
Hela arduino koden ges nedan för att underlätta för användaren:
#include < Wire.h >
SHT25 I2C adress är 0x40(64)
#define Addr 0x40
void setup()
{
Initialisera I2C kommunikation som MASTER
Wire.BEGIN();
Initialisera seriell kommunikation, ange baudvärde = 9600
Serial.BEGIN(9600);
Delay(300);
}
void loop()
{
unsigned int data [2].
Starta I2C-överföring
Wire.beginTransmission(Addr);
Skicka luftfuktighet mätning kommando, NO HOLD master
Wire.write(0xF5);
Stoppa I2C sändningen
Wire.endTransmission();
Delay(500);
Begäran 2 byte data
Wire.requestFrom (Addr, 2);
Läs 2 byte data
fuktighet msb, luftfuktighet lsb
IF(Wire.available() == 2)
{
data [0] = Wire.read();
data [1] = Wire.read();
Konvertera data
flyta fuktighet = (((data [0] * 256,0 + data[1]) * 125,0) / 65536.0) - 6;
Utdata till Serial Monitor
Serial.Print ("relativ luftfuktighet:");
Serial.Print(humidity);
Serial.println ("% RH").
}
Starta I2C-överföring
Wire.beginTransmission(Addr);
Skicka temperatur mätning kommando, NO HOLD master
Wire.write(0xF3);
Stoppa I2C sändningen
Wire.endTransmission();
Delay(500);
Begäran 2 byte data
Wire.requestFrom (Addr, 2);
Läs 2 byte data
Temp msb, temp lsb
IF(Wire.available() == 2)
{
data [0] = Wire.read();
data [1] = Wire.read();
Konvertera data
flyta cTemp = (((data [0] * 256,0 + data[1]) * 175.72) / 65536.0) - 46.85;
flyta fTemp = (cTemp * 1,8) + 32;
Utdata till Serial Monitor
Serial.Print ("temperaturen i Celsius:");
Serial.Print(cTemp); Serial.println ("C").
Serial.Print ("temperaturen i Fahrenheit:");
Serial.Print(fTemp);
Serial.println "F".
}
Delay(300);
}
Allt du behöver göra är bränna koden i arduino och kontrollera dina avläsningar på serieporten. Resultatet visas i bilden ovan.