import machine
from machine import Pin, Timer
from time import sleep
from dht import DHT22
from ili9341 import Display, color565
from xglcd_font import XglcdFont
# PIN CONFIGURATION
sensor = DHT22(Pin(5))
sck = machine.Pin(18)
mosi = machine.Pin(23)
miso = machine.Pin(19)
cs = machine.Pin(15)
dc = machine.Pin(0)
rst = machine.Pin(2)
spi = machine.SPI(1, baudrate=32000000, sck=sck, mosi=mosi, miso=miso)
display = Display(spi, dc=dc, cs=cs, rst=rst)
arcadepix = XglcdFont('ArcadePix9x11.c', 9, 11)
myTimer = Timer(1)
# subroutine
def sub_dht(myTimer):
sensor.measure()
temp = sensor.temperature()
humidity = sensor.humidity()
print('Temperature: %2.2f C' % temp)
print('Humidity: %2.2f %%' % humidity)
text = f"Temp: {temp}C"
display.draw_text(x=100,y=300, text=text, font=arcadepix, color=color565(255, 255, 255), background=color565(0, 0, 0), landscape=True, spacing=9)
text = f"Humidity: {humidity}%"
display.draw_text(x=120,y=300, text=text, font=arcadepix, color=color565(255, 255, 255), background=color565(0, 0, 0), landscape=True, spacing=9)
myTimer.init(period=5000, mode=Timer.PERIODIC, callback=sub_dht)
# Main function
def main():
while True:
sleep(1)
if __name__ == '__main__':
main()