from machine import Pin, PWM, time_pulse_us
import time
trig = Pin(15, Pin.OUT)
echo = Pin(14, Pin.IN)
buzzer = PWM(Pin(16))
NGUONG = 30 # cm
def do_khoang_cach():
trig.low()
time.sleep_us(2)
trig.high()
time.sleep_us(10)
trig.low()
thoi_gian = time_pulse_us(echo, 1, 30000) # đo độ rộng xung Echo
if thoi_gian < 0:
return None
khoang_cach = thoi_gian * 0.0343 / 2
return khoang_cach
while True:
kc = do_khoang_cach()
if kc is not None:
print("Khoang cach:", round(kc, 2), "cm")
if kc < NGUONG:
buzzer.freq(1000)
buzzer.duty_u16(30000) # buzzer kêu liên tục
else:
buzzer.duty_u16(0) # buzzer tắt
else:
print("Khong do duoc")
buzzer.duty_u16(0)
time.sleep(0.1)