Paso 3: código:
El código de arduino de SHT30 puede descargarse desde el repositorio de github-ControlEverythingCommunity
Aquí está el enlace para el mismo:
https://github.com/ControlEverythingCommunity/SHT3...
La hoja de datos de SHT30 se puede encontrar aquí:
https://S3.amazonaws.com/controleverything.Media/c...
Incluimos la biblioteca Wire.h para facilitar la comunicación I2c del sensor con la placa Arduino. También puede copiar el código desde aquí, se da como sigue:
Distribuido con una licencia de libre albedrío.
Se usa cualquier forma desea, beneficio o libre, siempre cabe en las licencias de sus obras anexas.
SHT30
Este código está diseñado para trabajar con el módulo de Mini de I2C SHT30_I2CS de ControlEverything.com.
https://www.controleverything.com/content/Humidit...
#include < Wire.h >
Dirección I2C SHT30 es 0x44(68)
#define Addr 0x44
void setup()
{
Inicializar la comunicación I2C como maestro
Wire.Begin();
Inicializar la comunicación serial, juego velocidad en baudios = 9600
Serial.Begin(9600);
Delay(300);
}
void loop()
{
unsigned int datos [6];
Iniciar transmisión I2C
Wire.beginTransmission(Addr);
Envíe el comando de medición
Wire.Write(0x2C);
Wire.Write(0x06);
Detener la transmisión I2C
Wire.endTransmission();
Delay(500);
Solicitud de 6 bytes de datos
Wire.requestFrom (Addr, 6);
Leer 6 bytes de datos
cTemp msb, lsb cTemp, cTemp crc, humedad msb, lsb de humedad, humedad crc
Si (Wire.available() == 6)
{
datos [0] = Wire.read();
datos [1] = Wire.read();
datos [2] = Wire.read();
datos [3] = Wire.read();
datos [4] = Wire.read();
datos [5] = Wire.read();
}
Convertir los datos
flotador cTemp = (((datos [0] * 256.0) + data[1]) * 175) / 65535.0) - 45;
flotador fTemp = (cTemp * 1.8) + 32;
flotador de humedad = (((datos [3] * 256.0) + data[4]) * 100) / 65535.0);
Salida de datos monitor serial
Serial.Print ("humedad relativa:");
Serial.Print(Humidity);
Serial.println ("% RH");
Serial.Print ("temperatura en grados Celsius:");
Serial.Print(cTemp);
Serial.println ("C");
Serial.Print ("temperatura en grados Fahrenheit:");
Serial.Print(fTemp);
Serial.println ("F");
Delay(500);
}