Не работает лента WS2811

Лазаренко

✩✩✩✩✩✩✩
10 Янв 2021
66
1
Москва
Саму ленту брал эту https://aliexpress.ru/item/32965042886.html (5m 60led IP30)

Взял кусочек ленты из 9 светодиодов, блок питания 12v 1А, подключил, провод к пину через резистор на 510ом горят только первые 3 светодиода, периодически загораются 6, но никогда не загораются 9, вот скетч


C++:
#include <iarduino_NeoPixel.h>                       //  Подключаем библиотеку iarduino_NeoPixel для работы со светодиодами NeoPixel
iarduino_NeoPixel led(4, 9);                          //  Объявляем объект LED указывая (№ вывода Arduino к которому подключены светодиоды NeoPixel, количество используемых светодиодов)

const long colors[7] {
  0xFF0000,
  0xffa500,
  0xffff00,
  0x008000,
  0x42aaff,
  0x0000ff,
  0x8b00ff
};



void setup() {
  Serial.begin(9600);
  led.begin();
}

void loop() {
  for (int i = 0; i <= sizeof(colors)/sizeof(long)-1; i++) {
    led.setColor(NeoPixelAll, colors[i]);
    led.write();

    delay(1000);
  }
}
Проблем 2, то что не все светодиоды горят, так еще и горят странными цветами, в массиве красный оранжевый желтый ...., а по факту оранжевым и желтым, фиолетовым не горит

1615044208124.png

еще беру более длинный участок, подключаю к питанию она мелькает один раз и все, видео в архиве. Эт что спор на али открывать?
 

Вложения

Изменено:

poty

★★★★★★✩
19 Фев 2020
3,237
942
Потому что Вы неправильно применяете led.setColor(NeoPixelAll, colors). Параметр NeoPixelAll устанавливает цвет второго параметра для всех светодиодов. Смотри здесь.
 

poty

★★★★★★✩
19 Фев 2020
3,237
942
Поставьте знак равенства между объявлением массива и его списком инициализации.
 

Лазаренко

✩✩✩✩✩✩✩
10 Янв 2021
66
1
Москва
с цветами разобрался, лента конечно их не так как надо отображает, например RGB 201, 0, 54 показывает как оранжевый, а на самом деле это ближе к красному
1615050916598.png
 

Лазаренко

✩✩✩✩✩✩✩
10 Янв 2021
66
1
Москва
что б не создавать отдельную тему, спрошу тут. Хватит ли такого мосфета для включение этой ленты (230 светодиодов будет)?

1615053795357.png

Судя по https://alexgyver.ru/ws2812_guide/#12v того блока питания что у меня сейчас хватит для питания всей ленты т.е. 12v и 1A
 

IamNikolay

★★★✩✩✩✩
15 Янв 2020
820
175
кстати когда задается цвет на светодиод, led.setColor(0, r,g,b); этот как оказалось на три первых диода, led.setColor(1, r,g,b); на 3 вторых и т.д., надо предупреждать о таком )
это есть в описании библиотеки, сначала прочитайте его и вопросов не будет
 

Лазаренко

✩✩✩✩✩✩✩
10 Янв 2021
66
1
Москва

IamNikolay

★★★✩✩✩✩
15 Янв 2020
820
175
и что вы обвели, номер светодиода тип я должен догадаться что речь про 3 идет?
Я обвел адрес странички на гитгабе, где описание библиотеки которая у вас в скетче.
Так же обвел описание функции, про которую вы говорили что описания нет.
О том что в ленте 2811 управление идет сразу на 3 светодиода - вы должны были узнать еще на стадии выбора ленты.
 
  • Лойс +1
Реакции: kostyamat

bort707

★★★★★★✩
21 Сен 2020
3,066
914
тип я должен догадаться что речь про 3 идет?
у 12вольтовой ленты управляются по три диода разом, для библиотеки эти три диода как один пиксель. Об этом знают все... и написано в гайде про ленту, если вы беретесь за проект и даже не знаете, что за лента у вас - кто виноват?
 

Лазаренко

✩✩✩✩✩✩✩
10 Янв 2021
66
1
Москва
вы должны были узнать еще на стадии выбора ленты
я лиж обратил внимание на неточность в вашем сообщение, в этом
это есть в описании библиотеки
в описании библиотеки этого нет, согласен что сам не усмотрел при выборе ленты, вы уцепились просто к "мыслям в слух" и вот уже какое сообщение раскручиваете это, проблема ж не в этом :)
 

IamNikolay

★★★✩✩✩✩
15 Янв 2020
820
175
я лиж обратил внимание на неточность в вашем сообщение, в этом
В чем неточность то?!
библиотека то предусмотрена для управления разными лентами.
это у вас лента по 3 включает, т.к. чип 2811, с другими чипами (например 2812, 2813) ленты будут по 1 включать.
да и описание это не мое, а автора модификации библиотеки, если вам нужна пометка "включает 3 светодиода на ленте 2811" - обращайтесь прямо к нему.
в описании библиотеки этого нет, согласен что сам не усмотрел при выборе ленты, вы уцепились просто к "мыслям в слух" и вот уже какое сообщение раскручиваете это, проблема ж не в этом :)
Я показал вам в чем ошибка и указал где можно подробности про функции узнать, т.к. вопрос банальные и при прочтении описания с примерами решается самостоятельно