Microcontrolador EcuRed
Microcontrolador EcuRed
Microcontrolador EcuRed
Cada vez existen m�s productos que incorporan un microcontrolador con el fin de
aumentar sustancialmente sus prestaciones, reducir su tama�o y coste, mejorar su
fiabilidad y disminuir el consumo. Algunos fabricantes de microcontroladores
superan el mill�n de unidades de un modelo determinado producidas en una semana.
Este dato puede dar una idea de la masiva utilizaci�n de estos componentes. Los
microcontroladores est�n siendo empleados en multitud de sistemas presentes en
nuestra vida diaria, como pueden ser juguetes, horno microondas, frigor�ficos,
televisores, ordenadores, impresoras, m�dems, el sistema de arranque de nuestro
coche, etc. Y otras aplicaciones con las que seguramente no estaremos tan
familiarizados como instrumentaci�n electr�nica, control de sistemas en una nave
espacial, etc. Una aplicaci�n t�pica podr�a emplear varios microcontroladores para
controlar peque�as partes del sistema. Estos peque�os controladores podr�an
comunicarse entre ellos y con un procesador central, probablemente m�s potente,
para compartir la informaci�n y coordinar sus acciones, como, de hecho, ocurre ya
habitualmente en cualquier PC.
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 que no es sencillo. Adem�s hay que comprobar que arquitecturas de
microcontrolador soporta. Algunas de las cuales son MSP430 de TI, AVR de Atmel y
HC11 de Motorola.
Simulador/Depurador
Se trata de software que es capaz de ejecutar en una PC aplicaciones desarrolladas
para el microcontrolador. Estos permiten tener un control absoluto sobre la
ejecuci�n de la aplicaci�n, siendo ideales para la depuraci�n de las mismas. Su
gran inconveniente es que generalmente se imposibilita simular la entrada de
se�ales (sobre todo anal�gicas) al microcontrolador. Tampoco toman en cuentan los
posibles ruidos en las entradas, pero, al menos, permiten el paso f�sico de la
implementaci�n de un modo m�s seguro y menos costoso, puesto que ahorraremos en
grabaciones de chips para la prueba in-situ.
Placas de demostraci�n
Se trata de peque�os 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,
f�cil 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 demostraci�n, aparte de permitir cargar programas y datos en la
memoria del microcontrolador, puede permitir en cualquier momento realizar
ejecuci�n paso a paso(debug), monitorizar el estado del microcontrolador o
modificar los valores almacenados en sus registros.
Emuladores en circuito
Se trata de un instrumento que se coloca entre el PC anfitri�n y el z�calo 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 aplicaci�n es como si
lo hiciese el mismo microcontrolador que luego ir� en el z�calo. Presenta en
pantalla toda la informaci�n tal y como luego suceder� cuando se coloque la
c�psula.
Programador
Es un dispositivo que conectado a un PC permite grabar en el microcontrolador el
programa desarrollado. Algunos puede fabricarlos uno mismo y resultan muy
econ�micos. Tambi�n existe software gratuito para programar no ya solo
microcontroladores sino tambi�n otros dispositivos, como memorias. Actualmente se
tiende a realizar la programaci�n en la propia placa de utilizaci�n 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 conexi�n de dos, tres o cuatro terminales. Para utilizar esta
t�cnica se utiliza un programador que suele ser muy sencillo y que en algunos casos
puede construir uno mismo.