domingo, 14 de septiembre de 2014

8051 : Atmel 89S51 , programación en Pascal

La programación de microcontroladores en Pascal  no es común, sin embargo para la familia 8051 existe el compilador Turbo51 el cual tiene unas características muy interesantes.

Normalmente se considera el lenguaje C como el mas eficiente en cuanto a tamaño y calidad del código binario creado , asi como también en cuanto a velocidad de ejecución. Si comparamos el compilador SDCC con Turbo51 los papeles se invierten. De hecho el código binario creado por Turbo51 está muy optimizado en cuanto a tamaño y velocidad de ejecución, es por ello que vale la pena experimentar con este compilador.

Al igual que en el caso de otros  compiladores se requiere un editor/IDE para poder crear programas y posteriormente compilarlos. Una opción muy sencilla es el editor de programación PSPAD

La parametrización de PSPAD consiste en modificar la pestaña
Opciones -> Configurar Resaltadores :




Una vez creado el programa fuente en el editor debemos compilarlo :


El resultado de la compilación se muestra en la sección inferior de la pantalla. Si la compilación es exitosa se genera el mensaje  Exit code = 0


El archivo binario .hex se crea en la misma carpeta donde tenemos el programa fuente.
A continuación un ejemplo que permite generar los primeros 47 números de fibonacci, lucas y el número mágico "golden section" y los muestra por el puerto serial (utilizamos un cristal de 24Mhz y la velocidad de conexión con el terminal es de 4800x2=9600bauds):



Una vez creado el archivo binario .hex debemos grabarlo en la memoria flash del micro mediante un programador (en nuestro caso utilizamos un Arduino ATmega644 en modo programador SPI).

En este ejemplo podemos ver lo eficiente que es el compilador ya que el tamaño del binario creado es de 2733B , un número impresionante si tomamos en cuenta que tenemos cargadas las librerías para impresión con formato y utilizamos números de punto flotante.

No hay comentarios:

Publicar un comentario