当前位置: 首页 > article >正文

树莓派超全系列文档--(11)RaspberryOS上使用 Python控制GPIO

RaspberryOS上使用 Python控制GPIO

    • 使用 Python 控制 GPIO
      • LED 控制
      • 读取按键状态
        • 使用按钮控制LED

文章来源: http://raspberry.dns8844.cn/documentation

原文网址

使用 Python 控制 GPIO

使用 GPIO Zero 库可以轻松地用 Python 控制 GPIO 设备。该库在 gpiozero.readthedocs.io 上有全面的文档说明。

有关 GPIO 硬件的信息,请参阅 GPIO 硬件。

LED 控制

以下示例代码可控制连接到 GPIO17 的 LED:

from gpiozero import LED
from time import sleep

led = LED(17)

while True:
    led.on()
    sleep(1)
    led.off()
    sleep(1)

在 Thonny 等 IDE 中运行此代码,LED 将反复闪烁。

LED 方法包括 on()off()toggle()blink()

读取按键状态

要读取连接到 GPIO2 的按钮的状态:

from gpiozero import Button
from time import sleep

button = Button(2)

while True:
    if button.is_pressed:
        print("Pressed")
    else:
        print("Released")
    sleep(1)

按钮功能包括属性 is_pressedis_held ;回调 when_pressedwhen_releasedwhen_held ;以及方法 wait_for_press()wait_for_release

使用按钮控制LED

以下示例代码读取连接到 GPIO2 的按钮的状态,并在按下按钮时点亮连接到 GPIO17 的 LED:

from gpiozero import LED, Button

led = LED(17)
button = Button(2)

while True:
    if button.is_pressed:
        led.on()
    else:
        led.off()

或者:

from gpiozero import LED, Button

led = LED(17)
button = Button(2)

while True:
    button.wait_for_press()
    led.on()
    button.wait_for_release()
    led.off()

或者:

from gpiozero import LED, Button

led = LED(17)
button = Button(2)

上一篇 – 树莓派超全系列文档–(10)RaspberryOS上使用 Python
下一篇 –


http://www.kler.cn/a/613395.html

相关文章:

  • 全面解析PRN文件:从原理到可视化的完整指南 【标签打印】
  • 1.1-站点差异\源码差异\数据存储差异\MVC模型
  • python每日十题(13)
  • 使用Django创建项目及介绍
  • knowledge-vscode中配置java环境(JDK-8下载,配置 Maven 并创建项目)
  • 从系统架构、API对接核心技术、业务场景设计及实战案例四个维度,深度解析1688代采系统
  • 微服务中的服务发现与注册中心
  • Rabbitmq消息被消费时抛异常,进入Unacked 状态,进而导致消费者不断尝试消费(下)
  • 实现类今日头条主界面:ViewPager与TabLayout深度整合
  • 【空间变换】欧拉角与四元数
  • SQL的核心基础语法 | 快速入门MySQL
  • 【算法手记6】NC1 大数加法 NC40 链表相加(二) NC10 大数乘法
  • java开发环境本地全套
  • Linux-NFS服务的故障排查与优化
  • DATEDIFF 函数
  • 蓝桥Python真题——扫雷
  • 宝塔SSL申请Let‘s Encrypt提示“验证信息构造失败!{}“
  • 【Linux】进程控制和Shell的简易实现
  • 深入剖析Redis分布式锁:Redlock算法源码解读与实战
  • 【学Rust写CAD】15 定点数实现(fixed.rs)