Cuprins:

LoL Shield Audio Spectrum VU Meter: 4 pași (cu imagini)
LoL Shield Audio Spectrum VU Meter: 4 pași (cu imagini)

Video: LoL Shield Audio Spectrum VU Meter: 4 pași (cu imagini)

Video: LoL Shield Audio Spectrum VU Meter: 4 pași (cu imagini)
Video: Soyuz undocking, reentry and landing explained 2024, Noiembrie
Anonim
LoL Shield Audio Spectrum VU Meter
LoL Shield Audio Spectrum VU Meter

Acesta este un contor VU cu spectru audio care folosește LoL Shield pentru Arduino. LoL Shield este o matrice LED de 14 x 9 care se potrivește pe Arduino ca scut și este controlată printr-o metodă eficientă cunoscută sub numele de Charlieplexing. A fost proiectat de Jimmie P. Rodgers. Acest proiect folosește o bibliotecă de transformare rapidă Fourier pentru Arduino pentru a analiza un semnal audio, a-l împărți în benzi de frecvență și a afișa aceste informații pe LoL Shield. Microcontrolerul Arduino este suficient de rapid pentru a calcula o transformare Fourier rapidă. Se ridică la înălțimea numelui său și este surprinzător de rapid și precis. Deoarece toate lucrările sunt realizate de microcontroler, acest proiect este complet portabil dacă utilizați baterii. Pagina web a acestui proiect se află la 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; amp; amp; gt; Piese necesare:

  • LoL Shield
  • Arduino (Diavolino recomandat)
  • mufa audio (am folosit o mufă de telefon mono masculin de 1/8 ")
  • Cod Arduino
  • sursa de alimentare (sursa de curent continuu, cablu USB, baterie de 9V etc.)

Pasul 1: Asamblați LoL Shield

Asamblați LoL Shield
Asamblați LoL Shield

Urmați instrucțiunile de asamblare a LoL Shield aici. Vezi, asta nu a durat deloc!

Pasul 2: lipiți cablurile la mufa audio

Cabluri de lipit la mufa audio
Cabluri de lipit la mufa audio

Folosesc o fișă telefonică masculină mono de 1/8 , așa cum se numește la Radioshack, dar puteți folosi orice cablu audio este potrivit pentru configurarea sistemului dvs. audio. Puteți utiliza un microfon dacă doriți. Pentru acest tip de fișă, Am lipit două fire. Am folosit roșu și negru. LoL Shield lasă pinii analogici 4 și 5 liberi pentru intrări. Codul meu folosește pinul 5. Puteți atașa firul roșu la pinul analogic 5 al LoL Shield și firul negru la GND Nu trebuie să-l lipiți, eu doar am introdus firul și l-am îndoit.

Pasul 3: Programați Arduino

Program Arduino
Program Arduino

Acum trebuie să programăm Arduino pentru a controla LoL Shield.

Este recomandat să utilizați Diavolino pentru a controla LoL Shield pentru a preveni efectele „ghosting” asupra LED-urilor datorită LED-ului verde de montare pe suprafață conectat la pinul 13 al Arduino-ului standard, dar un Arduino standard va funcționa bine.

Acest lucru necesită două biblioteci Arduino: - biblioteca FFT găsită pe forumul Arduino - biblioteca Charlieplexing pentru LoL Shield

Instalarea bibliotecilor pentru Arduino poate fi ușor descurajantă dacă nu ați făcut-o până acum, dar o veți descurca bine!

Urmați instrucțiunile de instalare a bibliotecilor Arduino aici:

www.arduino.cc/en/guide/libraries

Biblioteca FFT rupe semnalul audio în 64 de benzi de frecvență. LoL Shield are 14 x 9 LED-uri. Mediază cele 64 de benzi de frecvență împreună în 14 benzi de frecvență. Aruncăm câteva date pentru că 14 nu se împarte în 64 în mod egal, ci ce se întâmplă. Valoarea fiecărei game de frecvențe este remapată de la 0 la 9.

Puteți copia codul Arduino de mai jos, puteți obține codul de la GitHub (recomandat) sau puteți descărca fișierul. ZIP, care include bibliotecile și codul Arduino.

Iată linkul GitHub:

github.com/andydoro/LoLShield-FFT

Mai jos este codul Arduino:

/ * FFT pentru LoL Shield v0.9 de Andy Doro https://andydoro.com/ bazat pe biblioteca și codul FFT de pe forumurile Arduino și biblioteca Charlieplexing pentru LoL Shield. * /

#include „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 (); // Inițializează LoL Shield}

bucla nulă () {

pentru (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); date = val; im = 0; };

fix_fft (date, im, 7, 0);

for (i = 0; i <64; i ++) {data = sqrt (data * data + im * im ); // aceasta obține valoarea absolută a valorilor din matrice, deci avem de-a face doar cu numere pozitive};

// bare medii împreună pentru (i = 0; i <14; i ++) {data_avgs = data [i * 4] + data [i * 4 + 1] + data [i * 4 + 2] + data [i * 4 + 3]; // media împreună data_avgs = hartă (data_avgs , 0, 30, 0, 9); // remapează valorile pentru LoL}

// setează LoLShield

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x inversează barele atât de jos la frecvențe înalte sunt reprezentate de la stânga la dreapta. LedSign:: Set (x, y, 1); // set LED-ul aprins} else {LedSign:: Set (x, y, 0); // stinge LED-ul}}}

}

Pasul 4: Bucurați-vă

Bucurați-vă !!
Bucurați-vă !!

& 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; gt; Conectați mufa audio la stereo, iPod, computer etc. Alimentați Arduino cu o sursă de curent continuu, USB de pe computer sau baterii - acesta este complet portabil. Ai putea să-l pui într-o pălărie sau în cataramă. LED-urile albe sunt atât de strălucitoare încât sunt greu de captat pe videoclip. Se pare că există flacără purpurie care iese din ele! Stai pe spate și bucură-te!

Concurs de microcontroler
Concurs de microcontroler
Concurs de microcontroler
Concurs de microcontroler

Finalist la concursul de microcontrolere

Recomandat: