“炫彩LED灯”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
硬件测试
第54行: 第54行:
 
*Setup 2:将CoreUSB,Hub,Color LED连接在一起。通过USB数据线将接入电脑。
 
*Setup 2:将CoreUSB,Hub,Color LED连接在一起。通过USB数据线将接入电脑。
 
[[file:mCookie-strandtext-pc.JPG|600px|center]]
 
[[file:mCookie-strandtext-pc.JPG|600px|center]]
*Setup 3:点击Files > Examples > _07_sensor_LED_WS2812 > strandtest, 加载程序。
+
*Setup 3:打开Arduino IDE,将下列代码复制到IDE中。
[[file:mCookie-strandtext.JPG|600px|center]]
+
<source lang="cpp">
 +
#include <Adafruit_NeoPixel.h>
 +
 
 +
#define PIN 6  //led灯控制引脚
 +
#define PIN_NUM 2 //允许接的led灯的个数
 +
 
 +
Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIN_NUM, PIN, NEO_GRB + NEO_KHZ800);
 +
 
 +
void setup() {
 +
  strip.begin();
 +
  strip.show();
 +
}
 +
 
 +
void loop() {
 +
  colorWipe(strip.Color(255, 0, 0), 500); // 每隔500ms切换到下一个灯显示红色
 +
  colorWipe(strip.Color(0, 255, 0), 500); // 每隔500ms切换到下一个灯显示绿色
 +
  colorWipe(strip.Color(0, 0, 255), 500); // 每隔500ms切换到下一个灯显示蓝色
 +
}
 +
 
 +
// Fill the dots one after the other with a color
 +
void colorWipe(uint32_t c, uint8_t wait) {
 +
  //循环依次让每隔灯亮指定的颜色,C表示颜色,wait表示每个灯的颜色持续的时间
 +
  for (uint16_t i = 0; i < strip.numPixels(); i++) {
 +
    strip.setPixelColor(i, c);
 +
    strip.show();
 +
    delay(wait);
 +
  }
 +
}
 +
</source>
 
*Setup 4:选择正确的板卡和COM端口,编译通过后直接下载。参考[[AVR核心:Getting started/zh]]
 
*Setup 4:选择正确的板卡和COM端口,编译通过后直接下载。参考[[AVR核心:Getting started/zh]]
 
[[file:upload.JPG|thumb|800px|center]]
 
[[file:upload.JPG|thumb|800px|center]]
第62行: 第90行:
 
===程序调试===
 
===程序调试===
 
*“#define PIN 6”定义了控制LED的引脚,6表示Microduino的D6引脚,可通过Hub转接出来,用户可以更改。
 
*“#define PIN 6”定义了控制LED的引脚,6表示Microduino的D6引脚,可通过Hub转接出来,用户可以更改。
*“Adafruit_NeoPixel strip = Adafruit_NeoPixel(60, PIN, NEO_GRB + NEO_KHZ800);”里面的60,这个数值就是你要级联灯的数量,pin就是你控制的引脚。
+
*“#define PIN_NUM 2”定义了允许接的led灯的个数。
 
*“colorWipe(uint32_t c, uint8_t wait)”函数说明:
 
*“colorWipe(uint32_t c, uint8_t wait)”函数说明:
 
**“uint32_t c”定义灯的颜色,格式“strip.Color(R, G, B)”
 
**“uint32_t c”定义灯的颜色,格式“strip.Color(R, G, B)”
第68行: 第96行:
 
***G:绿色值(0-255)。
 
***G:绿色值(0-255)。
 
***B:蓝色值(0-255)。
 
***B:蓝色值(0-255)。
**“uint8_t wait”定义单个灯延时时间,灯的数量在开始已定义。
+
**“uint8_t wait”定义单个灯延时时间。
**例子:colorWipe(strip.Color(255, 0, 0), 50);显示红色。
+
**例子:colorWipe(strip.Color(255, 0, 0), 500);每隔500ms切换到下一个灯显示红色。
 
**用户可以用颜色工具来更改颜色[http://www.atool.org/colorpicker.php color]。
 
**用户可以用颜色工具来更改颜色[http://www.atool.org/colorpicker.php color]。
*“rainbow()”与“rainbowCycle()”则是炫酷的花样颜色。
 
  
 
==应用==
 
==应用==

2015年10月14日 (三) 09:32的版本

Language English

概述

Microduino-Color led是彩色LED灯,内置IC控制芯片,单总线控制,可任意级联,只需要一个I/O口就可以控制所有的灯,每个彩灯都可以单独控制。

特色

  • 控制电路与RGB芯片集成在一个5050封装的元器件中;
  • 单总线控制,只需要一个I/O口就可以控制,完成数据的接收与解码;
  • 内置IC控制,串行级联接口,可以级联控制;
  • 每个像素点的三基色颜色可实现256级亮度显示,完成16777216种颜色的全真色彩显示,扫描频率不低于400Hz/s;
  • 内置上电复位和掉电复位电路;
  • 超低功率,超长寿命。

规格

  • 电器规格
    • 工作电压:3.3V~5V
    • 输出设备
  • 技术参数
    • 采用WS2812集成控制光源;
    • 每个像素点的RGB可实现256级亮度显示
    • 当刷新速率30帧/秒时,级联数不小于1024点;
    • 任意两点传传输距离在不超过3米时无需增加任何电路;
  • 尺寸
    • LED灯大小:5mm*5mm,
    • 板子大小:20mm*20mm
    • 1.27mm间距的4Pin接口与sensorhub相连
  • 接法
    • 系统与LED(IN):系统控制LED需要将Hub端的信号接到LED的IN底座。
    • LED级联(OUT):前一个LED的OUT接下一个LED的IN
CoreUSB Ble steup11.jpg

文档

文件:Ws2812.pdf

开发

设备

模块 数量 功能
mCookie-CoreUSB/zh 1 核心板
mCookie-Hub/zh 1 传感器转接板
Microduino-Color led/zh 1 彩灯

硬件测试

  • Setup 1:将Color led背面的IN和Hub的数字口(D6)接起来,这个就是控制LED的引脚,用户可自己更改。
  • Setup 2:将CoreUSB,Hub,Color LED连接在一起。通过USB数据线将接入电脑。
  • Setup 3:打开Arduino IDE,将下列代码复制到IDE中。
#include <Adafruit_NeoPixel.h>

#define PIN 6   //led灯控制引脚
#define PIN_NUM 2 //允许接的led灯的个数

Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIN_NUM, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  strip.begin();
  strip.show(); 
}

void loop() {
  colorWipe(strip.Color(255, 0, 0), 500); // 每隔500ms切换到下一个灯显示红色
  colorWipe(strip.Color(0, 255, 0), 500); // 每隔500ms切换到下一个灯显示绿色
  colorWipe(strip.Color(0, 0, 255), 500); // 每隔500ms切换到下一个灯显示蓝色
}

// Fill the dots one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
  //循环依次让每隔灯亮指定的颜色,C表示颜色,wait表示每个灯的颜色持续的时间
  for (uint16_t i = 0; i < strip.numPixels(); i++) {
    strip.setPixelColor(i, c);
    strip.show();
    delay(wait);
  }
}
Upload.JPG
  • 下载后就可以看到很炫酷的效果了。

程序调试

  • “#define PIN 6”定义了控制LED的引脚,6表示Microduino的D6引脚,可通过Hub转接出来,用户可以更改。
  • “#define PIN_NUM 2”定义了允许接的led灯的个数。
  • “colorWipe(uint32_t c, uint8_t wait)”函数说明:
    • “uint32_t c”定义灯的颜色,格式“strip.Color(R, G, B)”
      • R:红色值(0-255)。
      • G:绿色值(0-255)。
      • B:蓝色值(0-255)。
    • “uint8_t wait”定义单个灯延时时间。
    • 例子:colorWipe(strip.Color(255, 0, 0), 500);每隔500ms切换到下一个灯显示红色。
    • 用户可以用颜色工具来更改颜色color

应用

  • LED全彩发光字灯串,LED全彩模组, LED全彩软灯条硬灯条,LED护栏管。
  • LED点光源,LED像素屏,LED异形屏,各种电子产品,电器设备跑马灯。