Sisukord:
- Samm: pange kokku LoL Shield
- 2. samm: jootetraat ühendab helipistikuga
- Samm: programmeerige Arduino
- Samm: nautige
Video: LoL Shieldi helispektri VU -mõõtja: 4 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See on helispektri VU -mõõtur, mis kasutab Arduino jaoks LoL Shieldi. LoL Shield on 14 x 9 LED -maatriks, mis sobib Arduinole kilbina ja mida juhitakse tõhusa Charlieplexing -meetodiga. Selle kujundas Jimmie P. Rodgers. See projekt kasutab Arduino jaoks kiiret Fourier 'teisendusteeki, et analüüsida helisignaali, jagada see sagedusribadeks ja kuvada see teave LoL Shieldil. Arduino mikrokontroller on piisavalt kiire, et arvutada kiiret Fourier 'teisendust. See vastab oma nimele ning on üllatavalt kiire ja täpne. Kuna kogu töö teeb mikrokontroller, on see projekt patareide kasutamisel täiesti kaasaskantav. Selle projekti veebisait asub aadressil 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; 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; gt; Vajalikud osad:
- LoL kilp
- Arduino (soovitatav Diavolino)
- helipistik (kasutasin isast mono 1/8 "telefonipistikut)
- Arduino kood
- toide (alalisvoolu toide, USB -kaabel, 9V aku jne)
Samm: pange kokku LoL Shield
LoL Shieldi kokkupanekuks järgige siin toodud juhiseid. Näete, see ei võtnud kaua aega!
2. samm: jootetraat ühendab helipistikuga
Ma kasutan isast monofonilist 1/8 telefonipistikut, nagu seda nimetatakse Radioshackis, kuid võite kasutada mis tahes helikaablit, mis sobib teie helisüsteemi seadistamiseks. Soovi korral võite kasutada mikrofoni. Seda tüüpi pistiku jaoks Joodin kaks juhet. Kasutasin punast ja musta. LoL Shield jätab analoogpoldid 4 ja 5 sisendite jaoks vabaks. Minu kood kasutab tihvti 5. Punase juhtme saate ühendada LoL Shieldi analoogpistikuga 5 ja musta traadi GND -ga. Te ei pea seda jootma, ma panin traadi lihtsalt läbi ja painutasin.
Samm: programmeerige Arduino
Nüüd peame programmeerima Arduino LoL Shieldi juhtimiseks.
Soovitatav on kasutada Diavolinot LoL Shieldi juhtimiseks, et vältida "kummituse" tekkimist LED -idel, mis on tingitud rohelise pinnakinnituse LED -st, mis on ühendatud standardse Arduino tihvtiga 13, kuid tavaline Arduino töötab hästi.
Selleks on vaja kahte Arduino raamatukogu: - Arduino foorumist leitud FFT raamatukogu - LoL Shieldi Charlieplexingi raamatukogu
Teekide installimine Arduino jaoks võib olla pisut hirmutav, kui te pole seda varem teinud, kuid saate hakkama!
Järgige Arduino raamatukogude installimise juhiseid siin:
www.arduino.cc/en/guide/libraries
FFT raamatukogu katkestab helisignaali 64 sagedusribas. LoL Shieldil on 14 x 9 LED -i. Keskmistame 64 sagedusriba kokku 14 sagedusribaks. Me viskame ära mõned andmed, sest 14 ei jagu 64 -ks ühtlaselt, vaid whatevs. Iga sagedusvahemiku väärtust muudetakse vahemikus 0 kuni 9.
Saate kopeerida allpool oleva Arduino koodi, hankida koodi GitHubist (soovitatav) või alla laadida. ZIP -faili, mis sisaldab raamatukogusid ja Arduino koodi.
Siin on GitHubi link:
github.com/andydoro/LoLShield-FFT
Allpool on Arduino kood:
/* FFT LoL Shield v0.9 jaoks, autor Andy Doro https://andydoro.com/ põhineb FFT raamatukogul ja Arduino foorumite koodil ning LoL Shieldi Charlieplexingi raamatukogul. */
#include "Charliplexing.h"
#include "fix_fft.h"
#define AUDIOPIN 5 char im [128], andmed [128]; char data_avgs [14];
int i = 0, val;
void setup () {LedSign:: Init (); // Initsialiseerib LoL Shieldi}
void loop () {
jaoks (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); andmed = val; im = 0; };
fix_fft (andmed, im, 7, 0);
jaoks (i = 0; i <64; i ++) {data = sqrt (andmed * andmed +im * im ); // see saab massiivi väärtuste absoluutväärtuse, seega tegeleme ainult positiivsete arvudega};
// keskmised ribad koos (i = 0; i <14; i ++) {data_avgs = andmed [i*4] + andmed [i*4 + 1] + andmed [i*4 + 2] + andmed [i*4 + 3]; // keskmine kokku data_avgs = kaart (data_avgs , 0, 30, 0, 9); // LoL väärtuste ümbertegemine}
// määrake LoLShield
jaoks (int x = 0; x <14; x ++) {jaoks (int y = 0; y <9; y ++) {kui (y <data_avgs [13-x]) {// 13-x pöörab ribad nii madalale kõrgetel sagedustel on kujutatud vasakult paremale. LedSign:: Komplekt (x, y, 1); // lülita LED sisse} else {LedSign:: Set (x, y, 0); // lülita LED välja}}}
}
Samm: nautige
Amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; gt; Ühendage helipistik stereoga, iPodiga, arvutiga jne. Toitege Arduino alalisvoolu toiteallikaga, USB-ga arvutist või patareidega- see on täiesti kaasaskantav. Võite selle panna mütsi või vööpandlasse. Valged LED -id on nii eredad, et neid on raske videole jäädvustada. Tundub, et neist tuleb purpurset leeki! Istuge ja nautige!
Mikrokontrollerite konkursi finalist
Soovitan:
LED -helispektri analüsaatori valmistamine: 7 sammu (piltidega)
LED -helispektri analüsaatori valmistamine: LED -helispektri analüsaator genereerib kauni valgustusmustri vastavalt muusika intensiivsusele. Turul on saadaval palju DIY LED -muusikaspektri komplekte, kuid siin teeme LED -helispektri Analüsaator NeoPixe abil
DIY FFT helispektri analüsaator: 3 sammu
DIY FFT helispektri analüsaator: FFT spektrianalüsaator on katseseade, mis kasutab spektri analüüsi tegemiseks Fourier 'analüüsi ja digitaalse signaalitöötluse tehnikaid. Fourier 'analüüsi kasutades on võimalik näiteks pideva aja domeeni üks väärtus teisendada
Arduino Cellular Shieldi õpetus: 9 sammu (piltidega)
Arduino Cellular Shieldi õpetus: Arduino Cellular Shield võimaldab teil helistada mobiiltelefoniga ja saata tekstsõnumeid. Selle kilbi ajud on SM5100B, mis on tugev mobiilne moodul, mis on võimeline täitma paljusid tavaliste mobiiltelefonide ülesandeid. See sh
NodeMCU / ESP8266 ja OLED Shieldi ühendamine: 8 sammu
Kuidas ühendada NodeMCU / ESP8266 ja OLED Shield OLED -i jaoks kasutame selles juhendis OLED -kilpi, mis on kaasas joodistega 0,96 " tolline OLED
TFT Shieldi õpetus: 4 sammu
TFT Shieldi õpetus: täna saate teada, kuidas saate oma Arduino TFT puuteekraaniga projektides nuppe luua ja kasutada. Kasutan Kumani 2,8 " TFT -kilp koos Kumani Arduino UNO -ga. Boonus: Kumani TFT -kilbil on tasuta pliiats, mida saate kasutada