3-4 RGB LED(智能应用篇)

3-4 RGB LED(智能应用篇)

3-4 RGB LED

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Led的灯珠和灯带,相当于点和线(可以画出丰富否画面)

主要介绍led灯珠

RGB-LED及电路

在这里插入图片描述
在这里插入图片描述

RGB-LED可以发出红、绿、蓝色的光芒(并通过各个通道的数值不同发出其余各种颜色)

发光二极管,
这里有四个引脚

传统的发光二极管只有一个正极一个负极
在这里插入图片描述

最长的引脚为其负极
上面为RGB-LED的简化过程(三个负极链接在一起接地,另外三个灯放在一个灯里)

在这里插入图片描述

正极独立,负极链接在一起,为共阴极RGB-LED

也有共阳极LED,这里不介绍了

在这里插入图片描述

在这里插入图片描述

最长引脚为负极链接arduino的接地线
在这里插入图片描述

其余的三个RGB引脚分别连接在6,5,3号引脚(~)

示例程序

主要将实际制作了,程序不会太细讲

/*
* Serial-RGB-LED
* 
* 通过串口输入信息调整LED的颜色
* 指令示例: r128g100b20
*          以上指令将LED的RGB数值调整为(128,100,20)
*          
* by 太极创客
* www.taichi-maker.com
*/
const int rLedPin = 6; //引脚R
const int gLedPin = 5; //引脚G
const int bLedPin = 3; //引脚B
 
int ledR  = 0; //R Led 亮度
int ledG  = 0; //G Led 亮度
int ledB  = 0; //B Led 亮度
 
void setup() {
  pinMode(rLedPin, OUTPUT);
  pinMode(gLedPin, OUTPUT);
  pinMode(bLedPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("Welcome to Taichi-Maker RGB Led Tutorial.");
  Serial.println("Please Input RGB value(eg. r128g100b20).");
}
 
void loop() {
  
  if (Serial.available()>0) { 
    char serialCmdChar = Serial.read();  
    serialCmd(serialCmdChar);       
  }
  delay(50);      //延时让程序更加流畅稳定
}
 
void serialCmd(char serialCmdChar) {  //r128g100b20
  switch (serialCmdChar){
    case 'r':
      ledR = Serial.parseInt();
      break;
 
    case 'g':
      ledG = Serial.parseInt();
      break;
 
    case 'b':
      ledB = Serial.parseInt();
      break;    
 
//使用‘C’字符将RGB置为0
    case 'c':
      ledR = 0;
      ledG = 0;
      ledB = 0;
  }
 
//将数值输出到引脚上
  analogWrite(rLedPin, ledR);
  delay(100);
  analogWrite(gLedPin, ledG);
  delay(100);
  analogWrite(bLedPin, ledB); 
  delay(100); 
  
//输出当前的RGB各通道数值
  Serial.print ("Red Value = ");
  Serial.println (ledR);
  Serial.print ("Green Value = ");
  Serial.println (ledG);
  Serial.print ("Blue Value = ");
  Serial.println (ledB);
  Serial.println ("-------------");    
}

效果演示

在这里插入图片描述
在这里插入图片描述

先尝试单独打开红色、绿色、蓝色led

r255g0b0
在这里插入图片描述

发送
在这里插入图片描述

r0g255b0
在这里插入图片描述

回车发送变成绿色
在这里插入图片描述

发送r0g0b255
在这里插入图片描述

发送r100g0b100得到紫色
在这里插入图片描述

RGB-LED,三原色可以进行调和得到不同的颜色

发送r100g10b0得到黄色
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

RGB可以显示出16777216种颜色(真彩led)
在这里插入图片描述

下方的发出多种颜色的led灯珠并不是RGB-LED,而是只有两个引脚

并不是能改变颜色的led都是RGB-led

在这里插入图片描述

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ws2812-5050-RGB-LED是一种智能RGB LED,其与STM32微控制器和RT-Thread操作系统结合使用具有很多优势。以下是基于这种组合的使用笔记: 首先,在使用ws2812-5050-RGB-LED之前,我们需要确保已正确连接相应的硬件。这包括将数据引脚连接到STM32的GPIO引脚,然后通过电平转换器将其连接到ws2812 LED的输入引脚。 其次,我们需要在STM32的RT-Thread操作系统上配置相应的驱动程序。可以通过使用RT-Thread的Package Manager来下载并安装相应的驱动程序包。然后,可以在RT-Thread的配置文件中启用WS2812 LED驱动程序。 接下来,我们可以在应用程序中使用WS2812驱动程序来控制RGB LED的颜色和亮度。我们可以通过简单的调用驱动程序提供的函数来实现这一点。首先,我们可以使用“ws2812_init()”函数来初始化LED的数量和PWM参数。然后,我们可以使用“ws2812_set_color()”函数设置每个LEDRGB颜色。最后,我们可以使用“ws2812_refresh()”函数来刷新LED并显示相应的颜色。 在使用WS2812-5050-RGB-LED时,我们需要注意一些问题。首先,由于它是基于PWM控制的,因此我们需要按照WS2812的规范来设置PWM参数,以确保正确的亮度和颜色。其次,我们需要遵循良好的电源管理实践,以确保LED的稳定工作。最后,我们需要小心处理数据传输,以避免干扰和丢失数据。 总的来说,使用WS2812-5050-RGB-LED时,基于STM32和RT-Thread操作系统的组合是一种简单且灵活的选择。通过正确的硬件连接和驱动程序配置,我们可以方便地控制LED的颜色和亮度,从而实现各种令人惊叹的光效果。同时,我们也要注意处理数据传输和电源管理等问题,以确保LED的稳定工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾名招财

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值