#include <LiquidCrystal.h>
#include <WiFi.h>
#include <PubSubClient.h>
#include <stdio.h>
#include <stdlib.h>
LiquidCrystal lcd(12,13,17,16,27,14);
const int pinControlLampara = 25; // Reemplaza con el número de pin adecuado
int anguloDisparo = 359; // Ángulo de disparo inicial
bool pulsador18Presionado = false;
bool pulsador19Presionado = false;
void setup() {
pinMode(18, INPUT_PULLUP);
pinMode(19, INPUT_PULLUP);
pinMode(25, OUTPUT);
}
void loop() {
// Verifica si el pulsador 18 está presionado
if (digitalRead(18) == LOW) {
pulsador18Presionado = true;
Serial.print("aumentar_luminosidad");
}
else {
pulsador18Presionado = false;
}
if (digitalRead(19) == LOW) {
pulsador19Presionado = true;
}
else {
pulsador19Presionado = false;
}
// Si el pulsador 18 está presionado, aumenta la luminosidad
if (pulsador18Presionado) {
aumentarLuminosidad();
}
if (pulsador19Presionado) {
digitalWrite(25,LOW);
}
}
void aumentarLuminosidad() {
Serial.print("aumentar_luminosidad");
anguloDisparo = anguloDisparo - 1; // Ajusta el valor según tu necesidad
if (anguloDisparo < 0) {
anguloDisparo = 0; // Asegúrate de que no sea menor que 0
}
controlarLampara(anguloDisparo);
delay(200); // Espera 200 ms antes de realizar el siguiente ajuste
}
void controlarLampara(int anguloDisparo) {
int tiempoEspera = anguloDisparo *1000000 / (50*360);
Serial.print("tiempoEspera");
// delay(200);
digitalWrite(25, LOW);
delayMicroseconds(tiempoEspera);
digitalWrite(25, HIGH);
delayMicroseconds(20000-tiempoEspera);
Serial.print(anguloDisparo);
}