from machine import I2C,Pin,ADC
from time import sleep
from pico_i2c_lcd import I2cLcd
sensor_temp = ADC(4) #set GP4 as angalog input pin which connect to temperature sensor
conversion_factor = 3.3/65535
def get_temperature():
    reading = sensor_temp.read_u16() * conversion_factor
    temperature = 27 - (reading - 0.706)/0.001721
    return temperature

i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=400000)
I2C_ADDR = i2c.scan()[0]
lcd = I2cLcd(i2c, I2C_ADDR, 2, 16)
degree = bytearray([0x1c,0x14,0x1c,0x00,0x00,0x00,0x00,0x00])
lcd.custom_char(0, degree)
while True:
    #lcd.blink_cursor_on()
    lcd.putstr("Temperature:\n"+str(get_temperature())+" C"+chr(0))
    sleep(4)
    lcd.clear()

 