SKU:RB-02S092 全彩LED发光模块

来自ALSROBOT WiKi
2018年3月27日 (二) 17:26Arduino77讨论 | 贡献的版本

跳转至: 导航搜索
02S09201.png

目录

产品概述

此产品具有4个全彩 WS2812 RGB LED组成。通过单片机,可以单独控制每个LED。通过混合不同量的红,绿,蓝,调整其亮度和创造任何颜色。此款产品数据接口采用防插反插头,接口两侧分别有字母“D”代表信号类型为数字信号,和 “RGB”标识代表模块类型,特设 4 个 M3 固定安装孔,调节方向与固定方便易用,美观大方。

规格参数

  1. 工作电压:5v
  2. 尺寸大小:40mm x 25mm
  3. 重量大小:5g
  4. 信号类型:数字输入
  • 产品尺寸图:
Size031.jpg

引脚定义

  • OUT:级联引脚
  • DIN:信号引脚
  • -:电源地
  • +:电源正极
02S09202.png

使用方法(Arduino)

工作原理

产品由 4 个全彩 WS2812 RGB LED 组成,WS2812 是一个集控制电路与发光电路于一体的智能外控LED光源。其外型与一个 5050 LED 灯珠相同,每个元件即为一个像素点。像素点内部包含了智能数字接口数据锁存信号整形放大驱动电路,还包含有高精度的内部振荡器和 12V 高压可编程定电流控制部分,有效保证了像素点光的颜色高度一致。数据协议采用单线归零码的通讯方式,像素点在上电复位以后,DIN 端接受从控制器传输过来的数据,首先送过来的 24bit 数据被第一个像素点提取后,送到像素点内部的数据锁存器,剩余的数据经过内部整形处理电路整形放大后通过 DO 端口开始转发输出给下一个级联的像素点,每经过一个像素点的传输,信号减少 24bit。像素点采用自动整形转发技术,使得该像素点的级联个数不受信号传送的限制,仅仅受限信号传输速度要求。LED 具有低电压驱动,环保节能,亮度高,散射角度大,一致性好,超低功率,超长寿命等优点。将控制电路集成于LED上面,电路变得更加简单,体积小,安装更加简便。

使用硬件

  • 1* Arduino UNO 控制器
  • 1* 全彩 LED 发光模块
  • 1* 杜邦线若干
  • 1* USB 数据线

实验连接图

02S09203.png

arduino_code_1

#include <MeRGBLed.h>
float j, f, k;

MeRGBLed led(PORT_3); //连接 RGB LED 到 D13 引脚
//MeRGBLed led(PORT_3,0); //连接 RGB LED 到 D12 引脚

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  color_1();
  for(int i=0;i<2000;i++)
  color_2();
  led.setColor(0, 0, 0);
  led.show();
  }

/*
设定某个LED为指定颜色
*/
void color_1()
{
  led.setColorAt(2, 90, 30, 30); // 设置第 2 个LED的 RGB 值
  led.setColorAt(3, 100, 30, 30); // 设置第 3 个LED的 RGB 值
  led.show();//显示颜色
  delay(1000);
  led.setColorAt(2, 100, 130, 130);
  led.setColorAt(3, 200, 10, 10); // 设置第 3 个LED的 RGB 值 
  led.show();//显示颜色
  delay(500);
  }

/*
 * 设置全彩 LED 随机颜色
 */
void color_2()
{
  for(uint8_t t = 1; t < 15; t++)
  {
    uint8_t red  = 64 * (1 + sin(t / 2.0 + j / 4.0) );
    uint8_t green = 64 * (1 + sin(t / 1.0 + f / 9.0 + 2.1) );
    uint8_t blue = 64 * (1 + sin(t / 3.0 + k / 14.0 + 4.2) );
    led.setColor(red, green, blue);
  }
  led.show();
  j += random(1, 6) / 6.0;
  f += random(1, 6) / 6.0;
  k += random(1, 6) / 6.0;
  }

实验效果

将上述例程复制到 Arduino IDE 中,上传无误的情况下,正确连接全彩 LED 模块,首先会单独设置 LED 的颜色,然后交替发出七彩光,依次循环。

使用方法(Arduino 全彩LED级联)

使用硬件

  • 1* Arduino UNO 控制器
  • 1* 传感器扩展板 V5.0
  • 1* 全彩 LED 发光模块
  • 1* 杜邦线 * 若干
  • 1 * USB 数据线

实验连接图

注意:模块的级联是用上一级的 DOUT 连接下一级的 DIN

Rgb00001.png

arduino_code_2

#include <MeRGBLed.h>
MeRGBLed led(PORT_3);
int ledCount = 8; //设置LED的数量,1个模块是4个LED
float j,f,k;
void setup()
{
  led.setNumber(ledCount);
}
void loop(){
  color_loop();
}
void color_loop()
{  
  for (uint8_t t = 0; t < ledCount; t++)
  {
    uint8_t red =   64*(1+sin(t/2.0 + j/4.0       ));
    uint8_t green = 64*(1+sin(t/1.0 + f/9.0  + 2.1));
    uint8_t blue =  64*(1+sin(t/3.0 + k/14.0 + 4.2));
    led.setColorAt(t, red,green,blue);
  }
  led.show();
  j+=random(1,6)/6.0;
  f+=random(1,6)/6.0;
  k+=random(1,6)/6.0;
}

实验效果

两个级联的全彩 LED 随机显示不同的颜色

视频演示

RGB LED.png

产品相关推荐

Erweima.png

例子程序下载

产品购买地址

周边产品推荐

相关学习资料