import machine
# Определение пинов для CLK и DT сигналов от энкодера
CLK_PIN = machine.Pin(1, machine.Pin.IN)
DT_PIN = machine.Pin(2, machine.Pin.IN)
# Флаги для отслеживания изменения состояния пинов CLK и DT
prev_clk_state = CLK_PIN.value()
prev_dt_state = DT_PIN.value()
# Обработка событий прокрутки энкодера
def encoder_callback(pin):
global prev_clk_state, prev_dt_state
clk_state = CLK_PIN.value()
dt_state = DT_PIN.value()
if clk_state != prev_clk_state and dt_state != prev_dt_state:
print("sas")
prev_clk_state = clk_state
prev_dt_state = dt_state
# Назначение обработчика для пина CLK
CLK_PIN.irq(handler=encoder_callback, trigger=machine.Pin.IRQ_FALLING | machine.Pin.IRQ_RISING)
# Бесконечный цикл ожидания событий
try:
while True:
pass
except KeyboardInterrupt:
pass