简单示例 |
LED基本设置 |
简单FastLED示例
闪烁LED光带灯珠
以下程序旨在展示使用FastLED库控制LED光带的基本程序结构。此程序将WS2812LED光带上第一个灯珠点亮和熄灭红色。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
/* * blinkOne * 太极创客 http://www.taichi-maker.com/ * 03/01/2018 * * =====================功能说明===================== * 使用Arduino Uno开发板控制WS2812光带一个灯珠的闪烁。 * * 本示例程序需要Arduino第三方库FastLED。如有需要,可通过以下链接下载该库: * http://www.taichi-maker.com/homepage/download/#library-download * * 如需了解如何为Arduino IDE安装第三方库,请参见以下链接地址的视频教程: * http://www.taichi-maker.com/homepage/reference-index/arduino-library-index/install-arduino-library/ * * =====================电路连接====================== * 此示例程序中,Arduino输出控制信号引脚为9号引脚。 * * 如需获得详细电路连接说明图,请参阅太极创客网站中 * 有关WS2812 LED光带方面的相关内容,太极创客网站地址: * * http://WWW.TAICHI-MAKER.COM * * 此示例程序为配合太极创客制作的 * 《零基础入门学用ARDUINO教程-智能应用篇》使用 */ #include "FastLED.h" // 此示例程序需要使用FastLED库 #define NUM_LEDS 30 // LED灯珠数量 #define DATA_PIN 9 // Arduino输出控制信号引脚 #define LED_TYPE WS2812 // LED灯带型号 #define COLOR_ORDER GRB // RGB灯珠中红色、绿色、蓝色LED的排列顺序 uint8_t max_bright = 128; // LED亮度控制变量,可使用数值为 0 ~ 255, 数值越大则光带亮度越高 CRGB leds[NUM_LEDS]; // 建立光带leds void setup() { LEDS.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS); // 初始化光带 FastLED.setBrightness(max_bright); // 设置光带亮度 } void loop() { leds[0] = CRGB::Red; // 设置光带中第一个灯珠颜色为红色,leds[0]为第一个灯珠,leds[1]为第二个灯珠 FastLED.show(); // 更新LED色彩 delay(50); // 等待500毫秒 } |
LED基本设置
1 2 3 4 5 6 7 8 9 |
leds[0] = CRGB::Red; // 将光带上第1个LED灯珠设置为红颜色 FastLED.show(); // 点亮/更新LED ... leds[0].r = 255; // 将光带上第1个LED灯珠的RGB数值中R数值设置为255 leds[0].g = 125; // 将光带上第1个LED灯珠的RGB数值中G数值设置为255 leds[0].b = 0; // 将光带上第1个LED灯珠的RGB数值中B数值设置为0 FastLED.show(); // 点亮/更新LED |