Bootstrap

2025年1月18日(点亮三色led第一次修改)

系统信息:

Raspberry Pi Zero 2W
系统版本: 2024-10-22-raspios-bullseye-armhf
Python 版本:Python 3.9.2
已安装 pip3
支持拍摄 1080p 30 (1092*1080), 720p 60 (1280*720), 60/90 (640*480)
已安装 vim
已安装 git


修改内容:

三色led

将功能分离到不同的函数中,增强可维护性和可读性。
增加变量,方便调节。

import RPi.GPIO as GPIO
import time


def setup_gpio(pin_list):
    """初始化"""
    GPIO.setmode(GPIO.BOARD)  # BOARD 编码
    GPIO.setup(pin_list, GPIO.OUT, initial=GPIO.LOW)  # 输出模式,初始低电平


def blink_led(pin, duration):
    """控制 LED 闪烁"""
    GPIO.output(pin, GPIO.HIGH)  # 点亮
    time.sleep(duration)
    GPIO.output(pin, GPIO.LOW)  # 熄灭
    time.sleep(duration)


def cleanup_gpio():
    """清理引脚规则"""
    print("--- 重置引脚规则 ---")
    GPIO.cleanup()  # 释放 GPIO 资源,清除引脚规则


def main():
    """点亮三色 LED """
    rled_pin = 32  # GPIO 12 红
    gled_pin = 12  # GPIO 18 绿
    bled_pin = 33  # GPIO 13 蓝
    blink_count = 2  # 闪烁次数
    duration = 0.1  # 亮灭间隔
    pin_list = [rled_pin, gled_pin, bled_pin]  # 列表

    # 初始化
    setup_gpio(pin_list)

    try:
        # 循环闪烁 RGB LED
        for _ in range(blink_count):  # 闪烁次数
            for pin in pin_list:  # 遍历每个 LED 引脚
                blink_led(pin, duration)  # 调用闪烁函数
    finally:
        # 清理引脚规则
        cleanup_gpio()


if __name__ == "__main__":
    main()

树莓派和三色led

;