Paso 4: Programar
Conseguir los graves del micrófono
En muchos campos de la ingeniería, el análisis de frecuencias es muy importante. A menudo se consigue mediante la aplicación de la teoría de Fourier transforma. Es muy potente pero la descripción matemática de lo necesario integrales, cálculo complejo y solo funciona para señales perfectas. Estoy en el mundo real, y mi microcontrolador no sabe cómo evaluar integrales complejas. Que es una versión aplicada de esta teoría llamada Fast Fourier transforma (FFT) que es un método muy conocido para hacer un análisis como ese con un ordenador. Sin embargo, requiere algún poder de cálculo que no tiene mi microcontrolador. Encontré otro algoritmos llamado el rápido Hartley transformar (FHT) que es fácil de usar y funciona bien también.
Copié el código de ejemplo de la biblioteca encontró y comenzó a jugar con él para hacer parpadean las luces según los niveles de ciertas frecuencias y terminé. He probado en casa, funcionaba bien. Oh, espera, ¿qué pasa si en un ambiente de música a alto volumen no funciona? Vamos a buscar un plan B.
Sobrevivir en el mundo real
Así que como voy a utilizar esto en un ambiente con música a todo volumen, multitud, borrachos por todas partes, empujando... tengo que hacer mi camiseta (y la electrónica interior) lo suficientemente sólido.
Como no estaba totalmente seguro que funcionaría el micrófono en medio de la música a muy alto volumen programé un plan B en el microcontrolador mediante un interruptor. Con ese interruptor puedo ejecutar la camiseta en un modo de secuencia con patrones aleatorios. De lo contrario se ejecuta en modo de sonido. Resultó que aunque a veces se satura el micrófono, en general funcionó bien toda la noche. La electrónica se pone en una pequeña caja de madera para proteger de impactos. Todo el alambre de soldar en el tablero están calientes pegados alrededor del punto de soldadura para reducir los daños en ellos. Todo se coloca en una pequeña bolsa en el cinturón delante de mí bajo la camiseta.
Puede utilizar el código fuente adjunto en su configuración y jugar con él.