Magic Hercules - ovladač pro digitální LED diody: 10 kroků
Magic Hercules - ovladač pro digitální LED diody: 10 kroků

Video: Magic Hercules - ovladač pro digitální LED diody: 10 kroků

Video: Magic Hercules - ovladač pro digitální LED diody: 10 kroků
Video: Arduino and Magic HERCULES - Stargate effect with Magic LEDs 2025, Leden
Anonim
Magic Hercules - ovladač pro digitální LED diody
Magic Hercules - ovladač pro digitální LED diody

Rychlý přehled:

Modul Magic Hercules je převodník mezi známým a jednoduchým SPI na protokol NZR. Vstupy modulu mají toleranci +3,3 V, takže můžete bezpečně připojit jakékoli mikrokontroléry pracující při napětí +3,3 V.

Použití protokolu SPI k ovládání digitálních LED je inovativní přístup mezi současnými řešeními, jako jsou hotové knihovny pro Arduino. Umožňuje však přechod na jakoukoli platformu bez ohledu na rodinu mikrokontrolérů (například ARM: STM / Cypress PSoC, Raspberry Pi, AVR, PIC, Arduino) a bez ohledu na programovací jazyk (např. C, Arduino C ++, Python nebo jiný který podporuje protokol SPI). Tento přístup k programování digitálních LED je extrémně vhodný pro začátečníky, protože vše, co potřebujete, je znalost protokolu SPI.

MH modul také umožňuje několik režimů testování digitálních LED pásků, včetně testování pořadí barev v diodě (RGB, BGR, RGBW atd.), Testování celých pásů nebo displejů (až 1024 LED).

Krok 1: Proč pracuji na modulu Magic Hercules?

Proč pracuji na modulu Magic Hercules?
Proč pracuji na modulu Magic Hercules?

Dlouhodobě pracuji s digitálními LED diodami jako WS2812, WS2815 nebo SK6812, kterým obvykle říkám Magic LED.

Otestoval jsem mnoho pásků, prstenů a displejů (i vlastních) založených na Magic LED (i u typu RGBW). Použil jsem Arduino, Nucleo (s STM), Raspberry Pi a vlastní desky s mikrokontroléry AVR.

Bez ohledu na platformu je napsání programu pro ovládání magických LED obtížné (kvůli potřebě softwaru protokolu NZR), pokud nepoužíváte hotové knihovny, které to usnadňují, ale stále nejsou plně optimální z hlediska využití kódu, přerušte odezvy, nebo využití paměti, a fungují pouze na konkrétních platformách (jejich přenesení např. z mikroprocesorů Raspberry do AVR není možné).

Vzhledem k tomu, že často používám různé platformy, měl jsem potřebu, aby byl programový kód co nejkompatibilnější s Arduino, Raspberry Pi, ARM / STM (Nucleo) nebo AVR - zejména pokud jde o světelné efekty.

Na kanálu youtube pracuji již delší dobu a připravil jsem nejeden průvodce programováním digitálních diod v jazyce C pro mikrokontroléry AVR (zatím ale pouze v polštině). Často jsem v kontaktu s začátečníky, kteří bojují s programováním magických LED diod. Někteří samozřejmě v závislosti na platformě volí připravené knihovny pro své jednorázové projekty. Mnoho lidí však hledá jiná řešení nebo se snaží naučit se tajemství programování a já jsem jedním z nich.

Krok 2: Převod SPI na NZR

Převod SPI na NZR
Převod SPI na NZR

Rozhodl jsem se připravit modul, který bude dělat špinavou práci za uživatele pomocí protokolu NZR. Modul, který bude fungovat jako převodník SPI na NZR a stejně jako SPI, lze snadno použít na jakékoli platformě. Výše uvedený snímek obrazovky ukazuje převod signálů SPI na protokol NZR v modulu Magic Hercules.

Krok 3: Modul Magic Hercules jako digitální tester LED pásků

Modul Magic Hercules jako digitální tester LED pásků
Modul Magic Hercules jako digitální tester LED pásků

Při připojování digitálních LED k různým systémům je třeba pamatovat na vhodnou toleranci napětí pro různé mikrokontroléry. Většina I / O pinů mikrokontrolérů ARM pracuje ve standardu +3,3 V, zatímco mikrokontroléry AVR pracují ve standardu TTL. Díky tomu mají vstupní piny modulu Magic Hercules toleranci +3,3 V, takže je lze bezpečně připojit např. K Raspberry P nebo jakémukoli mikrokontroléru na bázi ARM napájenému +3,3 V.

Jak jsem již zmínil, často pracuji s různými typy digitálních LED diod. V závislosti na výrobci mohou být jednotlivé barvy LED diod v různých polohách, např. RGB, BGR, GRB, RGBW, GRBW atd. Není neobvyklé, že dokumentace výrobce zmiňuje sekvenci RGB, ale ve skutečnosti to vypadá jinak. Vybavil jsem modul Hercules testem sledu barev, aby nebyl problém s rychlým vymýšlením, jak napsat program pro správné pořadí barev. Několik dalších funkcí testeru vám umožňuje rychle zkontrolovat, zda digitální LED pás vůbec funguje, zda všechny barvy v každé LED diodě napříč pásem (až 1024 LED!) Fungují správně (žádné mrtvé pixely). A to vše bez připojení mikrokontroléru a psaní jakéhokoli programu.

Krok 4: Modul Magic Hercules - nové univerzální řešení pro digitální LED diody

Magic Hercules Module - nové univerzální řešení pro digitální LED diody
Magic Hercules Module - nové univerzální řešení pro digitální LED diody

Myslím, že něco takového ještě neexistovalo, ovládat digitální LED diody pomocí jednoduchého a běžného protokolu SPI, který lze provozovat na jakékoli platformě nebo rodině mikrokontrolérů.

Samozřejmě existuje mnoho způsobů ovládání digitálních LED diod, některé jsou optimálnější a jiné méně optimální. Modul Magic Hercules je další možností a pro mě velmi praktickou. Myslím, že někomu se toto neobvyklé řešení může líbit. Nedávno jsem vyrazil na crowdfundingovou platformu - kickstarter, kde jsem v několika videích připravil širší popis modulu Magic Hercules, včetně toho, jak snadno se s ním pracuje na Arduino, Nucleo (STM), Raspberry Pi a na AVR a PIC mikrokontroléry. Pokud byste chtěli podpořit projekt Magic Hercules, podívejte se na toto:

Projekt modulu My Magic Hercules na kickstarteru

Připravil jsem program v jazyce C - jednoduchý efekt hvězdné brány, který je založen na tabulkových operacích a sekvenčním odesílání bufferu v hlavní smyčce. Díky modulu Magic Hercules jsem mohl snadno přenést zdrojový kód do jiných jazyků a platforem - zkontrolujte další kroky - zdrojové kódy.

Krok 5: Modul Magic Hercules s Atmega32 a C

Video obsahující zjednodušený diagram, prezentaci připojení na ATB 1.05a (AVR Atmega32), zdrojový kód (v Eclipse C/C ++ IDE) a konečný efekt v podobě světelného efektu hvězdné brány.

Odkaz na video na youtube

Krok 6: Modul Magic Hercules s Arduino a Arduino C ++

Video obsahující zjednodušený diagram, prezentaci připojení na desce Arduino 2560, zdrojový kód v Arduino IDE a konečný efekt v podobě světelného efektu hvězdné brány.

Odkaz na video na youtube

Krok 7: Modul Magic Hercules s PIC a C

Video obsahující zjednodušený diagram, prezentace zapojení na ATB 1.05a s PIC štítem (PIC24FJ64GA004 na desce), zdrojový kód v MPLAB a konečný efekt v podobě světelného efektu hvězdné brány.

Odkaz na video na youtube

Krok 8: Modul Magic Hercules s Raspberry Pi a Pythonem

Video obsahující zjednodušený diagram, prezentaci připojení na Raspberry Pi 4, zdrojový kód v Pythonu a výsledný efekt v podobě světelného efektu hvězdné brány.

Odkaz na video na youtube

Krok 9: Modul Magic Hercules s ARM - STM32 Nucleo a C

Video obsahující zjednodušený diagram, prezentaci připojení na desce STM32 Nucleo, zdrojový kód v STM32CubeIDE a konečný efekt v podobě světelného efektu hvězdné brány.

Odkaz na video na youtube

Krok 10:

obraz
obraz

Myslím, že MH může být extrémně vhodný pro začátečníky, bez ohledu na platformu a jazyk, který používají. Stačí znát známý protokol SPI a možnost začít kontrolovat, zda digitální LED pásek vůbec funguje a jakou má barevnou sekvenci, je jen plus.

Pokud se chcete zúčastnit mého projektu na kickstarteru - podívejte se na tento odkaz:

Projekt modulu My Magic Hercules na kickstarteru