Índice:

LoL Shield Audio Spectrum VU Meter: 4 etapas (com imagens)
LoL Shield Audio Spectrum VU Meter: 4 etapas (com imagens)

Vídeo: LoL Shield Audio Spectrum VU Meter: 4 etapas (com imagens)

Vídeo: LoL Shield Audio Spectrum VU Meter: 4 etapas (com imagens)
Vídeo: A Brief History of the Nissan Z 2024, Novembro
Anonim
LoL Shield Audio Spectrum VU Meter
LoL Shield Audio Spectrum VU Meter

Este é um medidor VU de espectro de áudio usando o LoL Shield para Arduino. O LoL Shield é uma matriz de 14 x 9 LED que se encaixa no Arduino como um escudo e é controlada por um método eficiente conhecido como Charlieplexing. Foi desenhado por Jimmie P. Rodgers. Este projeto usa uma biblioteca Fast Fourier Transform para Arduino para analisar um sinal de áudio, dividi-lo em bandas de frequência e exibir essas informações no LoL Shield. O microcontrolador Arduino é rápido o suficiente para calcular uma transformação de Fourier rápida. Ele faz jus ao seu nome e é surpreendentemente rápido e preciso. Como todo o trabalho é feito pelo microcontrolador, este projeto é totalmente portátil se você usar baterias. A página da web para este projeto está localizada em 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; lt; br / & 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; gt; Peças necessárias:

  • Escudo LoL
  • Arduino (recomendado Diavolino)
  • conector de áudio (usei um plugue de fone macho mono de 1/8 ")
  • Código Arduino
  • fonte de alimentação (fonte de alimentação DC, cabo USB, bateria de 9 V, etc.)

Etapa 1: montar a proteção LoL

Montar LoL Shield
Montar LoL Shield

Siga as instruções para montar a blindagem LoL aqui. Veja, não demorou muito!

Etapa 2: Soldar os fios para o conector de áudio

Fios de solda para o conector de áudio
Fios de solda para o conector de áudio

Estou usando um plugue de fone de 1/8 macho mono, como é chamado no Radioshack, mas você pode usar qualquer cabo de áudio apropriado para a configuração do seu sistema de áudio. Você pode usar um microfone se quiser. Para este tipo de plugue, Soldei dois fios. Usei vermelho e preto. A blindagem LoL deixa os pinos analógicos 4 e 5 livres para as entradas. Meu código usa o pino 5. Você pode conectar o fio vermelho ao pino analógico 5 da blindagem LoL e o fio preto ao GND. Você não precisa soldar, eu apenas passei o fio e dobrei.

Etapa 3: programar o Arduino

Programa Arduino
Programa Arduino

Agora precisamos programar o Arduino para controlar o LoL Shield.

É recomendado usar o Diavolino para controlar o LoL Shield para evitar efeitos "fantasmas" nos LEDs devido ao LED de montagem em superfície verde conectado ao pino 13 no Arduino padrão, mas um Arduino padrão funcionará bem.

Isso requer duas bibliotecas Arduino: - a biblioteca FFT encontrada no fórum do Arduino - a biblioteca Charlieplexing para o LoL Shield

Instalar bibliotecas para Arduino pode ser um pouco assustador se você não tiver feito isso antes, mas você se sairá bem!

Siga as instruções para instalar as bibliotecas do Arduino aqui:

www.arduino.cc/en/guide/libraries

A biblioteca FFT quebra o sinal de áudio em 64 bandas de frequência. O LoL Shield é de 14 x 9 LEDs. Calculamos a média das 64 bandas de frequência juntas em 14 bandas de frequência. Estamos jogando fora alguns dados porque 14 não se divide em 64 igualmente, mas sei lá. O valor de cada faixa de frequência é remapeado de 0 a 9.

Você pode copiar o código do Arduino abaixo, obter o código do GitHub (recomendado) ou baixar o arquivo. ZIP, que inclui as bibliotecas e o código do Arduino.

Aqui está o link do GitHub:

github.com/andydoro/LoLShield-FFT

Abaixo está o código do Arduino:

/ * FFT para LoL Shield v0.9 por Andy Doro https://andydoro.com/baseado na biblioteca FFT e no código dos fóruns do Arduino e na biblioteca Charlieplexing para 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 (); // Inicia o LoL Shield}

void loop () {

para (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); dados = val; im = 0; };

fix_fft (dados, im, 7, 0);

para (i = 0; i <64; i ++) {dados = sqrt (dados * dados + im * im ); // obtém o valor absoluto dos valores na matriz, portanto, estamos lidando apenas com números positivos};

// barras médias juntas para (i = 0; i <14; i ++) {dados_avgs = dados [i * 4] + dados [i * 4 + 1] + dados [i * 4 + 2] + dados [i * 4 + 3]; // média juntos data_avgs = map (data_avgs , 0, 30, 0, 9); // remapear valores para LoL}

// definir LoLShield

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x inverte as barras tão baixas para altas frequências são representadas da esquerda para a direita. LedSign:: Set (x, y, 1); // liga o LED} else {LedSign:: Set (x, y, 0); // desligue o LED}}}

}

Etapa 4: Aproveite

Aproveitar!!
Aproveitar!!

& 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; gt; Conecte o conector de áudio ao seu aparelho de som, iPod, computador, etc. Ligue o Arduino com uma fonte de alimentação DC, USB do seu computador ou baterias - isso é totalmente portátil. Você pode colocá-lo em um chapéu ou na fivela do cinto. Os LEDs brancos são tão brilhantes que é difícil capturar em vídeo. Parece que há uma chama roxa saindo deles! Sente-se e divirta-se!

Concurso de Microcontroladores
Concurso de Microcontroladores
Concurso de Microcontroladores
Concurso de Microcontroladores

Finalista no concurso de microcontroladores

Recomendado: