from machine import Pin as p
from machine import SoftI2C
import utime
import ssd1306
import dht
sen = dht.DHT22(p(26)) #sensor pin
def th():
sen.measure()
global temp # so that we can use this variable outside this function
temp = sen.temperature()
hum = sen.humidity()
print("temparature",temp)
print("humidity",hum)
def button_irq(Pin):
print("triggered")
i2c=SoftI2C(scl=p(22),sda=p(21)) # i2c pin for OLED
oled = ssd1306.SSD1306_I2C(128,64,i2c) #OLED INITIALIZING
led = p(15,p.OUT)
but = p(35,p.IN,p.PULL_UP) #taking Input
but.irq(trigger=p.IRQ_FALLING,handler=button_irq)
while True:
th()
if (but.value()==1):
led.value(1)
oled.text('Light On',0,0)
oled.text(str(temp),110,0)
oled.show()
else:
led.value(0)
oled.text('Light Off',11,11)
oled.show()