Zaznaczam, że osobiście nie pisałem obsługi tych układów, ale co nieco o nich już czytałem i mogę przedstawić to, co udało mi się ustalić
W tych sterownikach LED został wykorzystany znany skądinąd protokół DMX512. W odróżnieniu od WS2812 transmisja nie jest tutaj szeregowa. Wyjście danych z mikrokontrolera jest podłączone jednocześnie do wszystkich pinów DAI układów WS2821, czyli wszystkie układy mają bezpośredni dostęp do wszystkich danych wysyłanych przez mikrokontroler, a reagują tylko na ramki o numerze zgodnym z adresem danego układu. Ma to taką zaletę (w stosunku do transmisji szeregowej), że w razie awarii jednego piksela, pozostałe działają prawidłowo.
Pewną niedogodnością takiego rozwiązania jest to, że każdemu takiemu układowi należy najpierw nadać odpowiedni adres (a właściwie trzy, osobno dla każdego koloru, nie wiem jak to dokładnie jest rozwiązane). Dlatego też oprócz pinu DAI układ posiada pin ADRI, który służy do ustawienia adresu układu. Pin ADRO najprawdopodobniej jest wyjściem do kaskadowego łączenia układów, aby można było ustawiać adresy "taśmowo", bez konieczności podłączania każdego układu osobno. Z jednej strony adres taki, raz ustawiony, zostaje zapamiętany przez układ, więc nie ma potrzeby ustawiania go każdorazowo. Z drugiej strony, dostęp do informacji na temat protokołu ustawiającego adres jest nieco utrudniony. Można ewentualnie podejrzeć w sketchach Arduino, bo osobiście innego źródła informacji póki co nie znalazłem. Na razie jednak nie sprawdzałem tego osobiście, na ile skuteczne rozwiązanie by to było.
Moim zdaniem jest to wysoce prawdopodobne, że w przypadku zakupu gotowej taśmy adresy są fabrycznie ustawione (nie sprawdzałem tego). Może być jednak problem w przypadku próby połączenia taśm w szereg, lub podzielenia na mniejsze odcinki. W pierwszym przypadku najprawdopodobniej będzie problem z dublowaniem adresów, w drugim adresacja niektórych odcinków nie będzie zaczynać się od 1. WS2812 były bardziej elastyczne pdo tym względem.
Podsumowując:
- Układy sterujesz za pomocą pinu DAI stosując protokół DMX512. To akurat jest dość dobrze udokumentowane w internecie.
- Jeśli masz te układy w postaci taśmy, być może nie musisz wcale zważać na piny ADRI i ADRO, musisz to sprawdzić.
- Jeśli będzie konieczność ustawienia adresów, spróbuj poszukać na GitHubie kodu dla Arduino (jak na przykład tutaj, ale nie analizowałem dokładnie osobiście). Oczywiście nie proponuję Ci używania Arduino, tylko analizę kodu w celu ustalenia protokołu adresowania układów