点灯大师入门记

源码
#include "Freenove_WS2812_Lib_for_ESP32.h"
#define LEDS_COUNT 28 //彩灯数目
#define LEDS_PIN 8 //ESP32控制ws2812的引脚
#define CHANNEL 1 //控制通道,最多8路
Freenove_ESP32_WS2812 strip = Freenove_ESP32_WS2812(LEDS_COUNT, LEDS_PIN, CHANNEL, TYPE_GRB);//申请一个彩灯控制对象
u8 m_color[5][3] = { {255, 0, 0}, {0, 255, 0}, {0, 0, 255}, {255, 255, 255}, {0, 0, 0} };//彩灯颜色数组
int delayval = 100; //逐个彩灯显示间隔时间
void setup() {
strip.begin(); //初始化彩灯控制引脚
strip.setBrightness(10);//设置彩灯亮度
}
void loop() {
for (int j = 0; j < 5; j++) {
for (int i = 0; i < LEDS_COUNT; i++) {
strip.setLedColorData(i, m_color[j][0], m_color[j][1], m_color[j][2]);//指定彩灯显示的颜色
strip.show();//显示彩灯,不调用时彩灯不显示
delay(delayval);
}
delay(500);
}
}
彩虹色
#include "Freenove_WS2812_Lib_for_ESP32.h"
#define LEDS_COUNT 28 //彩灯数目
#define LEDS_PIN 8 //ESP32控制ws2812的引脚
#define CHANNEL 01 //控制通道,最多8路
Freenove_ESP32_WS2812 strip = Freenove_ESP32_WS2812(LEDS_COUNT, LEDS_PIN, CHANNEL, TYPE_GRB);//申请一个彩灯控制对象
void setup() {
strip.begin(); //初始化彩灯控制引脚
}
void loop() {
for (int j = 0; j < 255; j += 2) {
for (int i = 0; i < LEDS_COUNT; i++) {
strip.setLedColorData(i, strip.Wheel((i * 256 / LEDS_COUNT + j) & 255));//设置彩灯颜色数据
}
strip.show();//显示颜色
delay(5);
}
}