ESP8266 + ws2812 编写子弹灯的代码
时间: 2024-04-26 20:22:30 浏览: 138
Esp8266驱动ws2812源码
以下是基于Arduino平台编写的ESP8266 + ws2812子弹灯代码:
```c++
#include <Adafruit_NeoPixel.h>
#define LED_PIN 4 // ws2812所连接的GPIO引脚
#define LED_COUNT 60 // ws2812的数量
#define BRIGHTNESS 255 // 亮度值,取值范围0-255
#define DELAY_TIME 20 // 每个灯亮起的时间间隔,单位为毫秒
Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
strip.begin();
strip.setBrightness(BRIGHTNESS);
strip.show(); // 初始化,关闭所有灯
}
void loop() {
// 子弹灯特效
for(int i=0; i<LED_COUNT; i++) {
strip.setPixelColor(i, strip.Color(255, 0, 0)); // 设置当前灯的颜色为红色
strip.show(); // 点亮当前灯
delay(DELAY_TIME); // 延时
strip.setPixelColor(i, strip.Color(0, 0, 0)); // 关闭当前灯
}
}
```
该代码通过循环遍历每个ws2812灯,依次点亮并关闭,实现了子弹灯的效果。可以根据实际需求,修改亮灯颜色、亮灯时间间隔等参数。
阅读全文