#include <OneWire.h>
#include <DallasTemperature.h>
// Pin donde está conectado el pin de datos (DQ) del DS18B20
#define ONE_WIRE_BUS 2
// Configurar el bus de OneWire en el pin especificado
OneWire oneWire(ONE_WIRE_BUS);
int i_tempC;
// Pasar la referencia del bus OneWire al objeto DallasTemperature
DallasTemperature sensors(&oneWire);
void setup() {
// Iniciar comunicación serie para mostrar resultados en el monitor serie y 9,10 y 11 salidas
Serial.begin(9600);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
// Iniciar el sensor DS18B20
sensors.begin();
}
void loop() {
// Pedir al sensor que realice una lectura de temperatura
sensors.requestTemperatures();
// Leer la temperatura en grados Celsius
float tempC = sensors.getTempCByIndex(0); // Si tienemos más de un sensor cambiamos el índice
i_tempC=int (tempC);
if (i_tempC>31){
digitalWrite(11,1);
digitalWrite(10,0);
}
else { digitalWrite(10,1);
digitalWrite(11,0);
}
// Mostrar la temperatura en el monitor serie
Serial.print("Temperatura: ");
Serial.print(tempC);
Serial.println(" °C");
// Pausa de 1 segundo antes de la siguiente lectura
delay(1000);
}