int TRIG = D9; // pin para el trigger del sensor ultrasónico
int ECO = D8; // pin para el eco del sensor ultrasónico
int LED = D0; // pin que controla el MOSFET para el LED
long tiempo;
int distancia;
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECO, INPUT);
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
// Enviar pulso
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
// Leer tiempo del eco
tiempo = pulseIn(ECO, HIGH);
Serial.print("Tiempo: ");
Serial.println(tiempo);
// Calcular distancia (velocidad del sonido: 340 m/s, dividido por 2 y convertido a cm)
distancia = tiempo * 0.034 / 2;
// Mostrar distancia en el monitor serial
Serial.print("Distancia: ");
Serial.print(distancia);
Serial.println(" cm");
// Si la distancia es menor a 20 cm, prende el LED
if (distancia < 20) {
digitalWrite(LED, HIGH);
} else {
digitalWrite(LED, LOW);
}
delay(500); // pequeña pausa antes de la siguiente lectura
}