from time import sleep
from machine import Pin, ADC, I2C, PWM
from i2c_lcd import I2cLcd
from hcsr04 import HCSR04


ultrasonic = HCSR04(trigger_pin=13, echo_pin=12, echo_timeout_us=1000000)
AddressOfLcd = 0x27
i2c = I2C(0, scl=Pin(19), sda=Pin(18), freq=400000)
lcd = I2cLcd(i2c, AddressOfLcd, 2, 16)
led1 = Pin(2,Pin.OUT)
led2 = Pin(4,Pin.OUT)
led3 = Pin(5,Pin.OUT)
buzzer = PWM(Pin(16, Pin.OUT))
buzzer.freq(4186)
buzzer.duty(0)
while True:
    distance = ultrasonic.distance_cm()
    print('Distance', 'cm', '|', distance/2.54, 'Inch')
    lcd.clear()
    lcd.putstr('Distance: {:.2f} cm'.format(distance))
    if distance<= 150:
        led1.on()
        led2.off()
        led3.off()
    elif distance<= 250:
        led1.off()
        led2.on()
        led3.off()
    elif distance<= 350:
        led1.off()
        led2.off()
        led3.on()
        buzzer.duty(512)
    else:
        led1.off
        led2.off
        led3.off
        buzzer.duty(0)
    sleep(5)
$abcdeabcde151015202530fghijfghij
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
ultrasonic1:VCC
ultrasonic1:TRIG
ultrasonic1:ECHO
ultrasonic1:GND
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
bz1:1
bz1:2