【试用测评】FireBeetle ESP32-E扩展板——LED Button
FireBeetle ESP32-E扩展板
【LED Button】
LED Button是一款按钮会发光的开关式按键。当我们按下按键时,它可以发出彩虹的颜色,比如常见的“红、黄、绿、蓝、白”这五种颜色。同时它可以与micro:bit,Arduino等主板结合使用,然后实现很多有趣的互动作品。
【引脚中断】
Pin.irq(trigger, handler)函数说明:配置一个中断处理程序,在引脚的电平满足条件时调用。
trigger: Pin.IRQ_FALLING — 下降沿触发 Pin.IRQ_RISING — 上升沿触发 3 — 双边沿触发
handler:回调函数
示例:sw.irq(trigger=Pin.IRQ_FALLING, handler=lambda t:print("IRQ"))
宏
下面的宏定义用于配置pin。注意:不是每个端口都有下面的全部属性。
选择pin模式 *
Pin.IN = 0 — 输入模式 * Pin.OUT = 3 — 输出模式 * Pin.OPEN_DRAIN =7 — 开漏模式设置上拉/下拉电阻 * Pin.PULL_UP = 0 — 输出高电平 * Pin.PULL_DOWN = 1 — 输出低电平设置IRQ触发类型 * Pin.IRQ_RISING = 1 — 上升沿中断 * Pin.IRQ_FALLING = 2 — 下降沿中断 * 3 — 双边沿中断
【FireBeetle ESP32-E】
按钮接扩展板D5,对应esp32引脚0。led灯接扩展板D6,对应esp32引脚14
【uPyCraft程序】
#hardware platform: FireBeetle-ESP32
#Result: Blink
#The information below shows blink is unavailble for the current version.
#IO0 IO4 IO10 IO12~19 IO21~23 IO25~27
#Except the connection between IO2 and onboard LED, other pins need to connect to external LEDs.
import time
from machine import Pin
led=Pin(14,Pin.OUT) #create LED object from pin2,Set Pin2 to output
sw=Pin(0, Pin.IN)
sw.irq(trigger=Pin.IRQ_RISING, handler=lambda t:led.value(not led.value()))
while True:
pass
【效果】
【循环判断】
import time
from machine import Pin
led=Pin(14,Pin.OUT) #create LED object from pin2,Set Pin2 to output
sw=Pin(0, Pin.IN)
while True:
if sw()==1:
led(1)
else:
led(0)
【数字触摸开关Touch】
页:
[1]