Përmbajtje:

LoL Shield Audio Spectrum VU Meter: 4 hapa (me fotografi)
LoL Shield Audio Spectrum VU Meter: 4 hapa (me fotografi)

Video: LoL Shield Audio Spectrum VU Meter: 4 hapa (me fotografi)

Video: LoL Shield Audio Spectrum VU Meter: 4 hapa (me fotografi)
Video: Ирония судьбы, или С легким паром, 1 серия (комедия, реж. Эльдар Рязанов, 1976 г.) 2024, Nëntor
Anonim
Matësi VU i Spektrit Audio LoL Shield
Matësi VU i Spektrit Audio LoL Shield

Ky është një matës VU i spektrit audio duke përdorur Mburojën LoL për Arduino. Mburoja LoL është një matricë LED 14 x 9 e cila përshtatet në Arduino si një mburojë dhe kontrollohet përmes një metode efikase të njohur si Charlieplexing. Wasshtë projektuar nga Jimmie P. Rodgers. Ky projekt përdor një bibliotekë Fast Fourier Transform për Arduino për të analizuar një sinjal audio, për ta ndarë atë në brezat e frekuencave dhe për të shfaqur atë informacion në LoL Shield. Mikrokontrolluesi Arduino është mjaft i shpejtë për të llogaritur një transformim të shpejtë të Furierit. Ai jeton deri në emrin e tij dhe është çuditërisht i shpejtë dhe i saktë. Meqenëse e gjithë puna bëhet nga mikrokontrolluesi, ky projekt është plotësisht i lëvizshëm nëse përdorni bateri. Faqja e internetit për këtë projekt gjendet në 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; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; Pjesët e kërkuara:

  • LoL Shield
  • Arduino (rekomandohet Diavolino)
  • prizë audio (kam përdorur një prizë telefonike mono 1/8 "për meshkuj)
  • Kodi Arduino
  • furnizimi me energji elektrike (furnizimi me rrymë DC, kabllo USB, bateri 9V, etj.)

Hapi 1: Mblidhni LoL Shield

Mblidhni LoL Shield
Mblidhni LoL Shield

Ndiqni udhëzimet për të mbledhur LoL Shield këtu. Shikoni, kjo nuk zgjati shumë!

Hapi 2: Saldoni telat në folenë audio

Tela të bashkuar në folenë e audios
Tela të bashkuar në folenë e audios

Unë jam duke përdorur një prizë telefonike mono 1/8 , siç quhet në Radioshack, por ju mund të përdorni çdo kabllo audio që është e përshtatshme për konfigurimin e sistemit tuaj audio. Ju mund të përdorni një mikrofon nëse dëshironi. Për këtë lloj prize, Kam bashkuar dy tela. Kam përdorur të kuqe dhe të zezë. LoL Shield lë kunjat analoge 4 dhe 5 falas për hyrje. Kodi im përdor pin 5. Mund ta lidhni tela të kuq në kunjin analog 5 të LoL Shield dhe tela të zinj në GND Nuk keni nevojë ta lidhni, thjesht e fut tela dhe e lakova.

Hapi 3: Programi Arduino

Programi Arduino
Programi Arduino

Tani duhet të programojmë Arduino për të kontrolluar LoL Shield.

Rekomandohet të përdorni Diavolino për të kontrolluar LoL Shield në mënyrë që të parandaloni efektet e "fantazmave" në LED për shkak të sipërfaqes së gjelbër LED të lidhur me pin 13 në Arduino standard, por një Arduino standard do të funksionojë mirë.

Kjo kërkon dy biblioteka Arduino: - biblioteka FFT e gjetur në forumin Arduino - biblioteka Charlieplexing për LoL Shield

Instalimi i bibliotekave për Arduino mund të jetë pak i frikshëm nëse nuk e keni bërë më parë, por do t’ia dilni mirë!

Ndiqni udhëzimet për instalimin e bibliotekave Arduino këtu:

www.arduino.cc/en/guide/libraries

Biblioteka FFT thyen sinjalin audio në 64 breza frekuencash. Mburoja LoL është 14 x 9 LED. Ne mesataren e 64 brezave të frekuencave së bashku në 14 breza frekuencash. Ne po hedhim disa të dhëna sepse 14 nuk ndahen në 64 në mënyrë të barabartë, por whatevs. Vlera e çdo diapazoni frekuencash rimerret nga 0 në 9.

Mund të kopjoni kodin Arduino më poshtë, të merrni kodin nga GitHub (rekomandohet), ose të shkarkoni skedarin. ZIP, i cili përfshin bibliotekat dhe kodin Arduino.

Këtu është lidhja GitHub:

github.com/andydoro/LoLShield-FFT

Më poshtë është kodi Arduino:

/* FFT për LoL Shield v0.9 nga Andy Doro https://andydoro.com/ bazuar në bibliotekën FFT dhe kodin nga forumet Arduino dhe biblioteka Charlieplexing për LoL Shield. */

#përfshi "Charliplexing.h"

#include "fix_fft.h"

#përcakto AUDIOPIN 5 char im [128], të dhëna [128]; char data_avgs [14];

int i = 0, val;

void setup () {LedSign:: Init (); // Initilizon Mburojën LoL}

lak void () {

për (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); të dhëna = val; im = 0; };

fix_fft (të dhënat, im, 7, 0);

për (i = 0; i <64; i ++) {të dhëna = sqrt (të dhëna * të dhëna +im * im ); // kjo merr vlerën absolute të vlerave në grup, kështu që kemi të bëjmë vetëm me numra pozitiv};

// shiritat mesatarë së bashku për (i = 0; i <14; i ++) {data_avgs = të dhëna [i*4] + të dhëna [i*4 + 1] + të dhëna [i*4 + 2] + të dhëna [i*4 + 3]; // mesatarisht së bashku data_avgs = hartë (data_avgs , 0, 30, 0, 9); // rimarr vlerat për LoL}

// vendos LoLShield

për (int x = 0; x <14; x ++) {për (int y = 0; y <9; y ++) {nëse (y <data_avgs [13-x]) {// 13-x përmbys shufrat aq të ulëta në frekuencat e larta përfaqësohen nga e majta në të djathtë. LedSign:: Set (x, y, 1); // ndezni LED -in} else {LedSign:: Set (x, y, 0); // fikni LED -in}}}

}

Hapi 4: Shijoni !

Shijoni !!
Shijoni !!

& 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; Lidheni folenë audio në stereo, iPod, kompjuter, etj. Furnizoni Arduino me një furnizim me rrymë DC, USB nga kompjuteri juaj ose bateri- kjo është plotësisht e lëvizshme. Mund ta vendosni në kapelë ose shtrëngim të rripit. LED -et e bardha janë aq të ndritshme sa është e vështirë të kapësh në video. Duket sikur ka një flakë vjollce që del prej tyre! Uluni dhe kënaquni!

Konkursi i mikrokontrolluesve
Konkursi i mikrokontrolluesve
Konkursi i mikrokontrolluesve
Konkursi i mikrokontrolluesve

Finalist në Konkursin e Mikrokontrolluesve

Recommended: