Taula de continguts:
- Pas 1: munteu LoL Shield
- Pas 2: soldeu els cables a la presa d'àudio
- Pas 3: programa Arduino
- Pas 4: gaudiu
Vídeo: Mesurador VU LoL Shield Audio Spectrum: 4 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Es tracta d'un mesurador d'espectre d'àudio que utilitza el LoL Shield per a Arduino. LoL Shield és una matriu LED de 14 x 9 que s’adapta a l’Arduino com a escut i es controla mitjançant un mètode eficient conegut com Charlieplexing. Va ser dissenyat per Jimmie P. Rodgers. Aquest projecte utilitza una biblioteca de transformada ràpida de Fourier per Arduino per analitzar un senyal d'àudio, dividir-lo en bandes de freqüència i mostrar aquesta informació a LoL Shield. El microcontrolador Arduino és prou ràpid per calcular una transformació de Fourier ràpida. Fa honor al seu nom i és sorprenentment ràpid i precís. Com que tot el treball el realitza el microcontrolador, aquest projecte és completament portàtil si utilitzeu bateries. La pàgina web d’aquest projecte es troba a 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; 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; amp; amp; gt; Peces necessàries:
- Escut LoL
- Arduino (es recomana Diavolino)
- presa d'àudio (he utilitzat un endoll de telèfon mono 1/8 "masculí)
- Codi Arduino
- font d'alimentació (font d'alimentació de CC, cable USB, bateria de 9 V, etc.)
Pas 1: munteu LoL Shield
Seguiu les instruccions per muntar LoL Shield aquí. Mireu, això no va trigar gens!
Pas 2: soldeu els cables a la presa d'àudio
Estic fent servir un endoll de telèfon mono de 1/8 masculí, com es diu a Radioshack, però podeu utilitzar el cable d'àudio adequat per a la configuració del vostre sistema d'àudio. Podeu fer servir un micròfon si voleu. Per a aquest tipus de connectors, He soldat dos cables. He utilitzat vermell i negre. El LoL Shield deixa lliure els pins analògics 4 i 5 per a les entrades. El meu codi fa servir el pin 5. Podeu connectar el cable vermell al pin analògic 5 de LoL Shield i el fil negre a GND No cal soldar-lo, només he passat el cable i el vaig doblegar.
Pas 3: programa Arduino
Ara hem de programar l'Arduino per controlar LoL Shield.
Es recomana utilitzar Diavolino per controlar LoL Shield per evitar efectes de "fantasma" als LED a causa del LED de muntatge superficial verd connectat al pin 13 de l'Arduino estàndard, però un Arduino estàndard funcionarà bé.
Això requereix dues biblioteques Arduino: - la biblioteca FFT que es troba al fòrum Arduino - la biblioteca Charlieplexing per a LoL Shield
Instal·lar biblioteques per a Arduino pot ser una mica descoratjador si no ho heu fet abans, però us anirà bé.
Seguiu les instruccions per instal·lar les biblioteques Arduino aquí:
www.arduino.cc/en/guide/libraries
La biblioteca FFT trenca el senyal d'àudio en 64 bandes de freqüència. LoL Shield té 14 x 9 LED. Mitjansem les 64 bandes de freqüència juntes en 14 bandes de freqüència. Llencem algunes dades perquè 14 no es divideix en 64 de manera uniforme, però sí. El valor de cada interval de freqüència es remapa de 0 a 9.
Podeu copiar el codi Arduino a continuació, obtenir el codi de GitHub (recomanat) o descarregar el fitxer. ZIP, que inclou les biblioteques i el codi Arduino.
Aquí teniu l’enllaç de GitHub:
github.com/andydoro/LoLShield-FFT
A continuació es mostra el codi Arduino:
/ * FFT per a LoL Shield v0.9 d'Andy Doro https://andydoro.com/ basat en la biblioteca i el codi FFT dels fòrums Arduino i la biblioteca Charlieplexing per a 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 (); // Inicialitza LoL Shield}
bucle buit () {
for (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); dades = val; im = 0; };
fix_fft (dades, im, 7, 0);
for (i = 0; i <64; i ++) {data = sqrt (data * data + im * im ); // obté el valor absolut dels valors de la matriu, de manera que només estem davant de nombres positius};
// barres mitjanes juntes de (i = 0; i <14; i ++) {data_avgs = data [i * 4] + data [i * 4 + 1] + data [i * 4 + 2] + data [i * 4 + 3]; // mitjana conjunta data_avgs = mapa (data_avgs , 0, 30, 0, 9); // remapleu els valors de LoL}
// estableix LoLShield
for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x inverteix les barres tan baixes a altes freqüències es representen d’esquerra a dreta. LedSign:: Conjunt (x, y, 1); // activeu el LED} else {LedSign:: Set (x, y, 0); // apaga el LED}}}
}
Pas 4: gaudiu
& 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; gt; Connecteu la presa d’àudio a l’aparell estèreo, a l’iPod, a l’ordinador, etc. Alimenteu l’Arduino amb una font d’alimentació de CC, USB de l’ordinador o bateries; és completament portàtil. Podríeu posar-la dins d’un barret o sivella. Els LED blancs són tan brillants que és difícil de capturar al vídeo. Sembla que hi hagi flames de color porpra que en surtin! Seieu i gaudiu!
Finalista del concurs de microcontroladors
Recomanat:
Mesurador d'humitat solar del sòl amb ESP8266: 10 passos (amb imatges)
Mesurador d'humitat del sòl solar amb ESP8266: en aquest manual, estem realitzant un monitor d'humitat del sòl alimentat per energia solar. Utilitza un microcontrolador wifi ESP8266 que executa un codi de baixa potència i és impermeable perquè es pugui deixar fora. Podeu seguir exactament aquesta recepta o treure’n la
Mesurador de temperatura i humitat IoT amb pantalla OLED: 5 passos (amb imatges)
Mesurador de temperatura i humitat IoT amb pantalla OLED: comproveu la temperatura i la humitat d’una pantalla OLED quan vulgueu i, alhora, recopileu aquestes dades en una plataforma IoT. La setmana passada vaig publicar un projecte anomenat Mesurador de temperatura i humitat IoT més senzill. Aquest és un bon projecte perquè es pot
Mesurador de capacitat / mesurador de capacitats Autorange simple amb Arduino i a mà: 4 passos
Mesurador de capacitat / mesurador de capacitància Autorange simple amb Arduino i a mà: Hola! Per a aquesta unitat de física necessiteu: * una font d'alimentació amb 0-12V * un o més condensadors * un o més resistents de càrrega * un cronòmetre * un multímetre per a la tensió mesurament * un arduino nano * una pantalla de 16x2 I²C * resistències 1 / 4W amb 220, 10k, 4,7M i
Mesurador del temps de reacció (visual, àudio i tàctil): 9 passos (amb imatges)
Mesurador del temps de reacció (visual, àudio i tàctil): el temps de reacció és una mesura del temps que una persona triga a identificar un estímul i produir una resposta. Per exemple, el temps de reacció d'àudio d'un atleta és el temps transcorregut entre el tret del tret (que comença la cursa) i ell o ella que comença la cursa. Reactio
Mesurador de capacitat amb TM1637 amb Arduino .: 5 passos (amb imatges)
Mesurador de capacitat amb TM1637 amb Arduino: Com fer un mesurador de capacitat amb Arduino que es mostra al TM1637. Oscil·la entre 1 uF i aproximadament 2000 uF