k230的IO硬件中断

Viewed 35

问题描述


image.png

示例代码里包含了硬件中断,但是改为庐山派的引脚测试后并没有效果,并且还不让传参

from machine import Pin
from machine import FPIOA

import time

flag = 0

def callback(pin):
    global flag
    flag = 1 - flag
    print("触发了中断")

fpioa = FPIOA()

# 庐山拍红灯-Pin62
fpioa.set_function(62, FPIOA.GPIO62)
pin_led = Pin(62, Pin.OUT, pull=Pin.PULL_UP, drive=7)
# 庐山派用户按键pin53
fpioa.set_function(53, FPIOA.GPIO53)
pin_intr = Pin(53, Pin.IN, pull=Pin.PULL_UP, drive=7)

pin_intr.irq(trigger=Pin.IRQ_LOW_LEVEL, handler=callback)

while True:
    if flag:
        pin_led.toggle()
        time.sleep_ms(100)
    else:
        pin_led.off()

而且pin_intr.irq()传参时若指定debounce = 10会报错TypeError: extra keyword arguments given

2、我也去01studio找了案例,他们的引入了from maix import GPIO
from fpioa_manager import fm,但是庐山派固件里没有

硬件板卡


庐山派

硬件板卡


庐山派

2 Answers

你好,请问你使用的是什么版本的固件?
以及你看到的01studio的代码是K210的,不是K230的。

CanMV_K230_LCKFB_micropython_local_nncase_v2.9.0

是最新的代码编译的吗

最近一个月内

你好,

  1. 庐山派按键按下时应该是拉高,修改为引脚下拉以及高电平触发可以中断
  2. 传参时若指定debounce = 10会报错TypeError: extra keyword arguments given 是由于typo导致的,更新一下代码重新编译即可。