以下是一个Python程序示例,演示了如何使用按钮控制LED的闪烁:
import RPi.GPIO as GPIO
import time
# 设置GPIO模式为BCM
GPIO.setmode(GPIO.BCM)
# 设置按钮的GPIO引脚
button_pin = 17
# 设置LED的GPIO引脚
led_pin = 18
# 设置按钮引脚为输入,上拉电阻
GPIO.setup(button_pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
# 设置LED引脚为输出
GPIO.setup(led_pin, GPIO.OUT)
# 定义闪烁函数
def blink_led():
# 循环闪烁3次
for i in range(3):
GPIO.output(led_pin, GPIO.HIGH) # 点亮LED
time.sleep(0.5) # 等待0.5秒
GPIO.output(led_pin, GPIO.LOW) # 熄灭LED
time.sleep(0.5) # 等待0.5秒
# 循环监听按钮状态
while True:
if GPIO.input(button_pin) == GPIO.LOW: # 检测按钮是否按下
blink_led() # 执行闪烁函数
在这个示例中,使用了RPi.GPIO库来控制树莓派的GPIO引脚。首先需要设置GPIO模式为BCM,并定义按钮和LED引脚的GPIO编号。然后,通过GPIO.setup()函数将按钮引脚设置为输入且上拉电阻,将LED引脚设置为输出。接下来,定义了一个闪烁函数,通过循环控制LED的亮灭。最后,在一个无限循环中,通过GPIO.input()函数检测按钮的状态,如果按钮被按下,则执行闪烁函数。