Skocz do zawartości

Arduino i WS2811 animacja włączania kolejnych diod


Lolheadshootpl

Pomocna odpowiedź

@Lolheadshootpl witam na forum, przeniosłem Twój temat do właściwego działu 🙂 Na czym dokładnie utknąłeś? Taka animacja to nic trudnego, więc nie wiem gdzie dokładnie jest problem. Widziałeś np. ten poradnik, w którym omówiłem sposób sterowania tymi diodami? Kurs Arduino, poziom II: https://forbot.pl/blog/kurs-arduino-ii-diody-rgb-tradycyjne-oraz-ws2812-id15495 (treść, która Cie interesuje jest w drugiej połowie poradnika).

  • Lubię! 1
Link do komentarza
Share on other sites

@Lolheadshootpl chyba cos źle zrozumiałeś, nie ma żadnych limitów tego typu 🙂  O jaki dokładnie fragment Ci chodzi? Pamiętaj, że WS2811 to diody RGB, czyli w każdej z nich znajdują się 3 osobne struktury świecące (czerwona, zielona i niebieska). Może o to chodziło?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

45 minut temu, Lolheadshootpl napisał:

Czyli odpowiednio programując w Arduino mogę włączać pojedynczą diodę na pasku WS2811?

Dokładnie tak, zrób ćwiczenia z tego artykułu, który wysłałem to wszystko będzie jasne 🙂

Link do komentarza
Share on other sites

Po wgraniu tego programu pierwsze 9 diod świeci się na biało...

#include <Adafruit_NeoPixel.h> //Dołączenie biblioteki
 
//Konfiguracja linijki
Adafruit_NeoPixel linijka = Adafruit_NeoPixel(8, 6, NEO_GRB + NEO_KHZ800);
 
void setup() {
  linijka.begin(); //Inicjalizacja
  linijka.show(); 
 
  linijka.setPixelColor(0, linijka.Color(0, 255, 0)); //Dioda nr 1 świeci na zielono
  linijka.show(); 
}
 
void loop() {
 
}

 

Link do komentarza
Share on other sites

Brakuje jeszcze informacji na temat liczby diod oraz tego czy to diody RGB czy RGBW. W tej chwili masz skonfigurowany pasek dla 8 diod podłączonych do pinu 6 - czy tak jest faktycznie. Do tego, jeśli masz diody WS2811, a nie WS2812 (które były użyte w artykule) to powinieneś zmienić ustawienia na podstawie dokumentacji biblioteki: https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use - w przypadku WS2811 powinno być "NEO_KHZ400", a nie "NEO_KHZ800".

Link do komentarza
Share on other sites

@Lolheadshootpl a skonfigurowałeś w takim razie program dla paska o długości 150 diod? Jak to podłączyłeś do Arduino - konkretnie chodzi mi o zasilanie paska. Takie błędne działania to może być też kwestia zbyt słabego/błędnego zasilania. Na pewno pasek podłączony jest do pinu numer 6?

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.