• 树莓派+RGB彩灯实现跑马灯


    RGB彩灯跟普通的LED不同,它可以根据RGB的色值自定义颜色,从而轻松的实现跑马灯的效果,我们选用HW-478 3色全彩LED smd模块来实现。

    一、硬件接线
    RGB彩灯硬件接线比较简单,负极接GND,R/G/B分别接树莓派定义的针脚即可。

    二、软件实现:

    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)
    
    t = 1
    #no light on 
    pwmR.ChangeDutyCycle(0)
    pwmG.ChangeDutyCycle(0)
    pwmB.ChangeDutyCycle(0)
    time.sleep(t)
    
    try:
        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)
            
            pwmR.ChangeDutyCycle(0)
            pwmG.ChangeDutyCycle(0)
            pwmB.ChangeDutyCycle(0)
            time.sleep(t)
            
    except keyboardInterrupt:
        pass
    
    pwmR.stop()
    pwmG.stop()
    pwmB.stop()
    
    RPi.GPIO.cleanup()
            

    参考资料:
    https://shumeipai.nxez.com/2014/11/13/rpi-gpio-module-pwm-basic-function.html

  • 相关阅读:
    Visual Studio2017 无法添加引用的解决方法
    第13周学习进度
    mininet之miniedit可视化操作
    构建之法阅读笔记05
    软件工程课堂练习找水王续
    第12周学习进度
    VS2015做单元测试
    学习调用第三方的WebService服务
    软件工程课堂练习找水王
    第11周学习进度
  • 原文地址:https://www.cnblogs.com/guwei4037/p/14366091.html
Copyright © 2020-2023  润新知