找回密码
 立即注册
Qt开源社区 门户 查看内容

用树莓派做个红绿灯

2019-10-3 14:33| 发布者: admin| 查看: 3384| 评论: 0

摘要: 树莓派用python编程做红绿灯是很方便的,作为体验树莓派的GPIO输出,红绿灯是提高孩子对树莓派和编程兴趣的很好的一个练习。思路如下:用红、黄、绿三个LED作为红绿灯,红灯亮起一定时间后熄灭,黄灯亮起,黄灯熄灭 ...
树莓派用python编程做红绿灯是很方便的,作为体验树莓派的GPIO输出,红绿灯是提高孩子对树莓派和编程兴趣的很好的一个练习。思路如下:用红、黄、绿三个LED作为红绿灯,红灯亮起一定时间后熄灭,黄灯亮起,黄灯熄灭后绿灯亮起,一段时间后绿灯闪烁,然后绿灯熄灭,黄灯亮起,然后黄灯熄灭,红灯亮,依次循环。LED的亮灭通过GPIO接口的高低电平来控制。所需材料:
1、  树莓派及相关附件

2、  红、黄、绿LED各一个

3、  杜邦线四条

4、  1K电阻三个

5、  面包板一个
本示例中利用GPIO23、GPIO24、GPIO25三个引脚作为输出,分别对应树莓派4引脚16、18、22,再加一个GND接地。接线示意图如下:


实物接线图:



接线时要仔细,不要把树莓派引脚和GPIO信号的编号弄混,以防接错,同时要注意LED的正负极,注意不要短路。GPIO信号是根据Broadcom芯片上的引脚来编号的,与树莓派实际的引脚编号没有关联。



树莓派4针脚定义

程序如下

"""导入树莓派GPIO库"""

import RPi.GPIO as GPIO

import time

"""设置引用GPIO信号的方法,这里使用来自于Broadcom芯片的GPIO信号数"""

GPIO.setmode(GPIO.BCM)

"""设置信号23为输出,并设置为低电平"""

GPIO.setup(23,GPIO.OUT)

GPIO.output(23,GPIO.LOW)

GPIO.setup(24,GPIO.OUT)

GPIO.output(24,GPIO.LOW)

GPIO.setup(25,GPIO.OUT)

GPIO.output(25,GPIO.LOW)

try:

while True:

"""红灯亮,30s后熄灭"""

       GPIO.output(23,GPIO.HIGH)

       time.sleep(30)

       GPIO.output(23,GPIO.LOW)

      

       """黄灯亮,5s后熄灭"""

       GPIO.output(24,GPIO.HIGH)

       time.sleep(5)

       GPIO.output(24,GPIO.LOW)

      

        """绿灯亮,27s后熄灭"""

       GPIO.output(25,GPIO.HIGH)

       time.sleep(27)

       GPIO.output(25,GPIO.LOW)

        """绿灯闪烁6次后熄灭,每0.6s闪烁一次"""

       for i in range(0,6):

           GPIO.output(25,GPIO.HIGH)

           time.sleep(0.3)

           GPIO.output(25,GPIO.LOW)

           time.sleep(0.3)

       GPIO.output(25,GPIO.LOW)

      

       """黄灯亮,5s后熄灭"""

       GPIO.output(24,GPIO.HIGH)

       time.sleep(5)

       GPIO.output(24,GPIO.LOW)

"""按下Ctrl+C后中断,将GPIO端口重置"""      

except KeyboardInterrupt:

GPIO.cleanup()

运行结果如下: 

-End-

相关文章:

用python求两数字之间的所有素数

更多文章请点击公众号左下角“文章分类”菜单

----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:机械常识,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了