'''
Sensor PIR
Integrantes del equipo:
Alvarez Gonzalez Jesus Armando
Mendoza Juarez Juan Diego
Trujillo Guerrero Fabiola
fecha:
06/09/2023
'''
import machine
import ssd1306
import time
import esp32
from machine import Pin
# Configuración de pines y periféricos
pir_pin = machine.Pin(12, machine.Pin.IN)
i2c = machine.I2C(scl=machine.Pin(22), sda=machine.Pin(21))
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
# Parametro para despertar
esp32.wake_on_ext0(pin=pir_pin, level=esp32.WAKEUP_ANY_HIGH)
# revisar si el equipo despertó
if machine.reset_cause() == machine.DEEPSLEEP_RESET:
print('Se despertó de un modo de bajo consumo (Deep Sleep)')
def display_message(message):
oled.fill(0)
oled.text(message, 0, 0)
oled.show()
while True:
pir_state = pir_pin.value()
if pir_state == 1:
display_message("Se detecto")
time.sleep(2) # Muestra el mensaje durante 2 segundos
else:
display_message("Espacio Libre") # Borra la pantalla si no hay movimiento
time.sleep(0.1) # Pequeña pausa para reducir la detección repetida