Как очистить две полосы FastLED ws2812b по отдельности? Одна полоса подключается к контакту 7 UNO, а другая полоса — к контакту 6 UNO.
Источник питания внешний. Я хочу очистить одну полосу, скажем, контакт 7, и в то же время я не хочу, чтобы другая полоса, скажем, контакт 6, выключалась ... Я использую FastLED.очистить(); FastLED.show(); Но он очищает все светодиодные ленты, подключенные к контактам 6 и 7. Какой код отключает только одну полосу?
@Dhruv Rastogi, 👍1
1 ответ
▲ 1
Вы можете использовать два экземпляра CLEDController
, которыми вы можете управлять по отдельности, а с помощью clearLedData
вы можете очищать либо одну, либо другую светодиодную ленту (в зависимости от CLEDController
экземпляр).
Ниже приведен код, который я скопировал из https://forum.arduino.cc/t/xrads-fastled-fastled- ясно-вопрос/693569/8 который содержит больше информации:
#include <FastLED.h>
#define COLOR_ORDER GRB
#define LED_TYPE WS2812B
#define DATA_PIN 9
#define NUM_LEDS 26
CRGB leds[NUM_LEDS];
#define HEADLIGHTS 10 //светодиодный штифт для фар
#define NUM_HEADLIGHTS 2
CRGB leds2[NUM_HEADLIGHTS];
CLEDController &ledController = FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);
CLEDController &headlightController = FastLED.addLeds<LED_TYPE, HEADLIGHTS, COLOR_ORDER>(leds2, NUM_HEADLIGHTS);
void setup() {
ledController.setCorrection(TypicalLEDStrip);
headlightController.setCorrection(TypicalLEDStrip);
ledController.clearLedData();
headlightController.clearLedData();
FastLED.show();
}
void loop() {
}
,
@Michel Keijzers
Смотрите также:
- Как разделить входящую строку?
- Как использовать SPI на Arduino?
- Как сбросить или отформатировать Arduino?
- Управление скоростью вентилятора с помощью библиотеки Arduino PID
- Arduino Due vs Mega 2560
- Как получить уникальный идентификатор для всех плат Arduino?
- Почему я получаю avrdude: stk500v2_ReceiveMessage(): timeout error when uploading to Arduino Mega?
- Тайм-аут связи Arduino Mega с ошибкой программатора
Большое спасибо, Мишель, это сработало замечательно!, @Dhruv Rastogi