pin_irq.py
# Эта работа лицензирована по лицензии MIT.
# Copyright (c) 2013-2026 OpenMV LLC. All rights reserved.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Пример прерывания по выводу (Pin IRQ)
#
# Этот пример показывает, как использовать прерывание GPIO для реакции на фронт сигнала на выводе.
# Нажатие пользовательской кнопки (SW) переключает синий светодиод через обработчик прерывания.
import time
from machine import Pin, LED
led = LED("LED_BLUE")
sw = Pin("SW", Pin.IN)
def handler(pin):
led.toggle()
# Пользовательская кнопка активна по низкому уровню, поэтому срабатывание происходит по спадающему фронту.
sw.irq(handler=handler, trigger=Pin.IRQ_FALLING)
while True:
time.sleep_ms(100)