#include <Arduino.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Define el pin del pulsador y la dirección I2C de la pantalla LCD
const int pulsadorPin = 2; // Cambia esto al pin que uses para el pulsador
const int lcdAddress = 0x27; // Cambia esto según la dirección I2C de tu pantalla
LiquidCrystal_I2C lcd(lcdAddress, 16, 2);
int contador = 0;
bool pulsadorEstadoAnterior = LOW;
bool pulsadorEstadoActual = LOW;
void setup() {
// Configura el pulsador como entrada
pinMode(pulsadorPin, INPUT_PULLUP);
// Inicializa la pantalla LCD I2C
lcd.init();
lcd.backlight();
// Inicializa el monitor serial
Serial.begin(9600);
Serial.println("Contador de Pulsador:");
}
void loop() {
// Lee el estado actual del pulsador
pulsadorEstadoActual = digitalRead(pulsadorPin);
// Verifica si el pulsador ha sido presionado
if (pulsadorEstadoActual == HIGH && pulsadorEstadoAnterior == LOW) {
contador++;
}
// Actualiza el estado anterior del pulsador
pulsadorEstadoAnterior = pulsadorEstadoActual;
// Muestra el contador en la pantalla LCD y el monitor serial
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Contador: ");
lcd.setCursor(0, 1);
lcd.print(contador);
Serial.print("Contador: ");
Serial.println(contador);
delay(100); // Pequeña pausa para evitar rebotes del pulsador
}