ESP32-Audio-Kit音频开发板配合库文件FastLED.h的使用能轻松地控制WS2812彩色灯带的显示效果,所用的驱动引脚及灯带的点数均可通过参数进行调整。
以7点彩灯带为例,其显示程序如下:
#include <FastLED.h>
#define NUM_LEDS 7
#define DATA_PIN 5
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical
}
void loop() {
leds[0] = CRGB::Red;
leds[1] = CRGB::Green;
leds[2] = CRGB::Blue;
leds[3] = CRGB::Red+CRGB::Green;
leds[4] = CRGB::Red+CRGB::Blue;
leds[5] = CRGB::Green+CRGB::Blue;
leds[6] = CRGB::Green+CRGB::Blue+CRGB::Red;
FastLED.show();
delay(500);
leds[0] = CRGB::Black;
leds[1] = CRGB::Black;
leds[2] = CRGB::Black;
leds[3] = CRGB::Black;
leds[4] = CRGB::Black;
leds[5] = CRGB::Black;
leds[6] = CRGB::Black;
FastLED.show();
delay(500);
}
经编译和上传,其结果如图1所示,图2是其运行效果。
图1完成上传
对于60点的彩色灯带,其显示程序如下:
#include <FastLED.h>
#define NUM_LEDS 60
#define DATA_PIN 5
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical
}
void loop() {
int i;
for(i=0;i<10;i++)
{
leds[0+i*6] = CRGB::Red;
leds[1+i*6] = CRGB::Green;
leds[2+i*6] = CRGB::Blue;
leds[3+i*6] = CRGB::Red+CRGB::Green;
leds[4+i*6] = CRGB::Red+CRGB::Blue;
leds[5+i*6] = CRGB::Green+CRGB::Blue;
}
FastLED.show();
delay(500);
for(i=0;i<10;i++)
{
leds[0+i*6] = CRGB::Black;
leds[1+i*6] = CRGB::Black;
leds[2+i*6] = CRGB::Black;
leds[3+i*6] = CRGB::Black;
leds[4+i*6] = CRGB::Black;
leds[5+i*6] = CRGB::Black;
}
FastLED.show();
delay(500);
}
其运行效果如图3所示:
本帖最后由 jinglixixi 于 2021-9-25 13:15 编辑引用: se7ens 发表于 2021-9-24 09:52 正好在玩这个灯,你这个例子不错 回头我也试试 先谢谢了
引用: se7ens 发表于 2021-10-11 14:04 可以发一下FastLED.h文件吗 我在IDE里找不到这个 多谢了
要在ArduinoIDE中编写程序,需添加第三方的FastLED库,其添加与使用方法为:
1.选取“项目”菜单下“加载库”的“管理库”选项,在库管理器的搜索栏,输入“FastLED”;
2. 在出现搜索结果后,点击“安装”按钮;
3. 在完成安装后,即可见到“INSTALLED”的提示,然后点击“关闭”以返回原界面;
在添加FastLED库之后,即可编写相应的控制程序,其操作方法为:
1. 选取“文件”菜单下的“新建”选项,生成一个新文件;
2. 在“项目”菜单的“加载库”下可见到“FastLED”选项,点击它即可在新文件中添加FastLED的头文件;
引用: se7ens 发表于 2021-10-11 14:04 可以发一下FastLED.h文件吗 我在IDE里找不到这个 多谢了
已发出回复,你看一下。
引用: jinglixixi 发表于 2021-10-11 14:26 要在ArduinoIDE中编写程序,需添加第三方的FastLED库,其添加与使用方法为: 1.选取“项目&rdquo ...
可以了,谢谢
引用: se7ens 发表于 2021-10-11 23:33 可以了,谢谢