You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Sense HAT操纵杆控制Raspberry Pi开机与关机

基于Sense HAT操纵杆实现树莓派开关机方案

前置说明

  • 关机功能可通过系统内运行Python脚本直接实现
  • 开机功能无法通过系统内脚本实现:树莓派关机后所有进程都会终止,操纵杆事件检测代码无法运行,需要额外做硬件改造,将操纵杆中键引脚接到树莓派RUN引脚即可触发上电启动

完整实现代码

首先修正你原有代码的语法错误,加入关机逻辑如下:

from sense_hat import SenseHat
import os
import time

sense = SenseHat()

while True:
    for event in sense.stick.get_events():
        # 匹配中键松开的触发条件
        if event.direction == "middle" and event.action == "released":
            # 亮红灯1秒作为关机提示
            sense.clear(255, 0, 0)
            time.sleep(1)
            sense.clear()
            # 调用系统关机命令
            os.system("sudo poweroff")
    # 降低循环占用的CPU资源
    time.sleep(0.1)

使用方法

  • 将代码保存为shutdown_control.py
  • 以root权限运行脚本:sudo python3 shutdown_control.py
  • 如需开机自动启动该脚本,可编辑/etc/rc.local文件,在exit 0行前添加以下内容:
    sudo python3 /home/pi/shutdown_control.py &
    

注意事项

脚本必须以root权限运行,否则没有权限调用系统关机命令。
硬件改造实现按键开机时,注意引脚接线不要接错,避免烧毁主板。

内容的提问来源于stack exchange,提问作者speedee_doge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 09:45:08