Serwisy partnerskie:
Close icon
Serwisy partnerskie

Ekscytacje Maxa. Migające diody LED i śliniący się inżynierowie (5)

Article Image
W poprzednim odcinku (EdW 01/2024) rozważaliśmy tradycyjną trójkolorową diodę LED zawierającą trzy diody LED RGB ze wspólną katodą. Na potrzeby tej dyskusji będziemy je nazywać „podrzędnymi diodami LED”, aby przypomnieć, że znajdują się one wewnątrz pojedynczego elementu. Kiedy byłem młodszy, myślałem, że te elementy są ekstra fantastyczne. Szczerze mówiąc, z biegiem lat nieco się do nich przyzwyczaiłem, do tego stopnia, że zacząłem być nimi nieco rozczarowany.

Po pierwsze, każda taka dioda LED wymaga trzech cyfrowych pinów wejścia/wyjścia (I/O) w mikrokontrolerze (MCU) do jej obsługi. Po drugie, jeśli chcesz uzyskać dostęp do więcej niż ośmiu podstawowych kolorów zapewnianych przez włączanie i wyłączanie trzech podrzędnych diod LED – czerwony, zielony, niebieski, żółty (czerwony + zielony), cyjan (zielony + niebieski), gorący różowy (czerwony + niebieski), biały (wszystkie włączone) i czarny (wszystkie wyłączone) – wtedy te piny muszą obsługiwać modulację szerokości impulsu (PWM), jak opisano w części 1 tego cyklu (EdW 10/2023). I po trzecie, naprawdę nie byłem pod wrażeniem efektu końcowego.

Fajne NeoPixele

Przedstawię ci inny rodzaj trójkolorowej diody LED, która nigdy nie przestaje zachwycać. To WS2812, znana również jako „NeoPixel” (termin pierwotnie ukuty przez ludzi z Adafruit). Ta mała piękność ma około 5×5 mm kwadratowych i 2 mm grubości. Oprócz trzech bardzo jasnych diod LED RGB, WS2812 zawiera również niewielki układ kontrolera WS2811, który zawiera trzy 8-bitowe generatory PWM – po jednym dla każdej z diod LED – i obsługuje prosty protokół komunikacji szeregowej.

Każdy NeoPixel ma cztery piny (niektóre są dostarczane w obudowach 6-pinowych, ale tylko cztery z nich pełnią jakąkolwiek funkcję): 0 V, 5 V, Data-In i Data-Out, gdzie Data-Out z jednego NeoPixela może sterować Data-In innego. Umożliwia to łączenie łańcuchowe długich łańcuchów NeoPixeli i sterowanie całym łańcuchem za pomocą pojedynczego cyfrowego wyjścia MCU.

NeoPiksele są dostępne w różnych opcjach obudów, w tym w postaci surowych chipów (https://bit.ly/2SOBe8b), pojedynczych płytek Flora (https://bit.ly/3ck1ZZS) i tradycyjnych obudów przelotowych 8 mm (https://bit.ly/3bkJbs5). W przypadku modułów Flora, lubię kupować je w arkuszach po 20 sztuk (https://bit.ly/2LdFRVq).

Te małe świecidełka można również kupić w postaci pasków, pierścieni, biżuterii i wyświetlaczy (wystarczy wejść na stronę Adafruit.com, wyszukać „NeoPixel” i przejść przez 28 wspaniałych stron produktów NeoPixel). Do celów projektu, który dalej omówię, używam 5-metrowego paska zawierającego 30 NeoPikseli na metr (https://bit.ly/2SNHTzL). Istnieją paski z 60 i 144 NeoPikselami na metr, ale ja podzielę mój pasek na 144 pojedyncze segmenty. Z doświadczenia wiem, że cięcie pasków 30 na metr pozostawia mi większe miedziane pady do lutowania niż cięcie pasków 60 lub 144 na metr. W rzeczywistości, dla tego konkretnego projektu wolałbym użyć modułów Flora, jak omówiono powyżej, ale paski dają mi 30 NeoPikseli za 17 USD, podczas gdy arkusze Flora dają tylko 20 NeoPikseli za 35 USD. Ponieważ do tego projektu potrzebuję 144 NeoPikseli, cięcie pasków zapewnia znacznie tańszą opcję.

Aby przeczytać ten artykuł kup e-wydanie
Kup teraz
Firma:
Tematyka materiału: NeoPixele, Seeeduino XIAO, WS2812, WS2811, Flora, Arduino, FastLED Animation Library, OctoWS2811, Arm
AUTOR
Źródło
Elektronika dla Wszystkich luty 2024
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Edukacja
1/10 Jak działa rezystor LDR?
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"