// (o\---/o)
// ( , , )
// ___,--.(_(Y)_),--.____
//| "--" "--" |
//| Don't Worry Be Happy |
//| HECTOR E. VILLARREAL |
//| 2023 |
//|______________________|
// ) | (
// (___,'.___)
//Datos de temperatura de Dallas DS18B20 a google sheets ver 1.00 09-12 23
//---------------------------------------------------------------------------------------------------
//Librerias
//--------------------------------------------------------------
#include <LiquidCrystal.h>
#include <Arduino.h>
//--------------------------------------------------------------
#include <OneWire.h>
#include <DallasTemperature.h>
//--------------------------------------------------------------
//Declaración de los PULSADORES, VARIABLES Y LED
//--------------------------------------------------------------
//Declaración de DALLAS ESP32
// Pin donde se conecta el bus 1-Wire
const int oneWirePin = 6;
OneWire oneWireBus(oneWirePin); //Se establece el pin 6 como bus OneWire
//--------------------------------------------------------------
// Instancia a las clases OneWire y DallasTemperature
DallasTemperature sensorDS18B20(&oneWireBus);
// arrays to hold device address
DeviceAddress insideThermometer;
//--------------------------------------------------------------
const int value0 = 196009052; // Constante ID del dispositivo
//volatile int estado = HIGH; //estado inicial
const int ledPin = LED_BUILTIN; // LED EMBEBIDO
unsigned long lastDebounceTimeEntrada = 0; // variable tiempo antirrebotes
unsigned long debounceDelay = 300; // Retardo antirrebotes
//--------------------------------------------------------------
//Declaración del LCD ESP32
//--------------------------------------------------------------
LiquidCrystal lcd(10, 1, 3, 2, 0, 9); // Corresponde a (RS, EN, D4, D5, D6, D7)
//--------------------------------------------------------------
// Declaracion variables
volatile int valuetemp = 0;
int value1 = 0; // variable de registro
volatile int value2 = 0; // variable Contador de entrada
volatile int value3 = 0; // variable Contador de salida
//------------------------------------------------------------------------------------------------------
//INICIALIZACION y CONFIGURACION del sistema
//------------------------------------------------------------------------------------------------------
void setup() {
Serial.begin(9600);
sensorDS18B20.begin(); // Iniciamos el bus 1-Wire
Serial.println("Dallas Temperature Control");
// locate devices on the bus
Serial.print("Locating devices...");
Serial.print("Found ");
Serial.print(sensorDS18B20.getDeviceCount(), DEC);
Serial.println(" devices.");
//--------------------------------------------------------------
#include "mensaje_inicio.h" //Mensaje de inicio
//--------------------------------------------------------------
// Configura el led BUILTIN
pinMode(LED_BUILTIN, OUTPUT);
//--------------------------------------------------------------
lcd.clear();
lcd.setCursor(0, 0); // Selecciono la Primera linea
lcd.print("Contr.Temp v 1.0"); // escribimos en la primera linea
delay(3000);
}
//--------------------------------------------------------------
//--------------------------------------------------------------
//Programa a ejecutar LOOP
//--------------------------------------------------------------
void loop() {
sensorDS18B20.requestTemperatures(); //Se envía el comando para leer la temperatura
float valuetemp=sensorDS18B20.getTempCByIndex(0); //Se obtiene la temperatura en ºC
// Leemos y mostramos los datos de los sensores DS18B20
Serial.print("Temperatura sensor 0: ");
Serial.print(sensorDS18B20.getTempCByIndex(0));
Serial.println(" C");
// incremento de cantidad de registros
value1 ++;
//valuetemp= value2;
value2 = random(0,70);
value3 = random(0,100000);
// Envía DATOS al lcd
lcd.clear();
lcd.setCursor(0, 0); // Selecciono la Primera linea
lcd.print("Contr.Temp v 1.0"); // escribimos en la primera linea
lcd.setCursor(0, 1);
lcd.print("T=");
lcd.print(valuetemp);
lcd.setCursor(10, 1);
lcd.print((char)223);
lcd.print("C");
// Destellos del led
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Loading
esp32-c3-devkitm-1
esp32-c3-devkitm-1
Loading
ds18b20
ds18b20