树莓派 使用python来操作GPIO 控制LED灯

一、创建python驱动和控制GPIO

先新建一个文件夹用于放置脚本

mkdir python_gpio

进入文件夹内新建一个gpio_blink.py的脚本

cd python_gpio

touch gpio_blink.py

开始来编辑gpio_blink.py脚本(使用vi/vim来编辑都可以)

nano gpio_blink.py

编辑 gpio_blink.py 脚本,内容如下:


import RPi.GPIO as GPIO                      //将RPi.GPIO 模块映射为GPIO来使用
import time                                  //引入time 模块
GPIO_PIN = 24                                //定义IO为GPIO24
GPIO.setmode(GPIO.BCM)                       //使用BCM对针脚进行编号
GPIO.setup(GPIO_PIN, GPIO.OUT)               //配置GPIO24为输出模式
while True:
        GPIO.output(GPIO_PIN,GPIO.HIGH)      //输出为高
        time.sleep(1)                     //延时1s
        GPIO.output(GPIO_PIN,GPIO.LOW)       //输出低
        time.sleep(1)                     //延时1s

保存这个脚本后,运行脚本:

python  gpio_blink.py

就可以看到LED灯间隔1s的闪烁,按下Ctrl+C停止这个脚本运行

二、参考文档

https://blog.csdn.net/wbrg593/article/details/50993277
http://shumeipai.nxez.com/2016/09/28/rpi-gpio-module-basics.html
https://blog.csdn.net/hu7850/article/details/51785594

by 羊羊得亿
2018-04-12 ShenZhen

转载于:https://www.cnblogs.com/yangxuli/p/8810483.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您想让我讲解如何使用Python编写程序来控制树莓派上的LED闪烁速度由慢变快,再由快变慢。首先,您需要连接一个LED到您的树莓派上。然后,您可以使用GPIO库来控制LED的状态。以下是一个示例代码,可以让LED的闪烁速度由慢变快,再由快变慢: ```python import RPi.GPIO as GPIO import time # 设置GPIO模式为BCM GPIO.setmode(GPIO.BCM) # 设置GPIO17为输出引脚 led_pin = 17 GPIO.setup(led_pin, GPIO.OUT) # 设置初始时间间隔为0.5秒 interval = 0.5 # 无限循环 while True: # 点亮LED GPIO.output(led_pin, GPIO.HIGH) # 等待interval秒 time.sleep(interval) # 熄灭LED GPIO.output(led_pin, GPIO.LOW) # 等待interval秒 time.sleep(interval) # 更新时间间隔,使其变得更短 interval -= 0.1 if interval < 0.1: interval = 0.1 # 再次点亮LED GPIO.output(led_pin, GPIO.HIGH) # 等待interval秒 time.sleep(interval) # 再次熄灭LED GPIO.output(led_pin, GPIO.LOW) # 等待interval秒 time.sleep(interval) # 更新时间间隔,使其变得更长 interval += 0.1 if interval > 0.5: interval = 0.5 ``` 上述示例代码中,我们使用了无限循环来不断控制LED的状态。在每次循环中,我们会先点亮LED,然后等待一段时间,再熄灭LED并再次等待一段时间。这样就能实现LED的闪烁效果了。 在每次闪烁结束后,我们会更新时间间隔interval的值。在第一次闪烁时,interval的初始值为0.5秒。然后,我们会将interval的值逐渐减小,使LED的闪烁速度变快。当interval的值小于0.1秒时,我们将其设置为0.1秒,避免闪烁速度过快。接着,我们会再次点亮LED,等待interval秒后再熄灭LED。然后,我们会再次更新interval的值,使其变得更长,从而使LED的闪烁速度变慢。当interval的值大于0.5秒时,我们将其设置为0.5秒,避免闪烁速度过慢。然后,我们就可以继续进入下一次循环,不断重复上述操作,从而实现LED闪烁速度由慢变快,再由快变慢的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值