标签RGB三色灯

RGB三色LED灯实验

如题顾名思义,R(Red)红色,G(Green)绿色,B(Blue)蓝色。
实验目的,通过程序操作RGB三色,实现不同颜色的展示和切换。
#接线效果如图:
接线示例
#实验代码:

#!/usr/bin/env python
#coding:utf-8

'''
from JiuJiang
树莓酱的操作实例
https:://www.shumeijiang.com
'''

import RPi.GPIO as GPIO
import time

R = 18  ##Red采用18口
G = 19  ##Green采用19口
B = 20  ##Blue采用20口

GPIO.setmode(GPIO.BCM) ##采用BCM编码

#设置输出模式
GPIO.setup(R, GPIO.OUT)
GPIO.setup(G, GPIO.OUT)
GPIO.setup(B, GPIO.OUT)

#实例化PWM
rPwm = GPIO.PWM(R, 50)
gPwm = GPIO.PWM(G, 50)
bPwm = GPIO.PWM(B, 50)

#启动PWM
rPwm.start(0)
gPwm.start(0)
bPwm.start(0)

#接收用户选择
color = raw_input('选择颜色:')
color = color.lower() ##转化为小写

#根据用户选择展示不同的颜色
if color == 'red':
    rPwm.ChangeDutyCycle(100)
    gPwm.ChangeDutyCycle(0)
    bPwm.ChangeDutyCycle(0)
elif color == 'green':
    rPwm.ChangeDutyCycle(0)
    gPwm.ChangeDutyCycle(100)
    bPwm.ChangeDutyCycle(0)
elif color == 'blue':
    rPwm.ChangeDutyCycle(0)
    gPwm.ChangeDutyCycle(0)
    bPwm.ChangeDutyCycle(100)
else:
    print '不支持的颜色'

#点亮持续时间
time.sleep(2)

#点亮结束
rPwm.stop()
gPwm.stop()
bPwm.stop()

#清除端口占用
GPIO.cleanup()
#执行如上代码可见效果为:
1、执行Python jiujiang.py
2、提示输入要选择的颜色;
3、输入如red,可见led灯红色灯亮起,并持续两秒;
4、两秒后灯熄灭,等待下次调用。
#视频效果如下: