from machine import Pin
from time import sleep
# Configuración del pin del sensor PIR
pir_pin = Pin(15, Pin.IN)
# Inicialización del contador de movimientos
contador_movimientos = 0
# Configuración de los pines del display de 7 segmentos
segmentos_pines = [Pin(pin, Pin.OUT) for pin in [23, 22, 21, 19, 18, 5, 17]]
# Definición de los números en el display de 7 segmentos
numeros_7_segmentos = [
[1, 1, 1, 1, 1, 1, 0], # 0
[0, 1, 1, 0, 0, 0, 0], # 1
[1, 1, 0, 1, 1, 0, 1], # 2
[1, 1, 1, 1, 0, 0, 1], # 3
[0, 1, 1, 0, 0, 1, 1], # 4
[1, 0, 1, 1, 0, 1, 1], # 5
[1, 0, 1, 1, 1, 1, 1], # 6
[1, 1, 1, 0, 0, 0, 0], # 7
[1, 1, 1, 1, 1, 1, 1], # 8
[1, 1, 1, 0, 0, 1, 1], # 9
]
def mostrar_numero(n):
if n > 9:
n = 0
for pin, valor in zip(segmentos_pines, numeros_7_segmentos[n]):
pin.value(valor)
def detectar_movimiento(pin):
global contador_movimientos
if pin.value() == 1:
contador_movimientos = (contador_movimientos + 1) % 10
print("Movimiento Detectados:", contador_movimientos)
mostrar_numero(contador_movimientos)
sleep(3) # Pequeño retardo para evitar enclavamiento
else:
print("Buscando...!")
while True:
detectar_movimiento(pir_pin)
sleep(2)