#include <OneWire.h>
#include <DallasTemperature.h>
#define LED_VERDE 4
#define LED_AMARRILLO 7
#define LED_ROJO 8
OneWire ourWire(2); // Se establece el pin 2 como bus OneWire
DallasTemperature sensors(&ourWire); // Se declara una variable u objeto para nuestro sensor
void setup() {
pinMode(LED_VERDE, OUTPUT);
pinMode(LED_AMARRILLO, OUTPUT);
pinMode(LED_ROJO, OUTPUT);
delay(1000);
Serial.begin(9600);
sensors.begin(); // Se inicia el sensor
}
void loop() {
sensors.begin(); // Se reinicia la comunicación con el sensor
sensors.requestTemperatures(); // Se envía el comando para leer la temperatura
float temp = sensors.getTempCByIndex(0); // Se obtiene la temperatura en ºC
Serial.print("Temperatura = ");
Serial.print(temp);
Serial.println(" C");
if (temp >= 0 && temp < 33) {
digitalWrite(LED_VERDE, HIGH);
digitalWrite(LED_AMARRILLO, LOW);
digitalWrite(LED_ROJO, LOW);
} else if (temp >= 33 && temp < 34.50) {
digitalWrite(LED_VERDE, LOW);
digitalWrite(LED_AMARRILLO, HIGH);
digitalWrite(LED_ROJO, LOW);
} else if (temp >= 34.50 && temp <= 50) {
digitalWrite(LED_VERDE, LOW);
digitalWrite(LED_AMARRILLO, LOW);
digitalWrite(LED_ROJO, HIGH);
} else {
digitalWrite(LED_VERDE, LOW);
digitalWrite(LED_AMARRILLO, LOW);
digitalWrite(LED_ROJO, LOW);
}
delay(1000);
}