arduino流水灯从左到右依次亮起,直到最后全部亮起代码
时间: 2024-09-23 15:04:41 浏览: 48
02 从左到右的流水灯.zip
在Arduino上实现从左到右逐点亮起流水灯(LED灯串),我们可以使用数组和for循环来控制。假设你有8个LED连接在一个共阳极的数码管或者I2C LED条上,可以参考下面的示例代码:
```cpp
#include <FastLED.h> // 必须包含这个库,用于处理LED灯
#define NUM_LEDS 8 // LED的数量
CRGB leds[NUM_LEDS]; // 创建leds数组存储颜色信息
void setup() {
FastLED.addLeds<WS2812B, PinNumber>()(leds, NUM_LEDS); // 根据实际硬件连接配置
FastLED.begin(); // 初始化LED灯
}
void loop() {
for (int i = 0; i < NUM_LEDS; ++i) { // 遍历LED数组
leds[i] = CRGB::Red; // 设置初始颜色为红色
delay(50); // 每次点亮间隔50毫秒
FastLED.show(); // 更新LED状态
if (i == NUM_LEDS - 1) { // 当遍历到最后一个LED时
FastLED.clear(); // 全部关闭
break;
} else { // 对于其他LED,逐渐变淡
leds[i] = CHSV(i * 50 / (NUM_LEDS - 1), 255, 255);
}
}
}
```
在这个例子中,我们首先设置所有LED为红色,然后逐个改变它们的颜色,从最左边的LED开始,每次将亮度增加一点,直到最后一个LED变为白色。当到达最后一个LED时,所有的LED都会关闭。
阅读全文