4
Herramientas de Desarrollo Las herramientas de desarrollo están formadas por un conjunto de programas e interfaces(IDEs) que permiten realizar los proyectos de la forma más rapida y eficiente posible. Las principales herramientas de ayuda al desarrollo de sistemas basados en microcontroladores se describen a continuación Ensamblador La programación en lenguaje ensamblador puede resultar un tanto ardua para el principiante, pero permite desarrollar programas muy eficientes, ya que otorga al programador el dominio absoluto del sistema. Los fabricantes suelen proporcionar el programa ensamblador de forma gratuita y en cualquier caso siempre se puede encontrar una versión gratuita para los microcontroladores más populares. Compilador La programación en un lenguaje de alto nivel (como C o Basic) permite disminuir el tiempo de desarrollo de un producto y si además está familiarizado con C o Basic es una buena opción. No obstante, cuando el compilador convierta el código del programa a un lenguaje ensamblado, cada línea de código del programa en lenguaje de alto nivel habrá generado bastantes más líneas de código en lenguaje ensamblador, normalmente en una relación de uno a tres. Esto significa que para utilizar un lenguaje de alto nivel necesitaremos un microcontrolador con una capacidad de memoria relativamente grande. Si el programa que estamos desarrollando necesita utilizar números con decimales, o con notación científica o se utilizan operaciones complejas, como pueden ser las trigonométricas, es casi obligado utilizar un lenguaje de alto nivel. Pero si lo que se va a hacer es manipular bits en registros, entradas, salidas y cálculos sencillos, el lenguaje ensamblado es la mejor opción. Las versiones más potentes de compiladores suelen ser muy caras, aunque para los microcontroladores más populares pueden encontrarse versiones demo limitadas e incluso compiladores gratuitos. Como compilador gratuito puede utilizarse el compilador C GNU, que es un compilador C de código abierto tan bueno como los compiladores C comerciales pero que sin embargo tiene un proceso de instalación

Herramientas de Desarrollo

Embed Size (px)

Citation preview

Herramientas de DesarrolloLas herramientas de desarrollo estn formadas por un conjunto de programas e interfaces(IDEs) que permiten realizar los proyectos de la forma ms rapida y eficiente posible. Las principales herramientas de ayuda al desarrollo de sistemas basados en microcontroladores se describen a continuacinEnsambladorLa programacin en lenguaje ensamblador puede resultar un tanto ardua para el principiante, pero permite desarrollar programas muy eficientes, ya que otorga al programador el dominio absoluto del sistema. Los fabricantes suelen proporcionar el programa ensamblador de forma gratuita y en cualquier caso siempre se puede encontrar una versin gratuita para los microcontroladores ms populares.CompiladorLa programacin en un lenguaje de alto nivel (como C o Basic) permite disminuir el tiempo de desarrollo de un producto y si adems est familiarizado con C o Basic es una buena opcin. No obstante, cuando el compilador convierta el cdigo del programa a un lenguaje ensamblado, cada lnea de cdigo del programa en lenguaje de alto nivel habr generado bastantes ms lneas de cdigo en lenguaje ensamblador, normalmente en una relacin de uno a tres. Esto significa que para utilizar un lenguaje de alto nivel necesitaremos un microcontrolador con una capacidad de memoria relativamente grande. Si el programa que estamos desarrollando necesita utilizar nmeros con decimales, o con notacin cientfica o se utilizan operaciones complejas, como pueden ser las trigonomtricas, es casi obligado utilizar un lenguaje de alto nivel. Pero si lo que se va a hacer es manipular bits en registros, entradas, salidas y clculos sencillos, el lenguaje ensamblado es la mejor opcin. Las versiones ms potentes de compiladores suelen ser muy caras, aunque para los microcontroladores ms populares pueden encontrarse versiones demo limitadas e incluso compiladores gratuitos. Como compilador gratuito puede utilizarse el compilador C GNU, que es un compilador C de cdigo abierto tan bueno como los compiladores C comerciales pero que sin embargo tiene un proceso de instalacin que no es sencillo. Adems hay que comprobar que arquitecturas de microcontrolador soporta. Algunas de las cuales son MSP430 de TI, AVR de Atmel y HC11 de Motorola.

Simulador/DepuradorSe trata de software que es capaz de ejecutar en una PC aplicaciones desarrolladas para el microcontrolador. Estos permiten tener un control absoluto sobre la ejecucin de la aplicacin, siendo ideales para la depuracin de las mismas. Su gran inconveniente es que generalmente se imposibilita simular la entrada de seales (sobre todo analgicas) al microcontrolador. Tampoco toman en cuentan los posibles ruidos en las entradas, pero, al menos, permiten el paso fsico de la implementacin de un modo ms seguro y menos costoso, puesto que ahorraremos en grabaciones de chips para la prueba in-situ.

Placas de demostracinSe trata de pequeos sistemas con un microcontrolador ya montado y que suelen conectarse a un PC desde el que se cargan los programas que se ejecutan en el microcontrolador. Las placas suelen incluir indicadores visuales, LCD, teclados, fcil acceso a los pines de E/S, etc. Pueden incluir un programa de control o sistema operativo que recibe el nombre de programa monitor. El programa monitor de algunas placas de demostracin, aparte de permitir cargar programas y datos en la memoria del microcontrolador, puede permitir en cualquier momento realizar ejecucin paso a paso(debug), monitorizar el estado del microcontrolador o modificar los valores almacenados en sus registros.Emuladores en circuitoSe trata de un instrumento que se coloca entre el PC anfitrin y el zcalo de la tarjeta de circuito impreso donde se alojar el microcontrolador definitivo. El programa es ejecutado desde el PC, pero para la placa de la aplicacin es como si lo hiciese el mismo microcontrolador que luego ir en el zcalo. Presenta en pantalla toda la informacin tal y como luego suceder cuando se coloque la cpsula.ProgramadorEs un dispositivo que conectado a un PC permite grabar en el microcontrolador el programa desarrollado. Algunos puede fabricarlos uno mismo y resultan muy econmicos. Tambin existe software gratuito para programar no ya solo microcontroladores sino tambin otros dispositivos, como memorias. Actualmente se tiende a realizar la programacin en la propia placa de utilizacin mediante ISP, In System Programmation o ICSP, In Circuit Serial Programation. De esta manera se puede programar al microcontrolador una vez est montado en la placa del circuito utilizando una conexin de dos, tres o cuatro terminales. Para utilizar esta tcnica se utiliza un programador que suele ser muy sencillo y que en algunos casos puede construir uno mismo.Otra posibilidad es utilizar un "cargador de arranque"(bootloader), muy util en la etapa de desarrollo de un programa. Un cargador de arranque es un pequeo programa en el microcontrolador que est montado en la placa del circuito que se est desarrollando y que puede comunicarse con las herramientas de desarrollo (que se van a utilizar para escribir el cdigo del programa de la aplicacin) a travs de un enlace serie, como puede ser RS232, USB, I2C o un bus CAN. El programa cargador de arranque debe interpretar comandos para leer, grabar y borrar la parte de memoria reservada para el programa de la aplicacin. Cuando se desea verificar el programa que se est desarrollando se inicia la comunicacin con el programa cargador de arranque, que carga el cdigo de programa en la memoria de programa del microcontrolador. Despus el programa cargador de arranque transfiere el control al programa cargado y entonces se puede ejecutar y verificar el programa cargado. Esta operacin de carga y prueba puede realizarse tantas veces como sea necesario.Los requerimientos que tiene que cumplir el microcontrolador a utilizar son: Suficiente memoria de programa para alojar tanto el cargador de arranque como el programa en desarrollo. Que el microcontrolador permita que pueda modificarse la memoria de programa por si mismo. Un puerto serie para la comunicacin.Por ejemplo, el microcontrolador LPC210x de la casa Philips incluye un cargador de arranque serie integrado que est ubicado en los 8 K primeros de su memoria Flash. Estndo el terminal P0.14 a masa y generndo un reset el LPC210x ejecuta el programa cargador de arranque. Utilizndo un programa para PC gratuito de la casa Philips y un cable serie conectado entre el PC y la UART del microcontrolador LPC210x (a travs de un conversor TTL/RS232 como el c.i. MAX232) se puede realizar la programacin del microcontrolador. Tambin resulta interesante el interface JTAG (que por ejemplo posee el microcontrolador LPC210x), que puede utilizarse para programar el dispositivo y para depurar un programa durante su ejecucin en el microcontrolador. Para utilizar el interface JTAG se necesita un mdulo interfaz de depuracin JTAG que se conecta con entre el sistema de desarrollo del microcontrolador y el PC que lo aloja. En el mercado existen distintos mdulos interfaces JTAG comerciales pero tambi se pueden encontrar otros en Internet.