Capítulo 11: Procesadores Digitales
Microcontroladores
Qué es un Microcontrolador
Muchos de los sistemas digitales pueden diseñarse empleando procesadores o microcontroladores, la selección del dispositivo depende del tipo de aplicación y la diferencia básica que existe entre estos dos dispositivos se explica a continuación:
Los procesadores son empleados para procesar información. A manera de ejemplo, con un procesador se podría hallar todas las personas en Bogotá entre edades de 15 y 30 años, de sexo femenino, y ordenados por el Apellido. Los procesadores usan un conjunto de instrucciones útiles para procesar datos, lo cual los hace muy versátiles para manejar información.
Los microcontroladores son utilizados como su nombre lo indica para controlar. Son muy utilizados para implementar controles automáticos. Como ejemplo, un microcontrolador puede sensar la temperatura de un proceso, compararla con un valor almacenado en memoria y tomar la decisión de encender un equipo de calefacción si la temperatura baja de cierto valor, y además de ello mostrar el valor en un display.
Los microcontroladores generalmente tienen instrucciones especiales que permiten controlar procesos como el indicado anteriormente y otros más complejos; todo depende de la habilidad del programador para generar el código para manejar el proceso. Un microcontrolador es simplemente un procesador con memoria ROM y RAM, puertos de E/S y otros dispositivos de propósito especial como conversores A/D, contadores, temporizadores y puertos de comunicación, o en otras palabras es un microcomputador con funciones especiales. En la figura 11.7.1 se indica la estructura interna típica de un microcontrolador.

Figura 11.7.1. Estructura típica de un microcontrolador
Estos dispositivos generalmente incluyen variedad de funciones especiales que se pueden utilizar gracias a los dispositivos internos incluidos dentro de ellos. Entre las características mas relevantes de un microcontrolador, se pueden enunciar las siguientes:Los microcontroladores se pueden encontrar en varias aplicaciones que se relacionen con medida, almacenamiento, control, cálculo entre otras. También se pueden encontrar dentro de los teclados, módems, impresoras y otros periféricos. Como se puede notar los microcontroladores son dispositivos muy versátiles que pueden ser utilizados en muchas aplicaciones, donde todo el potencial se encuentra en la programación.
Como seleccionar un microcontrolador
Dentro de cada familia de dispositivos, usted encontrará normalmente una selección de varios microcontroladores dependiendo de los dispositivos internos que tenga disponibles, y la capacidad de memoria de programa y datos.
Los microcontroladores también se especifican por la cantidad de bits que pueden procesar por unidad de tiempo. Un número alto de bits indica que se trata de un dispositivo rápido y de altas prestaciones. Los microcontroladores de 8 bits son muy populares y se emplean en proyectos simples, sin embargo se encuentran arquitecturas que manejan hasta 32 bits, para aplicaciones más complejas.
El consumo de potencia es otra especificación que se debe tener en cuenta, sobre todo para sistemas alimentados por baterías. Los Chips normalmente son fabricados con tecnología CMOS debido al consumo bajo que ofrece. Algunos de estos dispositivos CMOS tienen disponible un estado de espera o modo "sleep", como el de los compuatdores cuando se suspenden, el cual limita el consumo de corriente en unos cuantos microamperios cuando los circuitos se encuentran inactivos. Usando este modo de funcionamiento, el consumo de potencia puede ser reducido cuando se da espera a la entrada de datos durante la ejecución de un programa.
Microcontroladores disponibles en el mercado
En esta sección se describen algunos microcontroladores populares que pueden ser empleados para infinidad de aplicaciones. Lo más recomendable en la selección de un microcontrolador es tener disponible un buen juego de herramientas de desarrollo y que su costo no sea tan elevado, además de ello también es importante tener acceso a la documentación del dispositivo para conocer su arquitectura y funciones. Para iniciarse en la programación de estos dispositivos generalmente son recomendables los microcontroladores de INTEL, MOTOROLA y MICROCHIP entre otros, de los cuales se consiguen con facilidad sus herramientas de desarrollo y documentación. A continuación de dará una breve descripción de los dispositivos de cada una de estas Marcas.
FAMILIA 805X, 80186 - INTEL
Los microcontroladores de la serie 8051, son la segunda generación después del 8048. Este dispositivo es muy poderoso y fácil para programar. Tiene arquitectura Harvard, es decir, que los la memoria de datos y programa se encuentran por separado en su estructura. La memoria del programa es de 64K y la memoria de datos es de 128 bytes y 256 bytes para los 8052. Hay disponible gran cantidad de software de desarrollo para los microcontroladores de esta familia que puede ser encontrado en Internet.
La tercera generación de estos microcontroladores son los de la familia 80C196, los cuales manejan palabras de 16 bits. Entre las principales características de estos dispositivos se pueden enumerar las siguientes: efectúan operaciones de multiplicación y división el hardware multiplica y divide, 6 modos de direccionamiento, Sistema de E/S de alta velocidad, Conversor A/D, módulo de comunicación serial, 8 fuentes de interrupción, generador de PWM, Watchdog Timer.
Existe también el microcontrolador 80386 EX, el cual tiene toda la potencialidad de un procesador 80386 pero con dispositivos adicionales que lo convierten en un microcontrolador muy potente y versátil. Este dispositivo tiene puerto serial, modos de ahorro de energía, contadores y temporizadores, memoria DRAM y fuentes de interrupción.
FAMILIA 68HC11 - MOTOROLA
El 68HC11 es un microcontrolador de 8 bits. Este microcontrolador tiene bus de direcciones interno de 16 bits con un juego de instrucciones similar al de sus predecesores de las familias 6801, 6805 y 6809. La arquitectura de estos microcontroladores es Von-Newman, es decir, que las direcciones y los datos comparten el mismo espacio en memoria. Dependiendo de la variedad, los 68HC11 tienen EEPROM incorporada, RAM, entradas y salidas digitales, temporizadores, conversor A/D, generador de PWM, contadores de pulsos, puerto de comunicaciones seriales sincrónicas y asincrónicas, entre otras funciones.
PIC16C - MICROCHIP
Los microcontroladores de Microchip fueron los primeros dispositivos RISC. RISC significa que el dispositivo tiene un número reducido de instrucciones, lo cual implica simplicidad en su arquitectura y bajo costo. Aunque estos microcontroladores tienen pocas instrucciones (33 para el PIC16CXX) en la actualidad son muy utilizados por su facilidad de programación y costo reducido.
Estos dispositivos son de arquitectura Harvard, por lo cual teien buses de datos y direcciones separados. Los beneficios que tiene este dispositivo frente a los demás es su sencillez, lo cual permite fabricarlo en chips muy pequeños, con la ventaja adicional de consumir muy poca energía.
Estos dispositivos son muy populares y generalmente se encuentran en aplicaciones en revistas de electrónica e Internet. Actualmente existen varias familias de este microcontrolador entre las cuales se pueden destacar la PIC16C5X, PIC16CXX, y la PIC17CXX, que también se pueden conseguir con memoria Flash en las familias PIC16FXXX