Caja de música electrónica desarrollado por Arduino (especie de) (5 / 6 paso)

Paso 5: código

Aquí es donde la magia sucede. El código no es compleja pero muy larga con gran cantidad de repetición. Gran parte del código tiene áspero comentario describiendo la función de una sección de código.
Un poco de los controles de IO en el código no está escrito en estándar Arduino código algo C de AVR. La razón es - velocidad.
Lo que parece ser una sola línea en el código de Arduino, por ejemplo digitalRead(), es realmente una biblioteca llamada por el compilador, que tomaría el procesador a 5 microsegundos a un comando de lectura de pin simplemente digital. Y eso es demasiado lento para un funcionamiento fiable donde la sincronización es esencial.
Por otro lado el bajo nivel código AVR C se traduce en sólo unas pocas líneas de ensamblador. Reloj de la misma acción en menos de tiempo de instrucción de 80ns. Menos tiempo a la espera de los datos de entrada da el procesador más tiempo el proceso de la onda acústica, un rendimiento mucho más fiable.
El código recorre cada microsegundo 45, que nos da 22.2kSPS. Una variable de tipo entero se asigna a cada nota de música, que incrementa cada ciclo hasta que esa nota ya no está registrada por las puertas de IR. El nivel de tensión correspondiente se tira de la tabla de la onda basada en su variable. Después de que ha sido a través de los cálculos de que los datos se pasan a través del bus SPI a la DAC para convertir.
He hecho algunas modificaciones al código recientemente para la gama de la octava en la que el sistema cubre. Ahora la mayoría sensor de la derecha IR PD14 banderas el desplazamiento hacia arriba de toda la hoja en una octava. Por ejemplo si usted quiere conseguir Nota C6 se marca la hoja en "C5" y "Up".

Artículos Relacionados

Caja de música electrónica

Caja de música electrónica

https://www.youtube.com/watch?v=xHqHPSNnyEc¿Music Box alguien? ¿Un poco vieja escuela? Con toque electrónico muy moderno ya no es un proyecto mecánico. Cualquier persona con habilidad de soldador competente podría hacer uno.Esto es sólo una prueba y
Dibujar la música electrónica de menta

Dibujar la música electrónica de menta

esto es tomando un experimento tablero anterior e instalar en una lata Altoids.A lo largo de la manera de incluir algunos consejos sobre soldadura.Un par de cosas diferentes del proyecto protoboard:He utilizado un interruptor de palanca en lugar de u
¿Hacer música electrónica? ¡Excelente! Barato! Súper fácil! Tutorial

¿Hacer música electrónica? ¡Excelente! Barato! Súper fácil! Tutorial

Hey! Tiene usted siempre tuvo una idea para una canción, pero no sabía cómo tirar juntos, es decirNo hay experiencia.Ningún instrumento.¿No saben cómo tocar un instrumento?Bueno no busques más.  Quiero presentarles a FL Studio.  Con FL studio, uno pu
Construir una caja de música mecánica programable

Construir una caja de música mecánica programable

¿Si alguna vez has visto esas cajas de música de viento poco, o manivela, y juegan una pequeña melodía una y otra vez de metal un pequeño tambor de notas, pero deseo que hicieran más que reproducir la misma melodía de 10 segundos una y otra vez para
Cómo crear música electrónica

Cómo crear música electrónica

Hacemos un montón de música, que para algunos puede ser tan fácil como el rasgueo de una guitarra o tan complejo como un todo arreglo orquestal. Por nuestra música, nos gusta utilizar los instrumentos que tenemos a nuestro alrededor y con alguna mani
Cómo encontrar música electrónica

Cómo encontrar música electrónica

esta es una guía bastante completa para encontrar nuevos artistas de música de danza electrónica. Es un proceso bastante fácil y puede triplicar tu colección de música en un muy corto período de tiempo. Más artistas EDM colaborará con otros artistas
Caja de música de la baratija de Arduino

Caja de música de la baratija de Arduino

Mi hermanito me había dicho en varias ocasiones cómo Disney de tiene el mejor soundtrack de todos los tiempos. Cuando me dijo que era conseguir enganchado, inmediatamente supe lo que quería ponerlo como una boda presente; una caja de música personali
Prototipo electrónica proyectos con Arduino y la impresión 3D

Prototipo electrónica proyectos con Arduino y la impresión 3D

Así que tienes esta gran idea sobre un proyecto de electrónica. Seguramente no exactamente qué circuito vas a utilizar, por lo que necesitará hacer algunos prototipos. ¿Qué mejor manera de hacerlo que con un Arduino y un protoboard? En este tutorial
Barato caja acolchada para su electrónica

Barato caja acolchada para su electrónica

muestra cómo encontré una manera de conseguir una buena funda acolchada para algunos de mis aparatos electrónicos, quería un caso acolchado ya que recientemente perdió a uno de mi PDA a la imparable fuerza de la gravedad. Ahora tengo un pisapapeles m
Interruptor simple de la pequeña caja para proyectos de electrónica DIY Mini DV Cassette Hack

Interruptor simple de la pequeña caja para proyectos de electrónica DIY Mini DV Cassette Hack

Hola amigos, soy Ostin - he diseñado un cuadro simple interruptor pequeño para mi proyecto (coche revertir módulo cam). He hecho con mini cassette DV. Podría ser también útil en sus proyectos. Hack de cassettes DV mini.Paso 1: N de herramientas equip
Hacer un Mini LED Siren (desarrollado por Arduino!)

Hacer un Mini LED Siren (desarrollado por Arduino!)

Este es uno de los primeros proyectos que he hecho con Arduino. Es una pequeña sirena con un LED que se desvanece y parpadea encendido y apagado. Demuestra uso básico del LED y los altavoces. Consulta también este artículo: escudo de programación de
Cómo hacer una cerradura electrónica utilizando un Arduino UNO

Cómo hacer una cerradura electrónica utilizando un Arduino UNO

Este es un proyecto bastante fácil. No necesitas soldar. Aparte de la Arduino UNO, todos los materiales son fáciles de encontrar y no son costosos. Este proyecto es una divertida manera para bloquear la puerta de su dormitorio y es totalmente persona
LEGO caja de electrónica

LEGO caja de electrónica

sabes lo que dicen de los niños y sus juguetes. Mientras que mis juguetes han conseguido un poco más avanzado, yo no puedo sino quieres jugar con mis LEGOs cada ahora y entonces. He querido crear un gabinete de electrónica LEGO para rato y mi último
LEGO electrónica DL-44 Blaster (luz y sonido)

LEGO electrónica DL-44 Blaster (luz y sonido)

Actualización: este proyecto ya está disponible en Ideas LEGO --tan seguro apoyo si desea verlo a la venta en tiendas algún día!Construido originalmente para el año 2014 de día de Star Wars, les presento a un proyecto que he estado constantemente rev