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, Novembar
Anonim
Magic Hercules - Upravljački program za digitalne LED diode
Magic Hercules - Upravljački program za digitalne LED diode

Kratak pregled:

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

Korištenje SPI protokola za kontrolu digitalnih LED dioda inovativan je pristup među trenutnim rješenjima, poput gotovih biblioteka za Arduino. Međutim, omogućuje prebacivanje na bilo koju platformu bez obzira na porodicu 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ćava nekoliko načina testiranja digitalnih LED traka, uključujući testiranje 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?

Dugo radim s digitalnim LED diodama poput WS2812, WS2815 ili SK6812, koje obično nazivam Magic LED.

Testirao sam mnoge trake, prstenove i ekrane (čak i svoje) na osnovu Magic LED -a (čak i sa RGBW tipom). Koristio sam Arduino, Nucleo (sa STM -om), Raspberry Pi i vlastite ploče sa 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 biblioteke koje olakšavaju, ali još uvijek nisu u potpunosti optimalne u smislu korištenja koda, prekidajte odgovore ili korištenje memorije i rade samo na određenim platformama (njihovo prijenos na npr. s Raspberryja na AVR mikrokontrolere je nemoguće).

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

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, odabiru gotove biblioteke za svoje jednokratne projekte. 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 obavljati prljave poslove za korisnika pomoću 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 ekrana prikazuje konverziju SPI signala u NZR protokol u modulu Magic Hercules.

Korak 3: Modul Magic Hercules kao digitalni tester LED traka

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

Prilikom povezivanja 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, tako da se mogu sigurno spojiti na npr. Raspberry P ili bilo koji ARM bazirani mikrokontroler sa 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 niz, ali zapravo izgleda drugačije. Opremio sam Hercules modul testom niza boja tako da nema problema s brzim smišljanjem kako napisati program 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 na traci (do 1024 LED diode!) Radi li 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

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

Mislim da još nije postojalo tako nešto, za upravljanje digitalnim LED diodama pomoću jednostavnog i uobičajenog SPI protokola, koji se može koristiti na bilo kojoj platformi ili porodici 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 finansiranje - kickstarter, gdje sam pripremio širi opis modula Magic Hercules u nekoliko video zapisa, 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 C jeziku - jednostavan efekt zvjezdanih vrata, koji se temelji na operacijama tablice i sekvencijalnom slanju bafera u glavnoj petlji. Zahvaljujući modulu Magic Hercules, mogao sam lako prenijeti izvorni kod na druge jezike i platforme - provjerite sljedeće korake - izvorne kodove.

Korak 5: Modul Magic Hercules sa Atmega32 i C

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

Link do video zapisa 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 efekt u obliku svjetlosnog efekta zvjezdanih vrata.

Link do video zapisa na youtube -u

Korak 7: Modul Magic Hercules sa PIC i C

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

Link do video zapisa na youtube -u

Korak 8: Modul Magic Hercules sa Raspberry Pi i Pythonom

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

Link do video zapisa na youtube -u

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

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

Link do video zapisa na youtube -u

Korak 10:

Image
Image

Mislim da MH može biti izuzetno 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 učestvovati u mom projektu na kickstarteru - provjerite ovu vezu:

Moj projekt modula Magic Hercules na kickstarteru

Preporučuje se: