import time
import machine # Para ESP32(usa 'import RPi.GPIO as GPIO' en Raspberry Pi)
pulse_count = 0 # Contador de pulsos
last_interrupt_time = 0 # Último tiempo de interrupción
slots = 20 # Número de ranuras en el disco
interval = 1 # Intervalo en segundos
# Función de interrupción para contar pulsos
def count_pulse(pin):
global pulse_count, last_interrupt_time
interrupt_time = time.ticks_us() # Tiempo actual en microsegundos
if time.ticks_diff(interrupt_time, last_interrupt_time) > 500: # Filtro de debounce
pulse_count += 1
last_interrupt_time = interrupt_time
# Configuración del pin de entrada
encoder_pin = machine.Pin(2, machine.Pin.IN, machine.Pin.PULL_UP) # ESP32
encoder_pin.irq(trigger = machine.Pin.IRQ_FALLING, handler = count_pulse) # Interrupción
# Bucle principal
while True: