#define SensorPin 12
int Contador = 0;
int Estado = 0;
int EstadoAnterior = 1; // Inicializamos en 1 porque al principio no debería haber obstáculo
void setup() {
Serial.begin(115200);
pinMode(SensorPin, INPUT);
}
void loop() {
Estado = digitalRead(SensorPin);
Serial.println(Estado);
// Si el sensor detecta un obstáculo (Estado == 0) y antes no lo estaba detectando (EstadoAnterior == 1)
if (Estado == 0 && EstadoAnterior == 1) {
Serial.println("Clamshell detectado");
}
// Si ya no hay obstáculo (Estado == 1) y antes sí lo estaba detectando (EstadoAnterior == 0)
if (Estado == 1 && EstadoAnterior == 0) {
Contador++; // Aumenta el contador cuando el clamshell se haya separado
Serial.println("Obstáculo desaparecido");
Serial.print("Contador: ");
Serial.println(Contador);
}
// Actualizamos el EstadoAnterior para la siguiente iteración
EstadoAnterior = Estado;
delay(100);
}