使用FastLED库实现的WS2812B白色呼吸灯代码
时间: 2024-03-16 16:47:35 浏览: 118
呼吸灯代码
以下是一个使用FastLED库实现的WS2812B白色呼吸灯代码示例:
```C++
#include <FastLED.h>
#define LED_PIN 6
#define LED_COUNT 1
CRGB leds[LED_COUNT];
void setup() {
FastLED.addLeds<WS2812B, LED_PIN, GRB>(leds, LED_COUNT);
FastLED.setBrightness(100); // 设置亮度值
FastLED.show(); // 初始化所有像素为黑色
}
void loop() {
// 白色呼吸灯代码
for(int i = 0; i < 256; i++){
int brightness = exp(sin(i/180.0*PI)*255.0);
leds[0] = CRGB(brightness, brightness, brightness);
FastLED.show();
delay(10);
}
}
```
该代码使用了FastLED库,通过设置LED_PIN和LED_COUNT来定义控制WS2812B灯带的引脚和灯珠数量。在setup函数中,我们初始化了灯带并将所有像素设置为黑色。我们使用FastLED.setBrightness函数来设置亮度值。在loop函数中,我们使用sin函数来生成呼吸灯的亮度值,并将其应用于RGB通道上。最后,我们使用FastLED.show函数来刷新像素值,并使用delay函数来控制呼吸灯的速度。
阅读全文