RGB彩灯的应用控制教程

电子说

1.3w人已加入

描述

课程目标

  • 光的三原色
  • RGB彩灯的工作原理
  • 模拟输入和模拟输出的综合应用

相关知识

  • 光的色散: 太阳光通过三菱镜,被分解成彩色光带的现象,是1666年由英国物理学家牛顿首先发现的。
  • **光的三原色:**七种色光中只有红、绿、蓝三种色光无法被分解,而其他四种颜色的光均可由这三种色光以不同比例相合而成。于是红、绿、蓝被称为“三原色光”或“光的三原色”。后经证实:红、绿、蓝这三种颜色的组合,几乎能形成所有的颜色。
  • 光的组合:
    红+绿=黄;绿+蓝=青;红+蓝=品红;红+绿+蓝=白。
  • RGB彩灯:
    有直插式和贴片式,从原理上可以理解为将三种颜色的LED组合到了一起。
    根据其原理,分为共阳极和共阴极。

电路搭建

  • 所需材料
    Arduino UNO * 1
    共阴极RGB彩灯 * 1
    可调电位器 * 3
    杜邦线若干
  • 接线方式
    普通的发光二极管(LED灯)只有两个管脚,一个长脚一个短脚,其中长脚接电源正极,短脚接电源负极。而四个管脚的这里面有三个LED灯珠,其中一个脚是三个LED灯的公共部分,另外三个脚就是对应每个LED灯的第二个管脚,这种RGB LED灯也有共阴极和共阳极之分,对于共阳极的RGB LED灯来说,四个管脚中最长的那个管脚为阳极,也就是接到电源的正极,参考图片如下。
    RGB
    根据上面所描述的特性,电路接线如下:
    RGB

程序编写

  • 课堂练习:红绿灯
    试着编写一个由RGB灯制作的红绿灯。要求实现红灯亮10秒,绿灯亮10秒,黄灯闪烁3秒(闪烁间隔为500毫秒)。
    图形化方式:
    RGB
    程序功能实现上面,首先创建了四个函数,分别为亮红灯、绿灯、黄灯和关闭。RGB彩灯可以通过改变输入电压来控制灯光颜色,也就是通过调整模拟输入来实现不同颜色的灯光显示。
    这里的黄色的RGB值为255,255,0。同学们可以通过修改R和G的值来改变黄色的色度。
    代码方式:
    /* 项目名称:RGB红绿灯
     * 项目时间:2022.02.21
     * 项目作者:MRX
     */
    int led_R = 9;
    int led_G = 10;
    int led_B = 11;
    void red(){
      analogWrite(led_R,255);
      analogWrite(led_G,0);
      analogWrite(11,0);
    }
    void green(){
      analogWrite(led_R,0);
      analogWrite(led_G,255);
      analogWrite(led_B,0);
    }
    void yellow() {
      analogWrite(led_R,255);
      analogWrite(led_G,255);
      analogWrite(led_B,0);
    }
    void closed() {
      analogWrite(led_R,0);
      analogWrite(led_G,0);
      analogWrite(led_B,0);
    }
    void setup() {
      pinMode(led_R,OUTPUT);
      pinMode(led_G,OUTPUT);
      pinMode(led_B,OUTPUT);
    }
    void loop() {
      red();
      delay(7000);
      green();
      delay(7000);
      for (int i = 0; i <= 2; i = i + (1)) {
        yellow();
        delay(500);
        closed();
        delay(500);
      }
    }
    
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分