from machine import Pin, time_pulse_us
import utime
import time
# Configuración del sensor de proximidad HC-SR04
trigger_pin = Pin(5, Pin.OUT)
echo_pin = Pin(18, Pin.IN)
buzzer = Pin(4, Pin.OUT)
# Función para medir la distancia con el HC-SR04
def medir_distancia():
trigger_pin.off()
sleep_us(2)
trigger_pin.on()
sleep_us(10)
trigger_pin.off()
duracion = time_pulse_us(echo_pin, 1, 1000000) # Tiempo máximo de espera de 1 segundo
if duracion < 0:
return float('inf') # Retorna infinito si hay timeout
distancia_cm = (duracion / 2) / 29.1 # 29.1 us por cm
return distancia_cm
# Función principal
def main():
while True:
# Lectura de distancia
distancia = medir_distancia()
print("Distancia:", distancia, "cm")
if distancia < 200:
activar_buzzer(1000)
print("¡Estás muy cerca de golpearte!")
else:
buzzer.off()
print("Estás a una buena distancia")
def activar_buzzer(duracion):
buzzer.on()
utime.sleep_ms(duracion)
buzzer.off()
utime.sleep_ms(duracion)
# Ejecutar la función principal
main()