# CREATE A REVERSE CAR PARKING SYSTEM AS THE DISTANCE IS BELOW 50 CM THE BUZZER SHOULD BUZZ WITH MAXIMUM INTENSITY , 100 CM 50 PERCENT AND SO
# distance between car and ultrasonic sesnor is inversely proportional to buzzer intensity ,so create a function which maps buzzer intensity to distance
from machine import Pin, SoftI2C, time_pulse_us, PWM
from ssd1306 import SSD1306_I2C
from time import sleep
TRIG_PIN = 16
ECHO_PIN = 17
SOUND_SPEED = 340.29
buzzerPin = 18
trig = Pin(TRIG_PIN, Pin.OUT)
echo = Pin(ECHO_PIN, Pin.IN)
buzzer = PWM(Pin(buzzerPin))
def measure_distance():
trig.value(0)
sleep(0.000002)
trig.value(1)
sleep(0.00001)
trig.value(0)
duration = time_pulse_us(echo, 1)
distance = (duration * SOUND_SPEED) / (2 * 10000)
return distance
def update_buzzer(distance):
intensity=int(1023-distance)
buzzer.duty(intensity)
sleep(2)
while True:
distance = measure_distance()
update_buzzer(distance)
print('Brightness',intensity)
print(f"Distance: {distance:.2f} cm")
sleep(2)