Paso 12: Código
********************************************************************************************************************************************************************************************************
Actualización importante de 31 de enero de 2011. Por favor lea!
Un espectador intentó recientemente a Asamblea el archivo *.asm originalmente incluidas en este instructable, pero recibido muchos "118" errores del ensamblador MPLAB. Este problema es debido a que he creado el código en una versión anterior de MPLAB. Mientras compila bien en la versión anterior, Parece que las directivas que se utiliza para configurar y reserva de espacio para las variables en la RAM ha cambiado. He observado también algunos otros casos donde la nueva versión de MPLAB no gusta la sintaxis de las expresiones que funcionaba bien en versiones anteriores. También, asegúrese de seleccionar "código absoluto" cuando tratando de montar el archivo *.asm incluido. He actualizado el archivo *.asm y une aquí. Las modificaciones sólo son ésos requeridos para montar sin errores. El archivo actualizado tiene "Nueva" en el nombre del archivo. He dejado el antiguo archivo adjunto también, en caso de que alguien lo necesita, pero simplemente tenga en cuenta que si usas la última MPLAB generará muchos errores si utiliza el archivo asm original que os adjunto. El archivo *.hex generado desde el código actualizado parece ser idéntica a la que originalmente Unido, por lo que no he adjuntado otro archivo. El archivo *.hex original debería funcionar bien para programar sólo una parte con el código como está configurado en el archivo *.asm suministrado.
recibió los mismos errores cuando lo probé en una nueva versión.
****************************************************************************************************
****************************************************************************************************
El código fuente para el archivo *.hex incluido se coloca por debajo. El programa fue escrito para el PIC 12F683 procesadores construidos en oscilador como el reloj, opera a 8MHz. Si va a reutilizar el código en una aplicación que va a utilizar una frecuencia de reloj diferentes, usted tendrá en cuenta la diferencia en el software. Los parámetros que establece la frecuencia de muestreo debe ser cambiado.
Si realiza un cambio en la frecuencia de muestreo (que es de 4400Hz para el programa como está escrito ahora) entonces tienes que generar nuevo look mesas para los coeficientes del seno y del coseno, ya que son dependientes de la frecuencia de muestreo.
Si cambia el número de muestras utilizadas en el algoritmo (que es de 200 para el programa como está escrito ahora) tienes que generar una nueva tabla de consulta para la función de la ventana.
Es relativamente fácil de portar este código a otro microprocesador PIC de 8 bits. Las cosas principales a tener en cuenta son la frecuencia del oscilador como se describió anteriormente, y la configuración exacta de registros asociados con los periféricos utilizados. Estos son generalmente muy similares entre los procesadores PIC de 8 bit, pero pueden muy poco a poco. El procesador elegido debe tener un convertidor A/D para la lectura de las entradas analógicas y un temporizador de 16 bits para establecer la frecuencia de muestreo.