from machine import Pin, I2C, PWM
from dht import DHT22
from time import sleep
from ssd1306 import SSD1306_I2C
# Variables
d = DHT22(Pin(14,Pin.IN))
ecran = I2C(1,scl=Pin(4),sda=Pin(5),freq=40000)
oled = SSD1306_I2C(128,64,ecran)
servo = PWM(Pin(32),freq=50)
btn = Pin(2,Pin.IN)
cpt = 0
while True:
if btn.value()== 1:
oled.fill(0)
cpts = str(cpt)
oled.text(cpts,0 , 0)
oled.show()
cpt+=1
"""
while True:
if btn.value() == 1:
# Mesures des températures et humidités
d.measure()
temp = d.temperature()
hum = d.humidity()
#t +=20 h =40 arrosage 2 sec
if temp >= 20 and hum == 40:
t = 2
servo.duty(115)
while t >= 0:
oled.fill(0)
oled.show()
oled.text(f"Temperature {temp}", 0,0)
oled.text(f"Humidite {hum}",0,20)
oled.text("Arrosage",0,32)
oled.text(f"{t}",64,32)
oled.show()
t = t-1
sleep(1)
servo.duty(30)
#t -=10 h -=30 arrosage 2 sec
if temp <= 10 and hum < 30:
t = 2
servo.duty(115)
while t >= 0:
oled.fill(0)
oled.show()
oled.text(f"Temperature {temp}", 0,0)
oled.text(f"Humidite {hum}",0,20)
oled.text("Arrosage",0,32)
oled.text(f"{t}",64,32)
oled.show()
t = t-1
sleep(1)
servo.duty(30)
#t +=45 h=80 cliquer sur bouton pour arroser
elif temp > 45 and hum >= 80:
oled.fill(0)
oled.show()
oled.text(f"Temperature {temp}", 0,0)
oled.text(f"Humidite {hum}",0,20)
oled.text("Appuyez sur",0,32)
oled.text("bouton",0,42)
oled.show()
# Le bouton
if btn.value() == 1:
servo.duty(115)
sleep(5)
servo.duty(30)
sleep(2)
else:
pass
"""