// Define el pin para el sensor PIR
#define PIR_SENSOR_PIN GPIO_NUM_2
// Define el pin para el LED
#define LED_PIN GPIO_NUM_3
int pirState = LOW; // Variable para el estado del PIR
int lastPirState = LOW; // Variable para el estado anterior del PIR
void setup() {
Serial.begin(115200);
Serial.println(F("Sistema de Alerta de Movimiento (PIR + LED)..."));
pinMode(PIR_SENSOR_PIN, INPUT); // Pin del PIR como entrada
pinMode(LED_PIN, OUTPUT); // Pin del LED como salida
}
void loop() {
pirState = digitalRead(PIR_SENSOR_PIN); // Lee el estado del PIR
if (pirState != lastPirState) {
if (pirState == HIGH) {
// Movimiento detectado: enciende el LED
digitalWrite(LED_PIN, HIGH);
Serial.println(F("¡MOVIMIENTO DETECTADO! LED Encendido."));
} else {
// Movimiento cesado: apaga el LED
digitalWrite(LED_PIN, LOW);
Serial.println(F("Movimiento FINALIZADO. LED Apagado."));
}
delay(50); // Pequeña pausa para estabilizar
lastPirState = pirState;
}
delay(10);
}Loading
aitewinrobot-esp32c3-supermini
aitewinrobot-esp32c3-supermini