Kazalo:

Magic Hercules - gonilnik za digitalne LED: 10 korakov
Magic Hercules - gonilnik za digitalne LED: 10 korakov

Video: Magic Hercules - gonilnik za digitalne LED: 10 korakov

Video: Magic Hercules - gonilnik za digitalne LED: 10 korakov
Video: Иоша Бах: время, гипотеза моделирования, существование 2024, November
Anonim
Magic Hercules - gonilnik za digitalne LED diode
Magic Hercules - gonilnik za digitalne LED diode

Hiter pregled:

Modul Magic Hercules je pretvornik med znanim in preprostim SPI v protokol NZR. Vhodi modula imajo toleranco +3,3 V, tako da lahko varno priključite vse mikrokrmilnike, ki delujejo pri napetosti +3,3 V.

Uporaba protokola SPI za nadzor digitalnih LED je inovativen pristop med trenutnimi rešitvami, kot so že pripravljene knjižnice za Arduino. Omogoča pa preklop na katero koli platformo ne glede na družino mikrokrmilnikov (na primer ARM: STM / Cypress PSoC, Raspberry Pi, AVR, PIC, Arduino) in ne glede na programski jezik (npr. C, Arduino C ++, Python ali drug ki podpira protokol SPI). Ta pristop k programiranju digitalnih LED je izjemno prijazen začetnikom, saj potrebujete le poznavanje protokola SPI.

MH modul omogoča tudi več načinov preskušanja digitalnih LED trakov, vključno s preskušanjem barvnega reda v diodi (RGB, BGR, RGBW itd.), Testiranjem celotnih trakov ali zaslonov (do 1024 LED).

1. korak: Zakaj delam na modulu Magic Hercules?

Zakaj delam na modulu Magic Hercules?
Zakaj delam na modulu Magic Hercules?

Že dolgo delam z digitalnimi LED, kot so WS2812, WS2815 ali SK6812, ki jih običajno imenujem Magic LED.

Preizkusil sem veliko trakov, obročev in zaslonov (tudi mojih) na osnovi Magic LED (tudi pri tipu RGBW). Uporabil sem Arduino, Nucleo (s STM), Raspberry Pi in svoje plošče z mikrokrmilniki AVR.

Ne glede na platformo je pisanje programa za nadzor čarobnih LED težko (zaradi potrebe po programski opremi protokola NZR), razen če uporabljate že pripravljene knjižnice, ki olajšajo, vendar še vedno niso popolnoma optimalne glede uporabe kode, prekinite odzive ali uporabo pomnilnika in delujejo samo na določenih platformah (prenos na npr. iz mikrokrmilnikov Raspberry na AVR je nemogoč).

Ker pogosto uporabljam različne platforme, sem potreboval, da je programska koda čim bolj združljiva z Arduinom, Raspberry Pi, ARM / STM (Nucleo) ali AVR - še posebej, ko gre za svetlobne učinke.

Že dolgo delam na kanalu youtube in pripravil sem več kot en vodnik za programiranje digitalnih diod v jeziku C za mikrokrmilnike AVR (zaenkrat le v poljščini). Pogosto imam stik z začetniki, ki se borijo s programiranjem čarobnih LED. Seveda nekateri, odvisno od platforme, za svoje enkratne projekte izberejo pripravljene knjižnice. Marsikdo pa išče druge rešitve ali se poskuša naučiti skrivnosti programiranja in jaz sem eden izmed njih.

2. korak: Pretvorba SPI v NZR

Pretvorba SPI v NZR
Pretvorba SPI v NZR

Odločil sem se, da bom pripravil modul, ki bo z uporabnikom protokola NZR opravil umazano delo. Modul, ki bo deloval kot pretvornik SPI v NZR in tako kot SPI, lahko z lahkoto uporabljate na kateri koli platformi. Zgornji posnetek zaslona prikazuje pretvorbo signalov SPI v protokol NZR v modulu Magic Hercules.

3. korak: Modul Magic Hercules kot digitalni preizkuševalec LED trakov

Modul Magic Hercules kot digitalni tester LED trakov
Modul Magic Hercules kot digitalni tester LED trakov

Pri priključitvi digitalnih LED na različne sisteme se morate spomniti ustrezne tolerance napetosti za različne mikrokrmilnike. Večina V / I zatičev mikrokrmilnikov ARM deluje v standardu +3,3 V, medtem ko mikrokontrolerji AVR delujejo po standardu TTL. Zaradi tega imajo vhodni zatiči modula Magic Hercules toleranco +3,3 V, zato jih je mogoče varno priključiti na npr. Raspberry P ali kateri koli drugi mikrokontroler na osnovi ARM, ki deluje na +3,3 V.

Kot sem že omenil, pogosto delam z različnimi vrstami digitalnih LED. Odvisno od proizvajalca so lahko posamezne barve v LED -jih v različnih položajih, npr. RGB, BGR, GRB, RGBW, GRBW itd. Ni redkost, da proizvajalčeva dokumentacija omenja zaporedje RGB, vendar je dejansko videti drugače. Modul Hercules sem opremil s preskusom barvnega zaporedja, tako da ni težav s hitro ugotovitvijo, kako napisati program za pravilen vrstni red barv. Več dodatnih funkcij testerja vam omogoča, da hitro preverite, ali digitalni LED trak sploh deluje, ali vse barve v vsaki LED na traku (do 1024 LED!) Delujejo pravilno (brez mrtvih pik). In vse to brez priklopa mikrokrmilnika in pisanja katerega koli programa.

4. korak: Modul Magic Hercules - nova univerzalna rešitev za digitalne LED

Modul Magic Hercules - nova univerzalna rešitev za digitalne LED
Modul Magic Hercules - nova univerzalna rešitev za digitalne LED

Mislim, da še ni bilo takega, da bi upravljali digitalne LED z enostavnim in običajnim protokolom SPI, ki ga je mogoče upravljati na kateri koli platformi ali družini mikrokrmilnikov.

Seveda obstaja veliko načinov za nadzor digitalnih LED, nekateri so bolj optimalni, drugi pa manj optimalni. Modul Magic Hercules je še ena možnost in zame zelo praktičen. Mislim, da bo nekomu morda všeč ta nenavadna rešitev. Pred kratkim sem vzletel na platformo za množično financiranje - kickstarter, kjer sem v več videoposnetkih pripravil širši opis modula Magic Hercules, vključno s tem, kako enostavno je z njim delati na Arduinu, Nucleu (STM), Raspberry Pi ter na AVR in PIC mikrokrmilniki. Če želite podpreti projekt Magic Hercules, preverite to:

Projekt modula My Magic Hercules na kickstarterju

Pripravil sem program v jeziku C - preprost učinek zvezdnih vrat, ki temelji na operacijah tabele in zaporednem pošiljanju medpomnilnika v glavni zanki. Zahvaljujoč modulu Magic Hercules sem lahko preprosto prenesel izvorno kodo v druge jezike in platforme - preverite naslednje korake - izvorne kode.

5. korak: Modul Magic Hercules z Atmega32 in C

Videoposnetek, ki vsebuje poenostavljen diagram, predstavitev povezave na ATB 1.05a (AVR Atmega32), izvorno kodo (v Eclipse C/C ++ IDE) in končni učinek v obliki svetlobnega učinka zvezdnih vrat.

Povezava do videa na youtube

Korak 6: Modul Magic Hercules z Arduino in Arduino C ++

Video, ki vsebuje poenostavljen diagram, predstavitev povezave na plošči Arduino 2560, izvorno kodo v Arduino IDE in končni učinek v obliki svetlobnega učinka zvezdnih vrat.

Povezava do videa na youtube

Korak 7: Modul Magic Hercules s PIC in C

Videoposnetek, ki vsebuje poenostavljen diagram, predstavitev povezave na ATB 1.05a s PIC ščitom (PIC24FJ64GA004 na krovu), izvorna koda v MPLAB in končni učinek v obliki svetlobnega učinka zvezdnih vrat.

Povezava do videa na youtube

8. korak: Modul Magic Hercules z Raspberry Pi in Python

Video, ki vsebuje poenostavljen diagram, predstavitev povezave na Raspberry Pi 4, izvorno kodo v Pythonu in končni učinek v obliki svetlobnega učinka zvezdnih vrat.

Povezava do videa na youtube

9. korak: Modul Magic Hercules z ARM - STM32 Nucleo in C

Video, ki vsebuje poenostavljen diagram, predstavitev povezave na plošči STM32 Nucleo, izvorno kodo v STM32CubeIDE in končni učinek v obliki svetlobnega učinka zvezdnih vrat.

Povezava do videa na youtube

10. korak:

Slika
Slika

Mislim, da je MH lahko izredno prijazen modul za začetnike, ne glede na platformo in jezik, ki ga uporabljajo. Dovolj je poznati dobro poznan protokol SPI, možnost, da začnete preverjati, ali digitalni LED trak sploh deluje in kakšno barvno zaporedje ima, je le plus.

Če želite sodelovati v mojem projektu na kickstarterju - preverite to povezavo:

Projekt modula My Magic Hercules na kickstarterju

Priporočena: