from machine import Pin, SoftI2C
from oled import I2C
from time import sleep
i2c = SoftI2C(scl=Pin(22), sda=Pin(21))
oled = I2C(128, 64, i2c)
light = Pin(14, Pin.OUT)
pir_out = Pin(17, Pin.IN)
pir_in = Pin(16, Pin.IN)
number_of_ppl = 0
def update_screen():
oled.fill(0)
oled.text("people inside:", 0, 0)
oled.text(str(number_of_ppl), 0, 2)
oled.show()
update_screen()
while True:
if pir_in.value() == 1:
number_of_ppl += 1
print("1")
update_screen()
while pir_in.value() == 1:
sleep(0.1)
if pir_out.value() == 1:
number_of_ppl -= 1
print("-1")
update_screen()
while pir_out.value() == 1:
sleep(0.1)
light.value(1 if number_of_ppl != 0 else 0)
sleep(0.1)
in
out