Sisällysluettelo:

LoL Shield Audio Spectrum VU -mittari: 4 vaihetta (kuvilla)
LoL Shield Audio Spectrum VU -mittari: 4 vaihetta (kuvilla)

Video: LoL Shield Audio Spectrum VU -mittari: 4 vaihetta (kuvilla)

Video: LoL Shield Audio Spectrum VU -mittari: 4 vaihetta (kuvilla)
Video: PS3 #2: Ressurecting the impossable! | EPIC rollercoaster repair that nearly broke me. 2024, Marraskuu
Anonim
LoL Shield Audio Spectrum VU -mittari
LoL Shield Audio Spectrum VU -mittari

Tämä on äänispektrinen VU -mittari, joka käyttää LoL Shieldiä Arduinolle. LoL Shield on 14 x 9 LED -matriisi, joka sopii Arduinolle suojana ja jota ohjataan tehokkaalla Charlieplexing -menetelmällä. Sen on suunnitellut Jimmie P. Rodgers. Tämä projekti käyttää Arduinon Fast Fourier Transform -kirjastoa audiosignaalin analysoimiseen, jakamiseen taajuuskaistoille ja tietojen näyttämiseksi LoL Shieldissä. Arduino -mikrokontrolleri on riittävän nopea laskemaan nopean Fourier -muunnoksen. Se täyttää nimensä ja on yllättävän nopea ja tarkka. Koska kaikki työt suorittaa mikrokontrolleri, tämä projekti on täysin kannettava, jos käytät paristoja. Tämän projektin verkkosivu on osoitteessa https://andydoro.com/vulol/ & amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; lt; br /& amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; gt; Tarvittavat osat:

  • LoL -suoja
  • Arduino (suositellaan Diavolinoa)
  • ääniliitäntä (käytin urospuolista 1/8 -tuumaista puhelinpistoketta)
  • Arduino -koodi
  • virtalähde (tasavirtalähde, USB -kaapeli, 9 V: n akku jne.)

Vaihe 1: Kokoa LoL Shield

Kokoa LoL Shield
Kokoa LoL Shield

Noudata ohjeita LoL Shieldin kokoamiseksi täältä. Katso, se ei kestänyt kauan!

Vaihe 2: Juotosjohdot ääniliitäntään

Solder Johdot Audio -liittimeen
Solder Johdot Audio -liittimeen

Käytän urospuolista 1/8 -tuumaista puhelinpistoketta, kuten sitä kutsutaan Radioshackissa, mutta voit käyttää mitä tahansa audiokaapelia, joka sopii audiojärjestelmän kokoonpanoon. Voit käyttää mikrofonia, jos haluat. Juotin kaksi johtoa. Käytin punaista ja mustaa. LoL Shield jättää analogiset nastat 4 ja 5 vapaiksi tuloille. Koodini käyttää nasta 5. Voit liittää punaisen johdon LoL Shieldin analogiseen nastaan 5 ja mustan johdon GND: hen. Sinun ei tarvitse juottaa sitä sisään, laitoin vain langan läpi ja taivutin sen.

Vaihe 3: Ohjelmoi Arduino

Ohjelma Arduino
Ohjelma Arduino

Nyt meidän on ohjelmoitava Arduino ohjaamaan LoL Shieldiä.

On suositeltavaa käyttää Diavolinoa LoL -kilven hallintaan, jotta vältetään "haamukuvat" LED -valoissa, koska vihreä pinta -asennus -LED on kytketty nasta 13 standardiin Arduinoon, mutta tavallinen Arduino toimii hyvin.

Tämä vaatii kaksi Arduino -kirjastoa: - FFT -kirjasto, joka löytyy Arduino -foorumilta - Charlieplexing -kirjasto LoL Shieldille

Kirjastojen asentaminen Arduinolle voi olla hieman pelottavaa, jos et ole tehnyt sitä aiemmin, mutta pärjäät hyvin!

Noudata Arduino -kirjastojen asennusohjeita täällä:

www.arduino.cc/en/guide/libraries

FFT -kirjasto katkaisee äänisignaalin 64 taajuuskaistalla. LoL Shield on 14 x 9 LEDiä. Keskitämme 64 taajuuskaistaa yhteen 14 taajuuskaistaksi. Heitämme pois joitakin tietoja, koska 14 ei jakaudu 64: een tasaisesti, vaan whatevs. Kunkin taajuusalueen arvo muutetaan 0: sta 9: een.

Voit kopioida alla olevan Arduino -koodin, hankkia koodin GitHubista (suositus) tai ladata. ZIP -tiedoston, joka sisältää kirjastot ja Arduino -koodin.

Tässä on GitHub -linkki:

github.com/andydoro/LoLShield-FFT

Alla on Arduino -koodi:

/* FFT for LoL Shield v0.9, kirjoittanut Andy Doro https://andydoro.com/perustuu FFT -kirjastoon ja koodiin Arduinon foorumeilta ja LoL Shieldin Charlieplexing -kirjastosta. */

#sisältää "Charliplexing.h"

#include "fix_fft.h"

#define AUDIOPIN 5 char im [128], data [128]; char data_avgs [14];

int i = 0, val;

void setup () {LedSign:: Init (); // Alustaa LoL -kilven}

void loop () {

for (i = 0; i <128; i ++) {val = analoginen luku (AUDIOPIN); data = val; im = 0; };

fix_fft (data, im, 7, 0);

for (i = 0; i <64; i ++) {data = sqrt (data * data +im * im ); // tämä saa taulukon arvojen absoluuttisen arvon, joten käsittelemme vain positiivisia lukuja};

// keskimääräiset palkit yhdessä (i = 0; i <14; i ++) {data_avgs = data [i*4] + data [i*4 + 1] + data [i*4 + 2] + data [i*4 + 3]; // keskiarvo yhdessä data_avgs = kartta (data_avgs , 0, 30, 0, 9); // LoL -arvon uudelleenmuodostus}

// aseta LoLShield

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x kääntää palkit niin alas korkeista taajuuksista on esitetty vasemmalta oikealle. LedSign:: Joukko (x, y, 1); // aseta LED päälle} else {LedSign:: Set (x, y, 0); // sammuta LED}}}}

}

Vaihe 4: Nauti

Nauttia!!
Nauttia!!

& amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; lt; br & amp; amp; amp; amp; amp amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; gt; Liitä ääniliitäntä stereoihin, iPodiin, tietokoneeseen jne. Kytke virta Arduinoon tasavirtalähteellä, tietokoneen USB-liitännällä tai paristoilla- tämä on täysin kannettava. Voit laittaa sen hattuun tai vyön solkeen. Valkoiset LEDit ovat niin kirkkaita, että niitä on vaikea kuvata videolle. Näyttää siltä, että heistä tulee purppuranpunainen liekki! Istu alas ja nauti!

Mikrokontrollerikilpailu
Mikrokontrollerikilpailu
Mikrokontrollerikilpailu
Mikrokontrollerikilpailu

Mikrokontrollerikilpailun finalisti

Suositeltava: