Paso 6: Efectos de la luz Resumen y archivos de Software
Dos microprocesadores separados de 12F683 PIC generan los efectos de luz, uno para las luces de verde y el otro para las luces rojas y amarillas que flash sincronizado con los efectos de voz.Ambos programas fueron escritos en conjunto con herramienta MPASM de Microchip que es gratis en su página web.
El ensamblado archivo *.hex y *.asm fuente para cada programa se incluye aquí, junto con un diagrama de flujo de alto nivel que muestra cómo funciona cada programa. Los ficheros *.asm también contienen muchos comentarios a lo largo de explicar el funcionamiento del programa.
El funcionamiento general de cada programa es como sigue.
Luces verdes intermitentes
El programa que se ejecuta en el procesador que genera los efectos de luz verde intermitente sólo recupera la configuración de LED de una tabla de 20 Estados diferentes. Cada estado aparece 300 milisegundos, y luego el siguiente estado se levantó de la mesa y muestra, y así sucesivamente. Los lazos del programa a través de la mesa para siempre, dando la apariencia las luces parpadean al azar.
Luces de sincronización de voz
El programa que se ejecuta en el procesador que genera las luces que flash sincronizado con los efectos de voz muestrea el audio utilizando el convertidor A/d interno de procesadores. De cada muestra, se determina la magnitud de la onda de audio, y se compara contra un umbral. Si la magnitud es mayor que el umbral, la salida digital es alto, de lo contrario se encuentra bajo.
El umbral es ajustable a través de la tensión en la otra entrada al microprocesador. La entrada de A/D se utiliza para leer el voltaje en esa entrada, y el resultado se utiliza para determinar el umbral. El programa también incorpora algunos histéresis en el proceso de comparación de magnitud.
Este programa también produce dos salidas adicionales que no se utilizan en los efectos de luz en el modelo, pero pueden ser útiles para otros fines. El primero es simplemente una salida digital que es el complemento de la que se utiliza para conducir la voz LEDs. Esta salida es alta cuando el otro es bajo y viceversa. Esto sería útil si una salida invertida era necesaria, para que la salida era baja cuando la señal de audio era más grande que el umbral.
La segunda utiliza el módulo PWM de procesadores para producir una señal PWM que tiene el deber de ciclo proporcional a la magnitud de la señal de audio.