Las herramientas de programacin facilitan el diseo del programa, la verificacin de
su funcionamiento y su transferencia a la memoria del microcontrolador. Las principales herramientas de un software son: Editores y compiladores Simuladores Grabadores o Programadores Editores y Compiladores Los lenguajes de programacin ms utilizados son el Ensamblador y el C. la programacin en lenguaje ensamblador a pesar de ser un poco dificultosa permite desarrollar programas muy eficientes, ya que proporciona al programador el acceso directo a todos los recursos del sistema. En cambio C que es un programa de alto nivel disminuye el tiempo de desarrollo, pero, el programa en lenguaje maquina obtenido puede ser menos eficiente que el obtenido a partir del Ensamblador. Para el desarrollo del programa del microcontrolador se utilizan programas editores que constituyen herramientas que facilitan la utilizacin de los lenguajes de programacin. Los compiladores son programas que se encargan de traducir el programa escrito en cualquier lenguaje a lenguaje mquina. Simuladores Los simuladores son programas capaces de ejecutar en un computador personal programas diseados para ser ejecutados en un microcontrolador. Proporcionan informacin sobre la ejecucin de un programa y son ideales para depurarlo como paso previo a su introduccin en la memoria del microcontrolador de modo seguro y poco costoso. Pero su inconveniente es la dificultad de simular la entrada y la salida de datos del microcontrolador, a ms de que no proporcionan informacin de los problemas que surgen al ejecutar el programa en un prototipo real. Programador El programa en lenguaje maquina se debe grabar en la memoria de instrucciones del microcontrolador mediante un dispositivo con un zcalo libre sobre el que se sita el integrado libre el cuan se va a grabar. Entre muchos de lenguajes de programacin que existen para programar un Microcontrolador los ms utilizados son el ASSEMBLER, BASIC, C.
ASSEMBLER Assembler es el lenguaje mquina, pues en l se programa el Microcontrolador de desde cero, se trabaja con cada mdulo, desde los registros hasta las diferentes fusibles que se deben activar para realizar diferente tarea en el Microcontrolador.
Este lenguaje es utilizado a nivel de ingeniera, para economizar y aumentar la eficiencia del cdigo de un programa para Microcontrolador. Ventajas: Es el lenguaje de bajo nivel natural de la lnea PIC tanto para gama baja, media o alta. Con l se tiene un aprovechamiento eficiente de los recursos del PIC. Se pueden crear macros con este lenguaje, para despus simplificar el cdigo en diferentes desarrollos. Con l se pueden controlar los tiempos y los registros bit a bit. Excelente para manejar interrupciones simultneas. Cuando se genera el archivo .hex ste es completamente optimizado. Desventajas: Tiempo en desarrollar una rutina si no est familiarizado con el programa. El compilador para este lenguaje es el MPLAB IDE el cual se consigue totalmente gratuito en la pgina de Microchip y constantemente estn sacando nuevas versiones, Solo funciona bajo ambiente Windows. Para Linux existe un versin alternativa llamada: PIKLAB la cual presenta simuladores, editores, ensambladores y soporta una gran cantidad de compiladores C para PIC.
BASIC: Se utiliza para programar Microcontroladores de la fbrica ATMEL, como el Microcontrolador Atmega8, un Microcontrolador muy parecido al Microcontrolador PIC16F84A, pero con mejores prestaciones. Ventajas: Es un lenguaje muy simple y con instrucciones fcilmente legibles, incluso por no expertos. Desventajas:
No se puede tener el control del programa en cuanto a tiempos de ejecucin y control de registros bit a bit. Es muy complicado el manejo de interrupciones simultneas en este lenguaje. Tiene limitaciones cuando genera el archivo .hex, es decir no optimiza el tamao de memoria de programa del PIC. La mayora de compiladores para este lenguaje pueden utilizarse nicamente bajo ambiente Windows. El compilador ms conocido es el PICBASIC PRO de Micro Engineering Labs Inc. (No gratuito) LENGUAJE C: Ventajas:
Es un lenguaje de alto nivel ms cercano a la mquina. Puedes construir rutinas matemticas fcilmente. Puede ser de ayuda al combinarlo con Ensamblador sobre todo en la gama alta. Se pueden crear macros con este lenguaje, para despus simplificar el cdigo en diferentes desarrollos. Es aceptado por la empresa fabricante Microchip, incluso ellos tienen algunos compiladores C. Desventajas: Los programas al compilarlos pueden resultar un poco extensos y pesados por ello debe tenerse en cuenta la capacidad de memoria de programa del PIC a utilizar. Con este lenguaje tampoco se puede controlar del todo los tiempos y los registros bit a bit. Compiladores: Microchip: Sus compiladores C18 para la gama alta y C30 para los dsPIC, ambos Como otras herramientas de esta marca, se puede incluir en el entorno gratuito MPLAB IDE, y permite a los desarrolladores, llevar a cabo su aplicacin en un lenguaje de alto nivel. No son gratuitos. Ccsinfo: Sus herramientas ms conocidas, son la serie de compiladores para las distintas familias de microcontroladores Microchip PIC MCU: PCW IDE, PCWH IDE y PCWHD IDE. Ofrecen la posibilidad de que el usuario pueda elegir el compilador concreto para la familia que va a utilizar, y compilar en modo linea de comandos, tanto para Microsoft Windows, como para Linux. Para los usuarios de Microsoft Windows, tambin existe la posibilidad de utilizar su potente entorno de desarrollo PCWHD IDE, que incluye adems de los compiladores para todas las familias de PICs y dsPICs, entre otras cosas, un editor de cdigo con reconocimiento de comandos, un depurador ICD, y un Wizard que en base a lo que el usuario le indique, generar la mayor parte del cdigo para inicializar el microcontrolador. Adems incluyen una gran cantidad de libreras muy tiles para asociar con la rutina que se desarrolle. Este compilador tambin puede integrarse con MPLAB IDE. No es gratuito. Htsoft. (HI-TECH): Sus herramientas ms conocidas son PICC y PICC18. No son gratuitos.
MPLAB IDE Es una de las herramientas ms tiles, tanto desde el punto de vista didctico como tcnico. El simulador de MPLAB permite al usuario seguir paso por paso cada instruccin del programa, insertar breakpoints, generar entradas digitales en cualquier bit de los puertos y observar el contenido de cualquier registro interno del microcontrolador, as como de las localidades de la memoria de datos y de cdigo, la EEPROM y el stack. MPLAB incluye un cronmetro para el clculo de tiempos de ejecucin y otras opciones. El simulador funciona igualmente para programas escritos en lenguaje ensamblador en C. Bibliografa: Enrique Mandado Prez, Luis Menndez Fuertes, Luis Fernndez Ferreira, Emilio Lpez matos, fecha desconocida, Microcontroladores Pic, sistema integrado para el autoaprendizaje, herramientas de programacin,[online] disponible en: http://books.google.com.ec/books?id=86uGLMp4vgAC&pg=PA122&lpg=PA122&dq=qu e+son+las+herramientas+de+programacion+de+pics&source=bl&ots=LVOF4OuhLJ&si g=WhEXTb_Xa43INJ3afRM4jGn9QL0&hl=es&sa=X&ei=CHJiU7DwDoSf2QXl1IHwBw &ved=0CEwQ6AEwCw#v=onepage&q=que%20son%20las%20herramientas%20de% 20programacion%20de%20pics&f=false Autor desconocido, 2007-31-12, Lenguajes de Programacin para Pics,[online] disponible en: http://electronicadesarrollo.blogspot.com/2007/12/programacin-de- pics.html