https://developer.canaan-creative.com/zh/products
了解更多的micropython控制产品
在学会了数字输出之后,接下来我们以按键开关为例,学习数字输入,获取按键开关当前的状态,并通过编写程序,学习将输入作为条件来控制输出设备,比如用按压开关控制 LED 灯。
学习了数字输出后,接下来以按键开关为例,学习数字输入,获取按键开关当前的状态,并通过编写程序,学习将输入作为条件来控制输出设备,比如用按键开关控制 LED 灯。
可以到wokwi.com在线仿真网站上进行模拟仿真
www.wokwi.com
电路接线图
按键控制程序流程图
程序开始,导入模块,设置输入管脚为按键开关。判断按键开关是否被按下,若未按下则熄灭 LED,若按下则点亮 LED。
程序代码:
from machine import Pin
import time
# 初始化 LED 引脚,使用 GP15 引脚
led = machine.Pin(15, machine.Pin.OUT)
# 初始化按键开关引脚,使用 GP14 引脚,并设置为上拉输入
button = Pin(14, Pin.IN, Pin.PULL_UP)
# 循环判断程序
while True:
if button.value() == 0: # 当按键被按下时,引脚值为 0
# 点亮 LED
led.value(1)
time.sleep(0.1) # 适当延时,避免 CPU 占用过高
else:
# 熄灭 LED
led.value(0)
time.sleep(0.1) # 适当延时,避免 CPU 占用过高
扩展学习
上拉电阻配置
当使用上拉电阻时,GPIO 引脚通过一个电阻连接到电源(通常是 3.3V)。在开关未按下时,GPIO 引脚被拉高到高电平(逻辑值为 1);当开关按下时,GPIO 引脚通过开关连接到地,电平被拉低到低电平(逻辑值为 0)。所以,程序里检测到低电平时就意味着开关被按下了。