树莓派用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。 ---------------------------------------------------------------------------------------------------------------------- |