0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Arduino篇—RGB彩灯的应用控制

冬至子 来源:X的创客课堂 作者:MRXY 2023-11-01 11:29 次阅读

课程目标

相关知识

光的色散: 太阳光通过三菱镜,被分解成彩色光带的现象,是1666年由英国物理学家牛顿首先发现的。

图片

**光的三原色:**七种色光中只有红、绿、蓝三种色光无法被分解,而其他四种颜色的光均可由这三种色光以不同比例相合而成。于是红、绿、蓝被称为“三原色光”或“光的三原色”。后经证实:红、绿、蓝这三种颜色的组合,几乎能形成所有的颜色。

图片

光的组合:

红+绿=黄;绿+蓝=青;红+蓝=品红;红+绿+蓝=白。

RGB彩灯:

有直插式和贴片式,从原理上可以理解为将三种颜色的LED组合到了一起。

根据其原理,分为共阳极和共阴极。

电路搭建

所需材料

Arduino UNO * 1
共阴极RGB彩灯 * 1
可调电位器 * 3
杜邦线若干

接线方式

普通的发光二极管(LED灯)只有两个管脚,一个长脚一个短脚,其中长脚接电源正极,短脚接电源负极。

而四个管脚的这里面有三个LED灯珠,其中一个脚是三个LED灯的公共部分,另外三个脚就是对应每个LED灯的第二个管脚,这种RGB LED灯也有共阴极和共阳极之分,对于共阳极的RGB LED灯来说,四个管脚中最长的那个管脚为阳极,也就是接到电源的正极,参考图片如下。

图片

图片
根据上面所描述的特性,电路接线如下:

图片

程序编写

课堂练习:红绿灯

试着编写一个由RGB灯制作的红绿灯。要求实现红灯亮10秒,绿灯亮10秒,黄灯闪烁3秒(闪烁间隔为500毫秒)。

图形化方式:

图片

程序功能实现上面,首先创建了四个函数,分别为亮红灯、绿灯、黄灯和关闭。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);
  }
}

课后练习

使用三个可调电位器,实现可以调色的RGB彩灯。

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led灯
    +关注

    关注

    22

    文章

    1554

    浏览量

    107032
  • 电位器
    +关注

    关注

    14

    文章

    963

    浏览量

    66037
  • 发光二极管
    +关注

    关注

    13

    文章

    1138

    浏览量

    65685
  • RGB
    RGB
    +关注

    关注

    4

    文章

    763

    浏览量

    57412
  • Arduino
    +关注

    关注

    184

    文章

    6427

    浏览量

    184842
收藏 人收藏

    评论

    相关推荐

    用树莓派的systemd服务来管理智能RGB彩灯程序

    最近在树莓派上添加了一个带RGB的风扇,原理是风扇内部包含一个ws281x的RGB彩灯, 通过GPIO18 引脚接入了树莓派, 需要通过编程控制彩灯
    发表于 07-18 09:09 934次阅读
    用树莓派的systemd服务来管理智能<b class='flag-5'>RGB</b><b class='flag-5'>彩灯</b>程序

    智能彩灯

    :Microduino-10DOF体感ü监测数据:感应(X,Y,Z)三轴姿态数据变化ü无线通讯方式:2.4G无线通讯ü功能特色:体感控制,2.4G无线通讯,RGB彩灯调光相应课程1Arduin
    发表于 10-23 11:31

    arduino + wiscam 基于Windows控制RGB

    串口与Arduino串口连接,上位机软件发送控制指令到Wiscam,Wiscam通过透传串口将数据传到ArduinoArduino通过PWM控制
    发表于 06-29 17:49

    STM32F407 USART1控制RGB彩灯

    STM32F407–USART1 控制 RGB 彩灯实验编程的大部分函数都是在 c 文件里写的,头文件是一个声明 c 文件里函数的地方。USART1 控制
    发表于 08-24 06:50

    如何利用GPIO控制RGB彩灯

    如何利用GPIO控制RGB彩灯
    发表于 10-27 07:30

    怎样去设计一种基于ESP8266和ESP32的智能彩灯

    ESP8266和ESP32智能彩灯开发系列文章目录第一:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯)文章目录ESP8266和ESP32智能
    发表于 12-13 08:16

    简单讲解一下5054RGB 6脚全彩灯珠的相关特性

    LED全彩RGB彩灯珠,有5054RGB、3535RGB、3528RGB、3030RGB、02
    发表于 11-25 14:28 3891次阅读
    简单讲解一下5054<b class='flag-5'>RGB</b> 6脚全<b class='flag-5'>彩灯</b>珠的相关特性

    020RGB 6脚全彩灯珠的详细介绍

    020RGB 6脚全彩灯珠 020RGB 6脚全彩灯表的外观尺寸为2.8*3.5*0.8mm,020RGB 6脚灯珠,是一款采用6银脚
    的头像 发表于 11-25 16:00 3793次阅读

    LED4020RGB彩灯珠的应用及参数

    LED4020RGB彩灯珠的应用及参数 The application of LED4020RGB magic lantern beads and parameters
    的头像 发表于 11-26 16:05 2609次阅读

    最简单DIY基于ESP8266的智能彩灯②(在网页用按键和滑动条控制RGB灯)

    和滑动条控制RGB灯)文章目录ESP8266和ESP32智能彩灯开发系列文章目录前言一、最简单DIY基于ESP8266的智能彩灯②(在网页用按键和滑动条
    发表于 12-29 19:02 7次下载
    最简单DIY基于ESP8266的智能<b class='flag-5'>彩灯</b>②(在网页用按键和滑动条<b class='flag-5'>控制</b><b class='flag-5'>RGB</b>灯)

    使用Arduino和Python Tkinter进行RGB Led控制

    电子发烧友网站提供《使用Arduino和Python Tkinter进行RGB Led控制.zip》资料免费下载
    发表于 11-30 12:00 0次下载
    使用<b class='flag-5'>Arduino</b>和Python Tkinter进行<b class='flag-5'>RGB</b> Led<b class='flag-5'>控制</b>

    Arduino控制RGB LED灯条

    电子发烧友网站提供《Arduino控制RGB LED灯条.zip》资料免费下载
    发表于 12-29 11:39 3次下载
    <b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>的<b class='flag-5'>RGB</b> LED灯条

    Arduino RGB Led控制通过PC

    电子发烧友网站提供《Arduino RGB Led控制通过PC.zip》资料免费下载
    发表于 02-09 11:30 0次下载
    <b class='flag-5'>Arduino</b> <b class='flag-5'>RGB</b> Led<b class='flag-5'>控制</b>通过PC

    使用Arduino的Android控制RGB LED灯条

    电子发烧友网站提供《使用Arduino的Android控制RGB LED灯条.zip》资料免费下载
    发表于 07-05 09:45 2次下载
    使用<b class='flag-5'>Arduino</b>的Android<b class='flag-5'>控制</b><b class='flag-5'>RGB</b> LED灯条

    如何使用Arduino控制RGB LED

    在本指南中,您将学习如何使用Arduino控制RGB LED。RGB(红-绿-蓝)LED可以通过混合不同强度的红、绿、蓝光来产生多种颜色。您将学习创建一个基本
    的头像 发表于 02-11 10:28 1400次阅读
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b><b class='flag-5'>RGB</b> LED