【发布时间】:2017-01-03 20:09:21
【问题描述】:
我有一个连接了 WS2812 的 Arduino,由我电脑上的 USB 供电,我正在尝试运行以下代码:
#include <FastLED.h>
#define NUM_LEDS 144
#define DATA_PIN 6
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);
FastLED.show();
}
void loop() {
for(int dot = 0; dot < NUM_LEDS; dot++) {
fill_solid(leds, NUM_LEDS, CRGB::Red);
leds[dot] = CRGB::Black;
leds[dot] = CRGB::Blue;
FastLED.show();
leds[dot] = CRGB::Red;
delay(30);
}
}
void setAll() {
FastLED.show();
}
它的作用是将所有 LED 设置为红色,然后通过每个 LED 将其关闭,然后变为蓝色,然后再变为红色。
由于某种原因,它获得了 X 个 LED,然后崩溃。我所说的崩溃是指 Arduino 将自己与计算机断开连接,但 Arduino 会继续工作,LED 灯条仍处于通电状态。
有什么想法吗?这是一个真正的Uno。
还有。如果我将 LED 插入 3.3v 引脚,动画效果会很好,但 LED 会闪烁黑色并且没有完成蓝色部分。
【问题讨论】:
-
不清楚这是一个软件问题。现在没有 Arduino stackexchange 站点吗?在那里试试。
标签: arduino