from machine import Pin, I2C
import time
from hcsr04 import HCSR04
from lcd_i2c import I2cLcd
# Configure LCD
def init_lcd():
i2c = I2C(scl=Pin(5), sda=Pin(4))
lcd = I2cLcd(i2c, 0x27, 2, 16)
return lcd
# Get distance
def get_distance(sensor):
return sensor.distance_cm()
# Display distance in LCD
def display_distance(lcd, distance):
lcd.clear()
lcd.putstr("Distance:\n{} cm".format(distance))
print('Distance:', distance, 'cm')
# Main function
def main():
lcd = init_lcd()
# Configure ultrasonic sensor
TRIGGER_PIN = 7
ECHO_PIN = 6
sensor = HCSR04(trigger_pin=TRIGGER_PIN, echo_pin=ECHO_PIN)
while True:
distance = get_distance(sensor)
display_distance(lcd, distance)
time.sleep(5)
if __name__ == "__main__":
main()