Выцветание от красного к белому и синему непрерывный цикл на светодиодной ленте ws2812
Я большой новичок, когда дело доходит до написания скетча, и поставил перед собой задачу для предстоящего проекта 4 июля, который остановился.
Я пытаюсь настроить полосу из 30 светодиодов, чтобы она меняла цвет с красного на белый и синий через FastLED на Wemos D1 mini. Я также хотел, чтобы он мигал каждым цветом после того, как 3 цвета поблекнут, и непрерывно повторял их.
Я искал много разных форумов и сумел добиться того, чтобы выцветание сменилось с красного на синий, но ни за любовь, ни за деньги не могу добавить белое между ними.
Может ли кто-нибудь указать мне правильное направление?
void setup(void) {
ESP.wdtDisable();
ESP.wdtEnable(WDTO_8S);
Serial.begin(9600);
int n = WiFi.scanNetworks();
Serial.println("");
if (n == 0)
Serial.println("no networks found");
else {
for(int i=0;i<n;i++) {
if(WiFi.SSID(i)==ssid1) {
WiFi.begin(ssid1,password1);
ssid=ssid1;
} else if(WiFi.SSID(i)==ssid2) {
WiFi.begin(ssid2,password2);
ssid=ssid2;
} else if(WiFi.SSID(i)==ssid3) {
WiFi.begin(ssid3,password3);
ssid=ssid3;
}
}
}
display.init();
display.flipScreenVertically();
display.setFont(ArialMT_Plain_16);
display.setTextAlignment(TEXT_ALIGN_LEFT);
display.drawStringMaxWidth(15,15, 128,"Display started");
display.display();
// Wait for connection
display.clear();
int j=0;
while(j<10) {
display.drawStringMaxWidth(15,15, 128,"connected to");
display.drawStringMaxWidth(15,32, 128,ssid);
display.display();
display.clear();
delay(1000);
j++;
}
display.drawStringMaxWidth(15,32, 128,"");
display.display();
Serial.print("Connected to ");
display.clear();
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
if (mdns.begin("esp8266WebForm", WiFi.localIP())) {
Serial.println("MDNS responder started");
}
server.onNotFound(handleNotFound);
server.begin();
Serial.print("Connect to http://esp8266WebForm.local or http://");
Serial.println(WiFi.localIP());
server.on("/", getvalues);
pinMode(buzzPin,OUTPUT);
pinMode(but,INPUT);
}
void loop(void) {
ESP.wdtFeed();
if((WiFi.status()== WL_DISCONNECTED)||(WiFi.status()==WL_CONNECTION_LOST)) {
display.drawStringMaxWidth(15,15, 128,"disconnected");
display.display();
int n = WiFi.scanNetworks();
Serial.println("");
if (n == 0)
Serial.println("no networks found");
else {
for(int i=0;i<n;i++) {
if(WiFi.SSID(i)==ssid1) {
WiFi.begin(ssid1,password1);
ssid=ssid1;
} else if(WiFi.SSID(i)==ssid2) {
WiFi.begin(ssid2,password2);
ssid=ssid2;
} else if(WiFi.SSID(i)==ssid3) {
WiFi.begin(ssid3,password3);
ssid=ssid3;
}
}
int j=0;
display.clear();
while(j<10) {
display.drawStringMaxWidth(15,15, 128,"connected to");
display.drawStringMaxWidth(15,32, 128,ssid);
display.display();
display.clear();
delay(1000);
j++;
}
display.clear();
display.drawStringMaxWidth(15,32, 128,"");
display.display();
}
}
getvalues();
delay(20000);
}
@Benjini, 👍0
Обсуждение1 ответ
Думайте о цвете как о точке в 3d определяемой его атрибутами r g b
Подумайте здесь о двух моментах: один-ваш начальный цвет в этом 3d-пространстве, а другой-ваш конечный цвет.
Определите путь, который вы хотите пройти от начального цвета до конечного cokor.
Разрежьте его за несколько шагов и используйте свой код, чтобы пройти по этому пути.
Выполнено
- Улучшенное циклическое переключение цветов RGB.
- Библиотека FastLED: Как настроить яркость одного пикселя в абсолютном масштабе?
- Управление цифровой адресной светодиодной лентой RGB 12 В с помощью Arduino
- Как управлять встроенными светодиодами Arduino Nano 33 BLE Sense?
- Адресная RGB-полоса работает по отдельности, но не может настроить все светодиоды на полностью белый цвет.
- Как изменить яркость светодиодного освещения?
- Нужна помощь в подключении светодиодной матрицы 64х32.
- Моргнуть всей светодиодной лентой
Если вы исправите орфографию и добавите некоторые знаки препинания, чтобы облегчить чтение, вы можете получить ответ., @Greenonline
Кроме того, опубликуйте, какой у вас код., @Johnny Mopp
Вам удалось сделать так, чтобы он стал белым сам по себе, без выцветания?, @Code Gorilla
Вот скетч, который я получил, и я не уверен, как добавить белый цвет, хотя я могу сделать его белым сам по себе, используя скетч, который я нашел с помощью кода rgb., @Benjini
не знаю, как импортировать скетч в это как новый, но я отредактировал свой вопрос, извините, за изменение шрифта, @Benjini
https://arduino.stackexchange.com/editing-help, @gre_gor
Также проверьте [быстрый пример](https://github.com/FastLED/FastLED/blob/master/examples/ColorPalette/ColorPalette.ino)., @gre_gor
Спасибо за вашу помощь, я должен быть в состоянии разобраться с этим сейчас, gre_gor очень признателен, @Benjini