Analizador de espectro de cubo LED (3 / 4 paso)

Paso 3: El Arduino sketch - parte uno

El bosquejo tiene dos funciones principales: la primera es para capturar los niveles de la MSGEQ7 y poner los valores de cada banda de frecuencia en una matriz, y la segunda función es para encender los LEDs que representan el nivel de cada banda. Si usted ha estado prestando atención usted se estará preguntando cómo podemos representar siete bandas de frecuencia con un 4 x 4 x 4 cubo del LED. Simple – girando el cubo 45 grados puedes ver siete columnas verticales de LEDs (ver la imagen del cubo con las columnas numeradas).

Así que cuando se mira desde el ángulo como se muestra arriba, tiene siete columnas verticales, cada una con cuatro niveles de LEDs. Así la fuerza de cada frecuencia puede dividirse en cuatro niveles y luego el LED apropiado encendido.
Después de esto se hace para cada banda, se apagan todos los LEDs y se repite el proceso.

Por simplicidad he utilizado del cubo biblioteca Arduino para activar los LEDs, que también hace más fácil comprender el bosquejo. El primer bosquejo de ejemplo sólo utiliza un solo color.

// ----------------------------------------------------------------------------------------------------------------------
Freetronics CUBE4: y analizador de espectro MSGEQ7
MSGEQ7 estrobo en A4, reset en D5, señal en A0
#include "SPI.h"
#include "Cube.h"
Cubo del cubo;
int res = 5; reajuste de pernos en D5
int a la izquierda [7]; almacenar los valores de la banda en estos arreglos de discos
int grupo;
void setup()
{
pinMode (res, salida); RESET
pinMode (A4, salida); luz estroboscópica
digitalWrite(res,LOW);
digitalWrite(A4,HIGH);
Cube.Begin (-1, 115200);
Serial.Begin(9600);
}
void readMSGEQ7()
Función para leer Ecualizadores de 7 bandas
{
digitalWrite (res, HIGH);
digitalWrite (res, LOW);
para (banda = 0; banda < 7; banda ++)
{
digitalWrite(A4,LOW); pin de Strobe en el escudo - comienza el IC hasta la siguiente banda
delayMicroseconds(30); //
izquierda [band] = analogRead(0); almacenar lectura de banda
digitalWrite(A4,HIGH);
}
}
void loop()
{
readMSGEQ7();
para (banda = 0; banda < 7; banda ++)
{
div cada banda fuerza en cuatro capas, cada banda entonces una de las diagonales impares
banda uno ~ 63 Hz
Si (a la izquierda [0] > = 768) {}
Cube.set (3,3,3, azul);
}
otra cosa
Si (a la izquierda [0] > = 512) {}
Cube.set (3,3,2, azul);
}
otra cosa
Si (a la izquierda [0] > = 256) {}
Cube.set (3,3,1, azul);
}
otra cosa
Si (a la izquierda [0] > = 0) {}
Cube.set (3,3,0, azul);
}
banda dos ~ 160 Hz
Si (a la izquierda [1] > = 768)
{
Cube.set (3,2,3, azul);
Cube.set (2,3,3, azul);
}
otra cosa
Si (a la izquierda [1] > = 512)
{
Cube.set (3,2,2, azul);
Cube.set (2,3,2, azul);
}
otra cosa
Si (a la izquierda [1] > = 256)
{
Cube.set (3,2,1, azul);
Cube.set (2,3,1, azul);
}
otra cosa
Si (a la izquierda [1] > = 0)
{
Cube.set (3,2,0, azul);
Cube.set (2,3,0, azul);
}
banda tres ~ 400 Hz
Si (a la izquierda [2] > = 768)
{
Cube.set (3,1,3, azul);
Cube.set (2,2,3, azul);
Cube.set (1,3,3, azul);
}
otra cosa
Si (a la izquierda [2] > = 512)
{
Cube.set (3,1,2, azul);
Cube.set (2,2,2, azul);
Cube.set (1,3,2, azul);
}
otra cosa
Si (a la izquierda [2] > = 256)
{
Cube.set (3,1,1, azul);
Cube.set (2,2,1, azul);
Cube.set (1,3,1, azul);
}
otra cosa
Si (a la izquierda [2] > = 0)
{
Cube.set (3,1,0, azul);
Cube.set (2,2,0, azul);
Cube.set (1,3,0, azul);
}
banda cuatro ~ 1 kHz
Si (a la izquierda [3] > = 768)
{
Cube.set (3,0,3, azul);
Cube.set (2,1,3, azul);
Cube.set (1,2,3, azul);
Cube.set (0,3,3, azul);
}
otra cosa
Si (a la izquierda [3] > = 512)
{
Cube.set (3,0,2, azul);
Cube.set (2,1,2, azul);
Cube.set (1,2,2-Trimethylpropyl, azul);
Cube.set (0,3,2, azul);
}
otra cosa
Si (a la izquierda [3] > = 256)
{
Cube.set (3,0,1, azul);
Cube.set (2,1,1, azul);
Cube.set (1,2,1, azul);
Cube.set (0,3,1, azul);
}
otra cosa
Si (a la izquierda [3] > = 0)
{
Cube.set (3,0,0, azul);
Cube.set (2,1,0, azul);
Cube.set (1,2,0, azul);
Cube.set (0,3,0, azul);
}
banda de cinco ~ 2.5 kHz
Si (a la izquierda [4] > = 768)
{
Cube.set (2,0,3, azul);
Cube.set (1,1,3, azul);
Cube.set (0.2.3, azul);
}
otra cosa
Si (a la izquierda [4] > = 512)
{
Cube.set (2,0,2, azul);
Cube.set (1.1.2, azul);
Cube.set (0,2,2, azul);
}
otra cosa
Si (a la izquierda [4] > = 256)
{
Cube.set (2,0,1, azul);
Cube.set (1,1,1, azul);
Cube.set (0,2,1, azul);
}
otra cosa
Si (a la izquierda [4] > = 0)
{
Cube.set (2,0,0, azul);
Cube.set (1,1,0, azul);
Cube.set (0,2,0, azul);
}
banda de seis ~ 6,25 kHz
Si (a la izquierda [5] > = 768)
{
Cube.set (1,0,3, azul);
Cube.set (0,1,3, azul);
}
otra cosa
Si (a la izquierda [5] > = 512)
{
Cube.set (1,0,2, azul);
Cube.set (0,1,2, azul);
}
otra cosa
Si (a la izquierda [5] > = 256)
{
Cube.set (1,0,1, azul);
Cube.set (0,1,1, azul);
}
otra cosa
Si (a la izquierda [5] > = 0)
{
Cube.set (1.0.0, azul);
Cube.set (0.1.0, azul);
}
banda 7 ~ 16 kHz
Si (a la izquierda [6] > = 768)
{
Cube.set (0,0,3, azul);
}
otra cosa
Si (a la izquierda [6] > = 512)
{
Cube.set (0,0,2, azul);
}
otra cosa
Si (a la izquierda [6] > = 256)
{
Cube.set (0.0.1, azul);
}
otra cosa
Si (a la izquierda [6] > = 0)
{
Cube.set (0,0,0, azul);
}
}
ahora claro el cubo, o si es demasiado lento - repetir el proceso pero apagar LEDs
Cube.All(Black);
}
// ----------------------------------------------------------------------------------------------------------------------

y un rápido vídeo demostrativo:

Artículos Relacionados

Analizador de espectro de LED activa por sonido

Analizador de espectro de LED activa por sonido

Esta guía le mostrará cómo construir un analizador de espectro de LED. Esta había construido como una adición a mi gabinete de la arcada, aunque puede reutilizar esta guía y usar la luz de la barra en cualquier lugar que desee una pantalla de luz act
¿Analizador de espectro de frambuesa Pi con tira de LED RGB y Python

¿Analizador de espectro de frambuesa Pi con tira de LED RGB y Python

en busca de un primer proyecto probar en un Raspberry Pi, aunque qué mejor que un analizador de espectro? (A veces esta pantalla es erróneamente que se refiere para como un ecualizador gráfico, que vamos a cambiar el sonido, no mostrarlo)Pude consegu
Cubo LED 8 x 8 x 8

Cubo LED 8 x 8 x 8

pantalla 3D crear su propia 8 x 8 x 8 LED cubo!Creemos que este Instructable es la guía más completa paso a paso para construir un 8 x 8 x 8 que LED cubo publicado siempre en los intertubes. Le mostrará todo, desde la teoría de la operación, cómo con
Analizador de espectro ATtiny85 con fix_FFT

Analizador de espectro ATtiny85 con fix_FFT

ATtiny85 analizador de espectro para la música a LED RGB con FFTEntusiasmado con el nuevo descubrimiento de la biblioteca FHT. Realmente definitivamente tuyo quiere darle una oportunidad en un ATtiny85. Después de horas masajeando el código para hace
Espejo de infinidad de analizador de espectro audio

Espejo de infinidad de analizador de espectro audio

hay algo fascinante sobre destella luces sincronizadas con música. lol. ¿Por qué no mezclar el efecto con un espejo infinito?Partes:• espejo, espejo falso y un espaciador entre las 2.• 21 cátodo común de RGB LED• 8 x 8 LED Audio Spectrum Analyzer• El
Cómo dulce dibujar gráficos 3D cubos LED

Cómo dulce dibujar gráficos 3D cubos LED

He pasado los últimos cuatro meses trabajando con cubos de LED, y este instructable es mi forma de compartir algunos de los conocimientos y técnicas que he acumulado durante este tiempo. Si tienes un cubo de los tuyos, esto podría ayudar a hacer gráf
Arduino / procesamiento de analizador de espectro Audio

Arduino / procesamiento de analizador de espectro Audio

En este Instructable voy a mostrar cómo hacer un programa en el proceso que analiza el sonido en su computadora y envía los datos a un Arduino que controla una matriz de LED para mostrar el análisis de espectro.Yo se explicar donde conseguir material
Torre del altavoz de analizador de espectro

Torre del altavoz de analizador de espectro

Decidí finalmente construir la torre del altavoz que he sentido a un tiempo. Aunque no tengo una completa instructable sobre el proyecto, llegaron a tomar una cuantas fotos en el camino.La torre del altavoz utiliza varios controladores de otros que h
Construir un cubo LED 4 x 4 x 4 en menos de 3 horas

Construir un cubo LED 4 x 4 x 4 en menos de 3 horas

Yo siempre quería construir un cubo LED para mi esposa (tal como le prometí a). He estado viendo un montón de tutoriales/instructables sobre la construcción de un cubo de LED y francamente, todos tienen el mismo método para construir el cubo. Es deci
Analizador de espectro con Edison de Intel

Analizador de espectro con Edison de Intel

Transformar su Edison de Intel en un increíble analizador de espectro a utilizar en las aplicaciones de audio!Con algunas líneas C y comandos terminal será capaz de visualizar tu canción favorita en el dominio de la frecuencia o las frecuencias que c
Cubo LED 3D

Cubo LED 3D

El cubo LED 3D es un dispositivo realmente fresco que le permite ver en tres dimensiones, haz alguna percepción de profundidad y tiene 512 LED o 512 píxeles. Está basado en un arduino uno que es un microcontrolador Atmel AVR en un tablero de desarrol
Mi cubo Led impresionante

Mi cubo Led impresionante

esta es mi versión del cubo led impresionante, su hecho de hojas de acetato (transparente) y una Pepsi puedo, con un circuito de led multicolor de una linterna bolígrafo barato. Diseñé la parte 6 del cubo para que coincida con los 5 anteriores.
Analizador de espectros acústicos de AVR

Analizador de espectros acústicos de AVR

analizador de espectros acústicos de AVR, basado en Microcontrolador AVR Atmega8, amplificador operacional y algunos otros componentes. Utilizar cualquier LCD compatible HD44780 o VFD, conecte la señal de audio y disfrutar el efecto :) Se pueden cons
Guía definitiva para hacer un cubo LED

Guía definitiva para hacer un cubo LED

Hola gente, estaba muy fascinado con estos cubos de LED y me decidí a hacer uno... PERO pero pero hay un problema que enfrentas al crear su propio cubo LED... Que es de donde al comienzo y cómo iniciar pero para solucionar ese problema tengo una solu