樹莓派GPIO控制RGB彩色LED燈

樹莓派GPIO經過PWM來控制RGB彩色LED燈,能夠顯示任何咱們想要的顏色。python

 

RGB模塊簡介

這個RGB彩色LED裏其實有3個燈,分別是紅燈、綠燈和藍燈。控制這三個燈分別發出不一樣強度的光,混合起來就能發出各類顏色的光了。 LED燈上的4根引腳分別是GND,R,G,B。 GND須要接地。咱們把它連到樹莓派的電源地上。 R,G,B分別是紅綠藍燈的正極接口。咱們把它們鏈接到樹莓派的GPIO口上。spa

RGB彩色LED燈模塊.jpgRGB彩色LED燈模塊.jpgcode

硬件鏈接

R接到樹莓派GPIO18blog

G鏈接樹莓派GPIO15接口

B鏈接樹莓派GPIO14utf-8

其中GPIO編號方式爲BCM編號方式,具體請看get

 

電路鏈接原理圖以下:博客

樹莓派鏈接RGB彩色LED燈原理圖樹莓派鏈接RGB彩色LED燈原理圖it

程序代碼

新建RGB_LED.py文件,輸入如下代碼:class

 #!/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() 
Python

而後,運行這個py腳本,就能夠看到RGBLED燈在7種顏色間切換。

原創文章,轉載請註明: 轉載自科技愛好者博客

相關文章
相關標籤/搜索