Sadržaj:

Magic Hercules - Upravljački program za digitalne LED diode: 10 koraka
Magic Hercules - Upravljački program za digitalne LED diode: 10 koraka

Video: Magic Hercules - Upravljački program za digitalne LED diode: 10 koraka

Video: Magic Hercules - Upravljački program za digitalne LED diode: 10 koraka
Video: planeTALK | Jürgen THOMAS "Der Vater der A380" (24 subtitle-languages) 2024, Prosinac
Anonim
Magic Hercules - Upravljački program za digitalne LED diode
Magic Hercules - Upravljački program za digitalne LED diode

Brzi pregled:

Modul Magic Hercules pretvarač je između dobro poznatog i jednostavnog SPI protokola u NZR protokol. Ulazi modula imaju toleranciju od +3,3 V, tako da možete sigurno spojiti sve mikrokontrolere koji rade na naponu od +3,3 V.

Korištenje SPI protokola za upravljanje digitalnim LED diodama inovativan je pristup među trenutnim rješenjima, poput gotovih knjižnica za Arduino. Međutim, omogućuje prebacivanje na bilo koju platformu bez obzira na obitelj mikrokontrolera (poput ARM -a: STM / Cypress PSoC, Raspberry Pi, AVR, PIC, Arduino) i bez obzira na programski jezik (npr. C, Arduino C ++, Python ili neki drugi koji podržava SPI protokol). Ovaj pristup programiranju digitalnih LED dioda izuzetno je prilagođen početnicima jer vam je potrebno samo poznavanje SPI protokola.

MH modul također omogućuje nekoliko načina testiranja digitalnih LED traka, uključujući ispitivanje redoslijeda boja u diodi (RGB, BGR, RGBW itd.), Testiranje cijelih traka ili zaslona (do 1024 LED diode).

Korak 1: Zašto radim na modulu Magic Hercules?

Zašto radim na modulu Magic Hercules?
Zašto radim na modulu Magic Hercules?

Već duže vrijeme radim s digitalnim LED diodama poput WS2812, WS2815 ili SK6812, koje obično nazivam Magic LED.

Testirao sam mnoge trake, prstenove i zaslone (čak i svoje) na temelju Magic LED -a (čak i s RGBW tipom). Koristio sam Arduino, Nucleo (sa STM -om), Raspberry Pi i vlastite ploče s AVR mikrokontrolerima.

Bez obzira na platformu, pisanje programa za upravljanje čarobnim LED diodama teško je (zbog potrebe za softverom protokola NZR), osim ako ne koristite gotove knjižnice koje olakšavaju, ali još uvijek nisu u potpunosti optimalne u smislu korištenja koda, prekidajte odgovore ili korištenje memorije, a rade samo na određenim platformama (prijenos ih na npr. s Raspberryja na mikrokontrolere AVR je nemoguć).

Zbog činjenice da često koristim razne platforme, imao sam potrebu da programski kôd bude što kompatibilniji s Arduinom, Raspberry Pi, ARM / STM (Nucleo) ili AVR -om - posebno kad su svjetlosni efekti u pitanju.

Dugo radim na youtube kanalu i pripremio sam više vodiča za programiranje digitalnih dioda na jeziku C za AVR mikrokontrolere (ali zasad samo na poljskom). Često imam kontakt s početnicima koji se bore s programiranjem čarobnih LED dioda. Naravno, neki, ovisno o platformi, za svoje jednokratne projekte odabiru spremne knjižnice. Međutim, mnogi ljudi traže druga rješenja ili pokušavaju naučiti tajne programiranja i ja sam jedno od njih.

Korak 2: Konverzija SPI u NZR

Konverzija SPI u NZR
Konverzija SPI u NZR

Odlučio sam pripremiti modul koji će odraditi prljavi posao za korisnika korištenjem NZR protokola. Modul koji će djelovati kao SPI u NZR pretvarač i baš kao i SPI, može se s lakoćom koristiti na bilo kojoj platformi. Gornji snimak zaslona prikazuje pretvorbu SPI signala u NZR protokol u modulu Magic Hercules.

Korak 3: Modul Magic Hercules kao digitalni tester LED traka

Modul Magic Hercules kao digitalni LED tračni tester
Modul Magic Hercules kao digitalni LED tračni tester

Pri povezivanju digitalnih LED dioda na različite sustave treba se sjetiti odgovarajuće tolerancije napona za različite mikrokontrolere. Većina I / O pinova ARM mikrokontrolera radi u +3.3 V standardu, dok AVR mikrokontroleri rade u TTL standardu. Zbog toga, ulazni pinovi Magic Hercules modula imaju toleranciju od +3,3 V, pa se mogu sigurno spojiti na npr. Raspberry P ili bilo koji ARM mikrokontroler s napajanjem +3,3 V.

Kao što sam već spomenuo, često radim s različitim vrstama digitalnih LED dioda. Ovisno o proizvođaču, pojedinačne boje LED dioda mogu biti u različitim položajima, npr. RGB, BGR, GRB, RGBW, GRBW itd. Nije neuobičajeno da se u dokumentaciji proizvođača spominje RGB slijed, ali zapravo izgleda drugačije. Opremio sam Hercules modul testom niza boja tako da nema problema s brzim smišljanjem načina pisanja programa za ispravan redoslijed boja. Nekoliko dodatnih funkcija testera omogućuje vam da brzo provjerite radi li digitalna LED traka uopće, rade li sve boje u svakoj LED diodi (do 1024 LED diode!) Ispravno (nema mrtvih piksela). I sve to bez povezivanja mikrokontrolera i pisanja bilo kojeg programa.

Korak 4: Modul Magic Hercules - Novo univerzalno rješenje za digitalne LED diode

Modul Magic Hercules - Novo univerzalno rješenje za digitalne LED diode
Modul Magic Hercules - Novo univerzalno rješenje za digitalne LED diode

Mislim da takvo nešto još nije postojalo, za upravljanje digitalnim LED diodama pomoću jednostavnog i uobičajenog SPI protokola, kojim se može upravljati na bilo kojoj platformi ili obitelji mikrokontrolera.

Naravno, postoji mnogo načina za upravljanje digitalnim LED diodama, neki su optimalniji, a drugi manje optimalni. Modul Magic Hercules je još jedna mogućnost i za mene je vrlo praktičan. Mislim da bi se nekome moglo svidjeti ovo neobično rješenje. Nedavno sam krenuo na platformu za grupno financiranje - kickstarter, gdje sam u nekoliko videa pripremio širi opis modula Magic Hercules, uključujući koliko je lako raditi s njim na Arduinu, Nucleu (STM), Raspberry Pi te na AVR -u i PIC -u mikrokontroleri. Ako želite podržati projekt Magic Hercules, pogledajte ovo:

Moj projekt modula Magic Hercules na kickstarteru

Pripremio sam program na jeziku C - jednostavan efekt zvjezdanih vrata, koji se temelji na operacijama tablice i uzastopnom slanju međuspremnika u glavnoj petlji. Zahvaljujući modulu Magic Hercules, uspio sam jednostavno prenijeti izvorni kod na druge jezike i platforme - provjerite sljedeće korake - izvorne kodove.

Korak 5: Modul Magic Hercules s Atmega32 i C

Videozapis koji sadrži pojednostavljeni dijagram, prezentaciju veze na ATB 1.05a (AVR Atmega32), izvorni kod (u Eclipse C/C ++ IDE) i konačni učinak u obliku svjetlosnog efekta zvjezdanih vrata.

Link do videa na youtube -u

Korak 6: Modul Magic Hercules s Arduinom i Arduinom C ++

Videozapis koji sadrži pojednostavljeni dijagram, prezentaciju povezivanja na Arduino 2560 ploči, izvorni kod u Arduino IDE -u i konačni učinak u obliku svjetlosnog efekta zvjezdanih vrata.

Link do videa na youtube -u

Korak 7: Modul Magic Hercules s PIC i C

Videozapis koji sadrži pojednostavljeni dijagram, prezentaciju povezivanja na ATB 1.05a s PIC štitom (PIC24FJ64GA004 na ploči), izvorni kod u MPLAB -u i konačni učinak u obliku svjetlosnog efekta zvjezdanih vrata.

Link do videa na youtube -u

Korak 8: Modul Magic Hercules s Raspberry Pi i Pythonom

Videozapis koji sadrži pojednostavljeni dijagram, prezentaciju veze na Raspberry Pi 4, izvorni kod u Pythonu i konačni učinak u obliku svjetlosnog efekta zvjezdanih vrata.

Link do videa na youtube -u

Korak 9: Modul Magic Hercules s ARM - STM32 Nucleo i C

Videozapis koji sadrži pojednostavljeni dijagram, prezentaciju povezivanja na STM32 Nucleo ploči, izvorni kod u STM32CubeIDE te konačni učinak u obliku svjetlosnog efekta zvjezdanih vrata.

Link do videa na youtube -u

10. korak:

Slika
Slika

Mislim da MH može biti iznimno prilagođen modul za početnike, bez obzira na platformu i jezik koji koriste. Dovoljno je poznavati dobro poznati SPI protokol, a mogućnost da se počne provjeravati radi li uopće digitalna LED traka i koji slijed boja ima je samo plus.

Ako želite sudjelovati u mom projektu na kickstarteru - provjerite ovu vezu:

Moj projekt modula Magic Hercules na kickstarteru

Preporučeni: