在pinpong库中,按钮有两种方式调用,第二种是中断事件回调式。
- 语法:button_a.irq(trigger=触发模式, handler = 回调函数) button_b.irq(trigger=触发模式, handler = 回调函数)
- 返回值:无
- 输入参数:
- trigger:触发模式,有上升沿(Pin.IRQ_RISING)、下降沿(Pin.IRQ_FALLING)、电平跳变(Pin.IRQ_RISING+Pin.IRQ_FALLING)三种
复制代码
【花雕体验】08行空板硬件控制pinpong库的系列测试(之一) 行空板板载资源的测试——Mind+代码编程 测试程序五:板载A、B按钮开关(中断回调式)
- #【花雕体验】08行空板硬件控制pinpong库的系列测试(之一)
- # 行空板板载资源的测试——Mind+代码编程
- # 测试程序五:板载A、B按钮开关(中断回调式)
- # -*- coding: UTF-8 -*-
- from pinpong.extension.unihiker import *
- from pinpong.board import Board,Pin
- import time
- Board().begin()
- #引脚初始化为电平输出模式,P25为L灯的引脚
- led = Pin(Pin.P25, Pin.OUT)
- print("板载A、B按钮开关(中断回调式)")
- def btn_a_rasing_handler(pin):#中断事件回调函数
- print("按钮A按下,点亮LED")
- led.value(1) #输出高电平
- def btn_b_falling_handler(pin):#中断事件回调函数
- print("按钮B按下,LED熄灭")
- led.value(0) #输出低电平
- button_a.irq(trigger=Pin.IRQ_RISING, handler = btn_a_rasing_handler)#上升沿触发
- button_b.irq(trigger=Pin.IRQ_FALLING, handler = btn_b_falling_handler)#下降沿触发
- while True:
- time.sleep(1)#等待让程序不退出
复制代码
|