#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>

// Inicializa el objeto LiquidCrystal_I2C con la dirección I2C y el tamaño del display LCD
LiquidCrystal_I2C lcd(0x27, 16, 2);

// Define el pin al que está conectado el sensor DS18B20
const int oneWireBus = 4; // Cambia el número del pin según tu configuración

OneWire oneWire(oneWireBus);
DallasTemperature sensors(&oneWire);

void setup() {
  // Inicializa el display LCD
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  
  // Inicializa el sensor DS18B20
  sensors.begin();
}

void loop() {
  // Realiza una lectura de temperatura desde el sensor DS18B20
  sensors.requestTemperatures();
  float temperatureC = sensors.getTempCByIndex(0);

  // Muestra la temperatura en el display LCD
  lcd.setCursor(6, 0);
  lcd.print("    "); // Borra el valor anterior
  lcd.setCursor(6, 0);
  lcd.print(temperatureC, 2); // Mostrar dos decimales de la temperatura

  // Espera un breve período antes de actualizar la lectura
  delay(1000);
}
esp:VIN
esp:GND.2
esp:D13
esp:D12
esp:D14
esp:D27
esp:D26
esp:D25
esp:D33
esp:D32
esp:D35
esp:D34
esp:VN
esp:VP
esp:EN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
temp1:GND
temp1:DQ
temp1:VCC
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2