树莓派GPIO控制RGB彩色LED灯

栏目: 软件资讯 · 发布时间: 8年前

内容简介:树莓派GPIO控制RGB彩色LED灯

树莓派GPIO通过PWM来控制RGB彩色LED灯,可以显示任何我们想要的颜色。

RGB模块简介

这个RGB彩色LED里其实有3个灯,分别是红灯、绿灯和蓝灯。控制这三个灯分别发出不同强度的光,混合起来就能发出各种颜色的光了。 LED灯上的4根引脚分别是GND,R,G,B。 GND需要接地。我们把它连到树莓派的电源地上。 R,G,B分别是红绿蓝灯的正极接口。我们把它们连接到树莓派的GPIO口上。

树莓派GPIO控制RGB彩色LED灯
RGB彩色LED灯模块.jpg

硬件连接

R接到树莓派GPIO18

G连接树莓派GPIO15

B连接树莓派GPIO14

其中GPIO编号方式为BCM编号方式,具体请看

树莓派GPIO引脚定义详细图

电路连接原理图如下:

树莓派GPIO控制RGB彩色LED灯
树莓派连接RGB彩色LED灯原理图

树莓派GPIO控制RGB彩色LED灯

程序代码

新建RGB_LED.py文件,输入以下代码:

#!/usr/bin/env python
# encoding: utf-8
 
import RPi.GPIO
import time
 
R,G,B=18,15,14
 
RPi.GPIO.setmode(RPi.GPIO.BCM)
 
RPi.GPIO.setup(R, RPi.GPIO.OUT)
RPi.GPIO.setup(G, RPi.GPIO.OUT)
RPi.GPIO.setup(B, RPi.GPIO.OUT)
 
pwmR = RPi.GPIO.PWM(R, 50)
pwmG = RPi.GPIO.PWM(G, 50)
pwmB = RPi.GPIO.PWM(B, 50)
 
pwmR.start(0)
pwmG.start(0)
pwmB.start(0)
 
try:
 
    t = 1
    while True:
        # 红色灯全亮,蓝灯,绿灯全暗(红色)
        pwmR.ChangeDutyCycle(100)
        pwmG.ChangeDutyCycle(0)
        pwmB.ChangeDutyCycle(0)
        time.sleep(t)
         
        # 绿色灯全亮,红灯,蓝灯全暗(绿色)
        pwmR.ChangeDutyCycle(0)
        pwmG.ChangeDutyCycle(100)
        pwmB.ChangeDutyCycle(0)
        time.sleep(t)
         
        # 蓝色灯全亮,红灯,绿灯全暗(蓝色)
        pwmR.ChangeDutyCycle(0)
        pwmG.ChangeDutyCycle(0)
        pwmB.ChangeDutyCycle(100)
        time.sleep(t)
         
        # 红灯,绿灯全亮,蓝灯全暗(黄色)
        pwmR.ChangeDutyCycle(100)
        pwmG.ChangeDutyCycle(100)
        pwmB.ChangeDutyCycle(0)
        time.sleep(t)
         
        # 红灯,蓝灯全亮,绿灯全暗(洋红色)
        pwmR.ChangeDutyCycle(100)
        pwmG.ChangeDutyCycle(0)
        pwmB.ChangeDutyCycle(100)
        time.sleep(t)
         
        # 绿灯,蓝灯全亮,红灯全暗(青色)
        pwmR.ChangeDutyCycle(0)
        pwmG.ChangeDutyCycle(100)
        pwmB.ChangeDutyCycle(100)
        time.sleep(t)
         
        # 红灯,绿灯,蓝灯全亮(白色)
        pwmR.ChangeDutyCycle(100)
        pwmG.ChangeDutyCycle(100)
        pwmB.ChangeDutyCycle(100)
        time.sleep(t)
 
except KeyboardInterrupt:
    pass
 
pwmR.stop()
pwmG.stop()
pwmB.stop()
 
RPi.GPIO.cleanup()

然后,运行这个py脚本,就可以看到RGBLED灯在7种颜色间切换。

树莓派GPIO控制RGB彩色LED灯


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

搜索引擎

搜索引擎

(美)克罗夫特 / 机械工业出版社 / 2009-10 / 45.00元

《搜索引擎:信息检索实践(英文版)》介绍了信息检索(1R)中的关键问题。以及这些问题如何影响搜索引擎的设计与实现,并且用数学模型强化了重要的概念。对于网络搜索引擎这一重要的话题,书中主要涵盖了在网络上广泛使用的搜索技术。 《搜索引擎:信息检索实践(英文版)》适用于高等院校计算机科学或计算机工程专业的本科生、研究生,对于专业人士而言,《搜索引擎:信息检索实践(英文版)》也不失为一本理想的入门教......一起来看看 《搜索引擎》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

html转js在线工具
html转js在线工具

html转js在线工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具