/* ESP32 WiFi Scanning example */
#define BLYNK_TEMPLATE_ID "TMPL28GJ7dA-Y"
#define BLYNK_TEMPLATE_NAME "calse esp32"
#define BLYNK_AUTH_TOKEN "gDB_JfinwrLzY1tnNmg1KlFBky5IwGSJ"
#define BLYNK_PRINT Serial
#include <BlynkSimpleEsp32.h>
#include <WiFi.h>
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
char auth[] = BLYNK_AUTH_TOKEN;
int pinLed = 32;
int pinluz = 35;
int pinTrig= 15;
int pinEcho= 21;
BlynkTimer timer;
float distancia=0;
float tiempo = 0;
// Función para enviar dato desde Blynk
BLYNK_WRITE(V0) {
int valorboton = param.asInt();
if (valorboton == HIGH) {
digitalWrite(pinLed, HIGH);
} else {
digitalWrite(pinLed, LOW);
}
}
// Función sensor de luz
void sensorluz() {
int valorluz = analogRead(pinluz);
Blynk.virtualWrite(V1, valorluz);
}
void sensordistancia() {
digitalWrite(pinTrig, LOW);
delayMicroseconds(10);
digitalWrite(pinTrig, HIGH);
delayMicroseconds(10);
digitalWrite(pinTrig, LOW);
tiempo = pulseIn(pinEcho,HIGH);
distancia = 0.0172 * tiempo;
Blynk.virtualWrite(V2, distancia);
}
void setup() {
Serial.begin(115200);
pinMode(pinLed, OUTPUT);
pinMode(pinTrig, OUTPUT);
pinMode(pinEcho, INPUT);
Blynk.begin(auth, ssid, pass);
// Configurar intervalos para la función sensor de luz y sensor de distancia
timer.setInterval(1000, sensorluz);
timer.setInterval(1000, sensordistancia);
}
void loop() {
Blynk.run();
timer.run();
}