TopRank Skills

Home / Claw Skills / Others / raspberry-pi-gpio
Official OpenClaw rules 15%

raspberry-pi-gpio

在树莓派中配置和使用GPIO. 何时触发: 需要对 LED, Button 这类简单外设进行控制时, 需要对 Servo, Motors 进行简单控制时, 或需要直接控制GPIO时. 不要触发: 当硬件载体不是树莓派时, 当需要精确控制 Servo, Motors时.

Stars

0

Installs

0

Status

ACTIVE

Visibility

PUBLIC

安装方式

直接复制以下提示词,发送给你的 AI 助手即可完成安装。

请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 raspberry-pi-gpio 技能。 若已安装,则直接安装 raspberry-pi-gpio 技能。

Overview

Skill Key
cld1994/raspberry-pi-gpio
Author
cld1994
Source Repo
openclaw/skills
Version
-
Source Path
skills/cld1994/raspberry-pi-gpio
Latest Commit SHA
58bb4e01d844ab76c96465d67875d58a20b426a7

Extracted Content

SKILL.md excerpt

# Raspberry Pi GPIO Skill

如果需要了解有关 GPIO 硬件的信息, 请参阅 [GPIO 硬件](references/raspberry-pi-gpio.md).

使用 gpiozero 库可以轻松地用 Python 控制 GPIO 设备.  
gpiozero 是其他 GPIO 库(RPi.GPIO, pigpio, lgpio)的封装。它提供了一个通用的 API,这样就可以使用任何适合的后端库,而无需更改代码。

随着树莓派硬件(特别是 Raspberry Pi 5)的架构演变, lgpio 正在逐渐取代 RPi.GPIO 成为新的标准.  
自 Release 2.0 (2023-09-12) 起, lgpio 是 gpiozero 的默认后端.

RPi.GPIO 是树莓派早期的经典 GPIO 库, 直接通过访问硬件寄存器(/dev/mem)来控制引脚.  
而 lgpio 是基于现代 Linux 内核的 gpiochip 接口开发的库, 不依赖特定的硬件地址.

## 首次使用前检查

### gpiozero 

gpiozero 在树莓派操作系统中已经默认安装.  
如果发现没有安装, 则执行下列命令进行安装: 

```bash
sudo apt update
sudo apt install python3-gpiozero
```

### rpi-lgpio

rpi-lgpio 在莓派操作系统中已经默认安装.  
如果发现没有安装, 则需要检查 RPi.GPIO 是否已经安装了。
**因为不能在同一 Python 环境中同时安装 rpi-lgpio 和 rpi-gpio, 因为这两个包都试图安装一个名为 RPi.GPIO 的模块**

如果硬件是 **Raspberry Pi 5** 之前的系列, 可以直接使用 RPi.GPIO.  
否则需要先卸载 RPi.GPIO: 

```bash
sudo apt remove python3-rpi.gpio
```

再执行下列命令进行安装 rpi-lgpio: 

```bash
sudo apt update
sudo apt install python3-rpi-lgpio
```

### RPi.GPIO

如果硬件是 **Raspberry Pi 5** 或之后的系列, 则 RPi.GPIO 已经不能使用, 必须需要安装 rpi-lgpio

RPi.GPIO 在旧版的莓派操作系统中已经默认安装. 

如果发现没有安装, 因为 RPi.GPIO 已经不推荐使用,如果 Linux 内核支持 gpiochip, 则直接安装 rpi-lgpio.  
否则执行下列命令进行安装 RPi.GPIO: 

```bash
sudo apt update
sudo apt install python3-rpi.gpio
```

## 使用 gpiozero

gpiozero 是一个用于树莓派 GPIO 设备的简单接口.  
该库包含了许多简单日常组件的接口,还有一些更复杂的东西,比如传感器、模数转换器、全彩 LED、机器人套件等等.

### GPIO输入 - 读取按钮

```python
from gpiozero import Button
from time import sleep

button = Button(17, pull_up=True)

while True:
    if button.is_pressed:
        print("按钮被按下!")
    sleep(...

Related Claw Skills