Sunteți pe pagina 1din 34

Microcontroladores

ndice de contenidos

Microcontroladores o ndice de contenidos o Introduccin o Que es un microcontrolador Controlador y microcontrolador o Aplicaciones de los microcontroladores o El mercado de los microcontroladores o Recursos comunes Arquitectura bsica El procesador o CPU Memoria Puertos de Entrada y Salida Reloj principal o Recursos especiales Temporizadores o "Timers" Perro guardin o "Watchdog" Proteccin ante fallo de alimentacin o "Brownout" Estado de reposo de bajo consumo Conversor A/D (CAD) Conversor D/A (CDA) Comparador analgico Modulador de anchura de impulsos o PWM Puertos de comunicacin o Herramientas de desarrollo Paquetes IDE o Qu microcontrolador emplear? Elegir un tipo o familia de microcontroladores Elegir un modelo concreto de microcontrolador Fabricantes y modelos de microcontroladores o Los microcontroladores PIC o Resea histrica sobre los PIC

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.2

Introduccin

Desde la invencin del circuito integrado, el desarrollo constante de la electrnica digital ha dado lugar a dispositivos cada vez ms complejos. Entre ellos los microprocesadores y los microcontroladores. El objetivo principal de esta prctica es que el alumno logre un entendimiento bsico de los microcontroladores y obtenga los conocimientos necesarios para la programacin de estos dispositivos y para el diseo de sistemas digitales y/o analgicos basados en ellos. Se pretende explicar conceptos cuya vigencia se mantendr en un periodo mas o menos largo, centrndose en la familia de microcontroladores PIC16, concretamente en el PIC16F84, por que existe mucha informacin, es fcil de encontrar y barato. Limitarse a un tipo de PIC no se considera importante, ya que si se comprende bien un microcontrolador, los dems pueden aprenderse con facilidad partiendo del primero. Adems, el estudio de un microcontrolador particular elimina la posibilidad de una presentacin superficial o confusa y permite enfrentarse a problemas reales en la prctica. Para estar al tanto de las innovaciones se recomienda que se mantenga en contacto con la pagina web de Microchip Technology, http://www.microchip.com, solo as se podr obtener un conocimiento completo y actualizado, tanto de los aspectos que aqu se tratan, como de los nuevos que vayan surgiendo. La forma de estructurar el tema responde a la experiencia de que, para quien por primera vez estudia microcontroladores, resulta ms sencillo aprender primero lo referente a la construccin interna del dispositivo y la arquitectura general de los microcontroladores y una vez entendido pasar entonces a los detalles.

Que es un microcontrolador

Los microcontroladores estn conquistando el mundo. Estn presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el funcionamiento de los ratones y teclados de los computadores, en los telfonos, en los hornos microondas y los televisores de nuestro hogar. Pero la invasin acaba de comenzar y el siglo XXI ser testigo de la conquista masiva de estos diminutos computadores, que gobernarn la mayor parte de los aparatos que fabriquemos y usamos los humanos.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.3

Controlador y microcontrolador Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno elctrico dispone de un sensor que mide constantemente su temperatura interna y acta sobre las resistencias para mantener la temperatura dentro del rango establecido. Aunque el concepto de controlador ha permanecido invariable a travs del tiempo, su implementacin fsica ha variado frecuentemente. Hace tres dcadas, los controladores electrnicos se construan exclusivamente con componentes de lgica discreta, posteriormente se emplearon los microprocesadores, que se rodeaban con chips de memoria y E/S sobre una tarjeta de circuito impreso. En la actualidad, todos los elementos del controlador se han podido incluir en un solo circuito integrado, el cual recibe el nombre de microcontrolador. Realmente consiste en un sencillo pero completo ordenador contenido en un circuito integrado. Un microcontrolador es un circuito integrado de alta escala de integracin que incorpora la mayor parte de los elementos que configuran un controlador y que contiene todos los componentes fundamentales de un ordenador, aunque de limitadas prestaciones y que se suele destinar a gobernar una sola tarea. En su memoria slo reside un programa que controla en funcionamiento de una tarea determinada, sus lneas de entrada/salida se conectan a los sensores y actuadores del dispositivo a controlar y,

debido a su pequeo tamao, suele ir integrado en el propio dispositivo al que gobierna. Un microcontrolador componentes:

dispone

normalmente

de

los

siguientes

Procesador o CPU (Unidad Central de Proceso). Memoria RAM para contener los datos. Memoria para el programa tipo ROM/EPROM/EEPROM/Flash. Lneas de E/S para comunicarse con el exterior. Diversos mdulos para el control de perifricos (temporizadores, puertos serie y paralelo, CAD: Conversores Analgico/Digital, CDA: Conversores Digital/Analgico, etc.). Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema. un

Los productos que para su regulacin incorporan microcontrolador disponen de las siguientes ventajas:

Aumento de prestaciones: un mayor control sobre un determinado elemento representa una mejora considerable en el mismo. Aumento de la fiabilidad: al reemplazar el microcontrolador por un elevado nmero de elementos disminuye el riesgo de averas y se precisan menos ajustes. Reduccin del tamao en el producto acabado: La integracin del microcontrolador en un circuito integrado disminuye el volumen, la mano de obra y los stocks. Mayor flexibilidad: las caractersticas de control estn programadas por lo que su modificacin slo necesita cambios en el programa de instrucciones.

Debido a su reducido tamao es posible montar el controlador en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de controlador empotrado (embedded controller).

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.4

Aplicaciones de los microcontroladores

Si slo se dispusiese de un modelo de microcontrolador, ste debera tener muy potenciados todos sus recursos para poderse adaptar a las exigencias de las diferentes aplicaciones. Esta potenciacin supondra en muchos casos un despilfarro. En la prctica cada fabricante de microcontroladores oferta un elevado nmero de modelos diferentes, desde los ms sencillos hasta los ms poderosos. Es posible seleccionar la capacidad de las memorias, el nmero de lneas de E/S, la cantidad y potencia de los elementos auxiliares, la velocidad de funcionamiento, etc. Por todo ello, un aspecto muy destacado del diseo es la seleccin del microcontrolador a utilizar. Cada vez existen ms productos que incorporan un microcontrolador con el fin de aumentar sustancialmente sus prestaciones, reducir su tamao y coste, mejorar su fiabilidad y disminuir el consumo. Algunos fabricantes de microcontroladores superan el milln de unidades de un modelo determinado producidas en una semana. Este dato puede dar una idea de la masiva utilizacin de estos componentes. Los microcontroladores estn siendo empleados en multitud de sistemas presentes en nuestra vida diaria, como pueden ser juguetes, horno microondas, frigorficos, televisores, ordenadores, impresoras, mdems, el sistema de arranque de nuestro coche, etc. Y otras aplicaciones con las que seguramente no estaremos tan familiarizados como instrumentacin electrnica, control de sistemas en una nave espacial, etc. Una aplicacin tpica podra emplear varios microcontroladores para controlar pequeas partes del sistema. Estos pequeos controladores podran comunicarse entre ellos y con un procesador central, probablemente ms potente, para compartir la informacin y coordinar sus acciones, como, de hecho, ocurre ya habitualmente en cualquier PC. Los microcontroladores se encuentran por todas partes:

Sistemas de comunicacin: en grandes automatismos como centrales y en tlefonos fijos, mviles, fax, etc. Electrodomsticos: lavadoras, hornos, frigorficos, lavavajillas, batidoras, televisores, vdeos, reproductores DVD, equipos de msica, mandos a distancia, consolas, etc. Industria informtica: Se encuentran en casi todos los perifricos; ratones, teclados, impresoras, escner, etc.

Automocin: climatizacin, seguridad, ABS, etc. Industria: Autmatas, control de procesos, etc Sistemas de supervisin, vigilancia y alarma: ascensores, calefaccin, aire acondicionado, alarmas de incendio, robo, etc. Otros: Instrumentacin, electromedicina, tarjetas (smartcard), sistemas de navegacin, etc.

La distribucin de las ventas segn su aplicacin es la siguiente:


Una tercera parte se absorbe en las aplicaciones relacionadas con los ordenadores y sus perifricos. La cuarta parte se utiliza en las aplicaciones de consumo (electrodomsticos, juegos, TV, vdeo, etc.) El 16% de las ventas mundiales se destin al rea de las comunicaciones. Otro 16% fue empleado en aplicaciones industriales. El resto de los microcontroladores vendidos en el mundo, aproximadamente un 10% fueron adquiridos por las industrias de automocin.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.5

Tambin los modernos microcontroladores de 32 bits van afianzando sus posiciones en el mercado, siendo las reas de ms

inters el procesamiento de imgenes, las comunicaciones, las aplicaciones militares, los procesos industriales y el control de los dispositivos de almacenamiento masivo de datos. Ejemplo de aplicacin de un microcontrolador en el automvil:

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.6

El mercado de los microcontroladores


Aunque en el mercado de la microinformtica la mayor atencin la acaparan los desarrollos de los microprocesadores, lo cierto es que se venden cientos de microcontroladores por cada uno de aqullos. Produccin mundial de microcontroladores por ao:

Existe una gran diversidad de microcontroladores. Quiz la clasificacin ms importante sea entre microcontroladores de 4, 8, 16 32 bits. Aunque las prestaciones de los microcontroladores de 16 y 32 bits son superiores a los de 4 y 8 bits, la realidad es que los microcontroladores de 8 bits dominan el mercado y los de 4 bits se resisten a desaparecer. La razn de esta tendencia es que los microcontroladores de 4 y 8 bits son apropiados para la gran mayora de las aplicaciones, lo que hace absurdo emplear micros ms potentes y consecuentemente ms caros. Uno de los sectores que ms tira del mercado del microcontrolador es el mercado automovilstico. De hecho, algunas de las familias de microcontroladores actuales se desarrollaron pensando en este sector, siendo modificadas posteriormente para adaptarse a sistemas ms genricos. El mercado del automvil es adems uno de los ms exigentes: los componentes electrnicos deben operar bajo condiciones extremas de vibraciones, choques, ruido, etc. y seguir siendo fiables. El fallo de cualquier componente en un automvil puede ser el origen de un accidente.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.7

En cuanto a las tcnicas de fabricacin, cabe decir que prcticamente la totalidad de los microcontroladores actuales se fabrican con tecnologa CMOS (Complementary Metal Oxide Semiconductor). Esta tecnologa supera a las tcnicas anteriores por su bajo consumo y alta inmunidad al ruido. Ms adelante, en el apartado Qu microcontrolador emplear? se mostrar una tabla con las distintas familias de algunos fabricantes con su direccin en Internet y algunos datos.

Recursos comunes
Al estar todos los microcontroladores en un solo circuito integrado, su estructura fundamental y sus caractersticas bsicas son muy parecidas. Todos deben disponer de los bloques esenciales Procesador, memoria de datos y de instrucciones, lneas de E/S, oscilador de reloj y mdulos controladores de perifricos. Sin embargo, cada fabricante intenta enfatizar los recursos ms idneos para las aplicaciones a las que se destinan preferentemente. En este apartado se hace un recorrido de todos los recursos que se hallan en todos los microcontroladores describiendo las diversas alternativas y opciones que pueden encontrarse segn el modelo seleccionado. Arquitectura bsica Aunque inicialmente todos los microcontroladores adoptaron la arquitectura clsica de von Neumann, en el momento presente se impone la arquitectura Harvard.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.9

La arquitectura de von Neumann se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones de forma indistinta. A dicha memoria se accede a travs de un sistema de buses nico (direcciones, datos y control) mientras que la arquitectura

Harvard dispone de dos memorias independientes, una que contiene slo instrucciones y otra slo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultneamente en ambas memorias.

Los microcontroladores PIC responden a la arquitectura Harvard. El procesador o CPU Es el elemento ms importante del microcontrolador y determina sus principales caractersticas, tanto a nivel hardware como software. Se encarga de direccionar la memoria de instrucciones, recibir el cdigo OP de la instruccin en curso, su decodificacin y la ejecucin de la operacin que implica la instruccin, as como la bsqueda de los operandos y el almacenamiento del resultado. Existen tres orientaciones en cuanto funcionalidad de los procesadores actuales.

la

arquitectura

CISC: Un gran nmero de procesadores usados en los microcontroladores estn basados en la filosofa CISC (Computadores de Juego de Instrucciones Complejo). Disponen de ms de 80 instrucciones mquina en su repertorio, algunas de las cuales son muy sofisticadas y potentes, requiriendo muchos ciclos para su ejecucin. Una ventaja de los procesadores CISC es que ofrecen al programador instrucciones complejas que actan como macros. RISC: Tanto la industria de los computadores comerciales como la de los microcontroladores estn decantndose hacia la filosofa

RISC (Computadores de Juego de Instrucciones Reducido). En estos procesadores el repertorio de instrucciones mquina es muy reducido y las instrucciones son simples y, generalmente, se ejecutan en un ciclo. La sencillez y rapidez de las instrucciones permiten optimizar el hardware y el software del procesador.

SISC: En los microcontroladores destinados a aplicaciones muy concretas, el juego de instrucciones, adems de ser reducido, es "especfico", o sea, las instrucciones se adaptan a las necesidades de la aplicacin prevista. Esta filosofa se ha bautizado con el nombre de SISC (Computadores de Juego de Instrucciones Especfico).

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.10

Memoria En los microcontroladores la memoria de instrucciones y datos est integrada en el propio circuito integrado. Una parte debe ser no voltil, tipo ROM, y se destina a contener el programa de instrucciones que gobierna la aplicacin. Otra parte de memoria ser tipo RAM, voltil, y se destina a guardar las variables y los datos. Hay dos peculiaridades que diferencian a los microcontroladores de los PC's: 1. No existen sistemas de almacenamiento masivo como disco duro o disquetes. 2. Como el microcontrolador slo se destina a una tarea en la memoria de programa, slo hay que almacenar un nico programa de trabajo. La memoria de datos (RAM) en estos dispositivos es de poca capacidad pues slo debe contener las variables y los cambios de informacin que se produzcan en el transcurso del programa. Por otra parte, como slo existe un programa activo, no se requiere guardar una copia del mismo en la RAM pues se ejecuta directamente desde la memoria de programa (ROM). El usuario de PC est habituados a manejar Megabytes de memoria, pero los diseadores con microcontroladores trabajan con capacidades

de memoria de programa de 512 bytes, 1K, 2K (hasta unos 64K) y de RAM de 20 bytes, 68 bytes, 512 bytes (hasta unos 4K). Segn el tipo de microcontroladores, la diferente. Se describen se pueden encontrar en 1. ROM con mscara Es una memoria no voltil de slo lectura cuyo contenido se graba durante la fabricacin del chip. Mscara viene de la forma cmo se fabrican los circuitos integrados. Estos se fabrican en obleas que contienen varias decenas de chips. Estas obleas se obtienen a partir de procesos fotoqumicos, donde se impregnan capas de silicio y oxido de silicio, y segn convenga, se erosionan al exponerlos a la luz. Como no todos los puntos han de ser erosionados, se sita entre la luz y la oblea una mscara con agujeros, de manera que donde deba incidir la luz, esta pasar. Con varios procesos similares pero ms complicados se consigue fabricar los transistores y diodos que componen un circuito integrado. El elevado coste del diseo de la mscara slo hace aconsejable el empleo de los microcontroladores con este tipo de memoria cuando se precisan cantidades superiores a varios miles de unidades. 2. OTP El microcontrolador contiene una memoria no voltil de slo lectura "programable una sola vez" por el usuario. OTP (One Time Programmable). Es el usuario quien puede escribir el programa en el chip mediante un sencillo grabador controlado por un programa desde un PC. La versin OTP es recomendable cuando es muy corto el ciclo de diseo del producto, o bien, en la construccin de prototipos y series muy pequeas. Tanto en este tipo de memoria como en la EPROM, se suele usar la encriptacin mediante fusibles para proteger el cdigo contenido. memoria de programa que dispongan los aplicacin y utilizacin de los mismos es las cinco versiones de memoria no voltil que los microcontroladores del mercado:

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.11

3 EPROM Los microcontroladores que disponen de memoria EPROM (Erasable Programmable Read OnIy Memory) pueden borrarse y grabarse muchas veces. La grabacin se realiza, como en el caso de los OTP, con un grabador gobernado desde un PC. Si, posteriormente, se desea borrar el contenido, disponen de una ventana de cristal en su superficie por la que se somete a la EPROM a rayos ultravioleta durante varios minutos. Las cpsulas son de material cermico y son ms caros que los microcontroladores con memoria OTP que estn hechos con material plstico. Hoy da se utilizan poco, siendo sustituidas por memorias EEPROM o Flash. 4 EEPROM Se trata de memorias de slo lectura, programables y borrables elctricamente EEPROM (Electrical Erasable Programmable Read OnIy Memory). Tanto la programacin como el borrado, se realizan elctricamente desde el propio grabador y bajo el control programado de un PC. Es muy cmoda y rpida la operacin de grabado y la de borrado. No disponen de ventana de cristal en la superficie. Los microcontroladores dotados de memoria EEPROM una vez instalados en el circuito, pueden grabarse y borrarse cuantas veces se quiera sin ser retirados de dicho circuito. Para ello se usan "grabadores en circuito" que confieren una gran flexibilidad y rapidez a la hora de realizar modificaciones en el programa de trabajo. El nmero de veces que puede grabarse y borrarse una memoria EEPROM es finito, por lo que no es recomendable una reprogramacin continua. Hoy da estn siendo sustituidas por memorias de tipo Flash. Se va extendiendo en los fabricantes la tendencia de incluir una pequea zona de memoria EEPROM en los circuitos programables para guardar y modificar cmodamente una serie de parmetros que adecuan el dispositivo a las condiciones del entorno. Este tipo de memoria es relativamente lenta. 5 FLASH

Se trata de una memoria no voltil, de bajo consumo, que se puede escribir y borrar. Funciona como una ROM y una RAM pero consume menos y es ms pequea. A diferencia de la ROM, la memoria FLASH es programable en el circuito. Es ms rpida y de mayor densidad que la EEPROM. La alternativa FLASH est recomendada frente a la EEPROM cuando se precisa gran cantidad de memoria de programa no voltil. Es ms veloz y tolera ms ciclos de escritura/borrado. Son idneas para la enseanza y la Ingeniera de diseo. Las memorias EEPROM y FLASH son muy tiles al permitir que los microcontroladores que las incorporan puedan ser reprogramados "en circuito", es decir, sin tener que sacar el circuito integrado de la tarjeta. As, un dispositivo con este tipo de memoria incorporado al control del motor de un automvil permite que pueda modificarse el programa durante la rutina de mantenimiento peridico, compensando los desgastes y otros factores tales como la compresin, la instalacin de nuevas piezas, etc. La reprogramacin del microcontrolador puede convertirse en una labor rutinaria dentro de la puesta a punto.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.12

Puertos de Entrada y Salida La principal utilidad de las patillas que posee la cpsula que contiene un microcontrolador es soportar las lneas de E/S que comunican al computador interno con los perifricos exteriores y segn los controladores de perifricos que posea cada modelo de microcontrolador, se destinan a proporcionar el soporte a las seales de entrada, salida y control. Todos los microcontroladores destinan algunas de sus patillas a soportar lneas de E/S de tipo digital, esto es, todo o nada. Por lo general, estas lneas se agrupan de ocho en ocho formando Puertos. Las lneas digitales de los Puertos pueden configurarse como Entrada o como Salida cargando un 1 un 0 en el bit correspondiente de un registro destinado a su configuracin. Reloj principal

Todos los microcontroladores disponen de un circuito oscilador que genera una onda cuadrada de alta frecuencia, que configura los impulsos de reloj usados en la sincronizacin de todas las operaciones del sistema. Esta seal del reloj es el motor del sistema y la que hace que el programa y los contadores avancen. Generalmente, el circuito de reloj est incorporado en el microcontrolador y slo se necesitan unos pocos componentes exteriores para seleccionar y estabilizar la frecuencia de trabajo. Dichos componentes suelen consistir en un cristal de cuarzo junto a elementos pasivos o bien un resonador cermico o una red R-C. Aumentar la frecuencia de reloj supone disminuir el tiempo en que se ejecutan las instrucciones pero lleva aparejado un incremento del consumo de energa y de calor generado.

Recursos especiales
Cada fabricante oferta numerosas versiones de una arquitectura bsica de microcontrolador. En algunas ampla las capacidades de las memorias, en otras incorpora nuevos recursos, en otras reduce las prestaciones al mnimo para aplicaciones muy simples, etc. La labor del diseador es encontrar el modelo mnimo que satisfaga todos los requerimientos de su aplicacin. De esta forma, minimizar el coste, el hardware y el software. Los principales recursos microcontroladores son:

especficos

que

incorporan

los

Temporizadores o "Timers". Perro guardin o "Watchdog". Proteccin ante fallo de alimentacin o "Brownout". Estado de reposo o de bajo consumo. Conversor A/D. Conversor D/A. Comparador analgico. Modulador de anchura de impulsos o PWM. Puertos de comunicacin.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.13

Temporizadores o "Timers" Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos que suceden en el exterior (contadores). Para la medida de tiempos se carga un registro con el valor adecuado y a continuacin dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj o algn mltiplo hasta que se desborde y llegue a 0, momento en el que se produce un aviso. Cuando se desean contar acontecimientos que se materializan por cambios de nivel o flancos en alguna de las patillas del microcontrolador, el mencionado registro se va incrementando o decrementando al ritmo de dichos impulsos. Perro guardin o "Watchdog" Cuando un ordenador personal se bloquea por un fallo del software u otra causa, se pulsa el botn del reset y se reinicializa el sistema. En la mayora de los casos y a diferencia de un ordenador personal, un microcontrolador funciona sin el control de un supervisor y de forma continuada las 24 horas del da y 365 das al ao. El Perro guardin consiste en un temporizador que, cuando se desborda y pasa por 0, provoca un reset automticamente en el sistema. Se debe disear el programa de trabajo que controla la tarea de forma que refresque o inicialice al Perro guardin antes de que provoque el reset. Si falla el programa o se bloquea, el programa no refrescar al Perro guardin y, al completar su temporizacin, provocar el reset del sistema. Proteccin ante fallo de alimentacin o "Brownout" Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentacin (VDD) es inferior a un voltaje mnimo ("brownout"). Mientras el voltaje de alimentacin sea inferior al de brownout el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor. Esto es muy til para evitar datos errneos por transiciones y ruidos en la lnea de alimentacin.

Estado de reposo de bajo consumo Son abundantes las situaciones reales de trabajo en que el microcontrolador debe esperar, sin hacer nada, a que se produzca algn acontecimiento externo que le ponga de nuevo en funcionamiento. Para ahorrar energa, (factor clave en los aparatos porttiles), los microcontroladores disponen de una instruccin especial (SLEEP en los PIC), que les pasa al estado de reposo o de bajo consumo, en el cual los requerimientos de potencia son mnimos. En dicho estado se detiene el reloj principal y se "congelan" sus circuitos asociados, quedando sumido en un profundo "sueo" el microcontrolador. Al activarse una interrupcin ocasionada por el acontecimiento esperado, el microcontrolador se despierta y reanuda su trabajo. Para hacernos una idea, esta funcin es parecida a la opcin de Suspender en el men para apagar el equipo (en aquellos PCs con administracin avanzada de energa).

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.14

Conversor A/D (CAD) Los microcontroladores que incorporan un Conversor A/D (Analgico/Digital) pueden procesar seales analgicas, tan abundantes en las aplicaciones. Suelen disponer de un multiplexor que permite aplicar a la entrada del CAD diversas seales analgicas desde las patillas del circuito integrado. Conversor D/A (CDA) Transforma los datos digitales obtenidos del procesamiento del computador en su correspondiente seal analgica que saca al exterior por una de las patillas de la cpsula. Existen muchos dispositivos de salida que trabajan con seales analgicas. Comparador analgico Algunos modelos de microcontroladores disponen internamente de un Amplificador Operacional que acta como comparador entre una seal fija de referencia y otra variable que se aplica por una de las patillas de la cpsula. La salida del comparador proporciona un nivel lgico 1 0 segn una seal sea mayor o menor que la otra.

Tambin hay modelos de microcontroladores con un mdulo de tensin de referencia que proporciona diversas tensiones de referencia que se pueden aplicar en los comparadores. Modulador de anchura de impulsos o PWM Son circuitos que proporcionan en su salida impulsos de anchura variable, que se ofrecen al exterior a travs de las patillas del encapsulado. Resulta util para sistemas de control de potencia, como por ejemplo motores. Puertos de comunicacin Con objeto de dotar al microcontrolador de la posibilidad de comunicarse con otros dispositivos externos, otros buses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otras normas y protocolos. Algunos modelos disponen de recursos que permiten directamente esta tarea, entre los que destacan:

UART, adaptador de comunicacin serie asncrona. USART, adaptador de comunicacin serie sncrona y asncrona Puerto paralelo esclavo para poder conectarse con los buses de otros microprocesadores. USB (Universal Serial Bus), el conocido bus serie para los PC. Bus I2C, que es un interfaz serie de dos hilos desarrollado por Philips. Interface SPI, un puerto serie sncrono. CAN (Controller Area Network), para permitir la adaptacin con redes de conexionado multiplexado desarrollado conjuntamente por Bosch e Intel para el cableado de dispositivos en automviles. En EE.UU. se usa el J185O. TCP/IP, ya existen microcontroladores con un adaptador de comunicacin para este protocolo.

Tanto el I2C en televisores, como el Bus CAN en automviles, fueron diseados para simplificar la circuitera que supone un bus paralelo de 8 lneas dentro de un televisor, as como para librar de la carga que supone una cantidad ingente de cables en un vehculo.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.15

Herramientas de desarrollo
Las herramientas de desarrollo estn formadas por un conjunto de programas e interfaces que permiten realizar los proyectos de la forma ms eficiente posible. Las principales herramientas de ayuda al desarrollo de sistemas basados en microcontroladores se describen a continuacin Ensamblador. La 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. Compilador. La 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, (ver www.gnu.org y www.fsf.org). Tambin puede conseguirse un compilador C GNU en binario ya construido. Por ejemplo para la arquitectura ARM puede conseguirse un compilador C GNU binario para win32 desde www.gnuarm.com, que trabaja con lnea de comandos e incluye un depurador de cdigo. Para obtener un entorno de desarrollo (IDE) para windows que pueda utilizarse con el conjunto de herramientas GNU puede utilizarse la aplicacin VIDE, que puede conseguirse en www.objectcentral.com/vide.htm. Simulador. Se trata de software que es capaz de ejecutar en un PC programas realizados para el microcontrolador. Los simuladores permiten tener un control absoluto sobre la ejecucin de un programa, siendo ideales para la depuracin de los mismos. Su gran inconveniente es que es difcil simular la entrada y salida de datos del microcontrolador. Tampoco cuentan con 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 evaluacin. Se 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 visualizadores LCD, teclados, LEDs, 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 evaluacin, aparte de permitir cargar programas y datos en la memoria del microcontrolador, puede permitir en cualquier momento realizar ejecucin paso a paso, monitorizar el estado del microcontrolador o modificar los valores almacenados los registros o en la memoria. Emuladores en circuito. Se 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. Programador. Es un dispositivo que conectado a un PC permite grabar en el microcontrolador el programa desarrollado. Algunos puede fabricarlos uno mismo (ver Programador PIC y EEPROM JDM y Programador JDMD) y resultan muy econmicos. Tambin existe software gratuito para programar no ya solo microcontroladores sino tambin otros dispositivos, como memorias (ver Programacin de PIC con ic-prog). 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", 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. Paquetes IDE Actualmente existen paquetes de software denominados "Entornos de Desarrollo Integrado", IDE, que suelen funcionar bajo Windows y que incluyen editores de texto para el ensamblador o el compilador, permiten la simulacin del programa y tambin pueden integrar el control de emuladores y programadores de dispositivos. Ejemplos de estos entornos de desarrollo son MPLAB de Microchip (ver MPLAB-IDE v6.60) que permite programar en lenguaje ensamblado y PCWH de la casa CCS que incluye un compilador C para los microcontroladores PIC de Microchip. MPLAB es gratuito y muy bueno, incluye un editor, un ensamblador y un simulador y tambin puede trabajar con compiladores y emuladores de otros fabricantes.

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.16

Qu microcontrolador emplear?

Elegir un tipo o familia de microcontroladores A la hora de decidirse en terminos generales sobre que tipo o familia de microcontroladores emplear hay que tener en cuenta varios factores, como por ejemplo:

Experiencia previa Documentacin existente Herramientas de desarrollo disponibles y su precio Precio del microcontrolador

Experiencia previa: Si ya se ha trabajado con algn microcontrolador en particular, lo mejor es ver que nuevas posibilidades ofrecen los diversos fabricantes que trabajen con ese microcontolador como ncleo. Por ejemplo, el 8051 fu muy popular hace algun tiempo, y hay muchos microcontroladores actuales que derivan de este, como pueden ser los AT89 de Atmel, MCS251 de Intel, DS8 de Maxim (Dallas), P8 de Philips y MSC12 de Texas Instruments. Lo bueno es que salvo en determinados detalles se mantiene el conjunto de instrucciones, modos de direccionamiento, nombres de registros, y en definitiva la filosofa de trabajo del 8051. Con pequeos cambios podran recuperarse programas diseados para el 8051 con estos microcontroladores. Documentacin existente: Este es un factor importante si se quiere conocer bien el tipo de microcontrolador elegido y su entorno de desarrollo. Adems, si existe una amplia literatura de aplicaciones podrn utilizarse programas y diseos ya realizados para adaptarlos a nuestras necesidades. Mediante libros especializados, revistas de electrnica y sobre todo Internet, puede encontrarse la informacin necesaria sobre cualquier microcontrolador, si bien parace que la mayor cantidad de informacin disponible corresponde a los microcontroladores PIC de Microchip. Herramientas de desarrollo disponibles y su precio: Uno de los factores que ms importancia tiene a la hora de seleccionar un microcontrolador entre todos los dems es el soporte tanto software como hardware de que dispone. Un buen conjunto de herramientas de desarrollo puede ser decisivo en la eleccin, ya que pueden suponer una ayuda inestimable en el desarrollo del proyecto. Algunos fabricantes de microcontroladores ofrecen paquetes IDE de calidad de forma completamente gratuita, como poltica para inclinarse por el uso

de sus microcontroladores. Ejemplos de ello son AVR studio de Atmel, Code Warrior de Freescale (Motorola), MPLAB de Microchip o Eclipse de Texas Instruments. Estos paquetes IDE gratuitos permiten programar en cdigo ensamblado, puesto que los compiladores de lenguaje de alto nivel (BASIC y C) no suelen ser gratis. Una forma de reducir costes en una produccin de dispositivos con microcontroladores es utilizar una nica familia de microcontroladores para optimizar el uso de las herramientas de apoyo que se van a necesitar, tales como emuladores, simuladores, ensambladores, compiladores, etc. Precio del microcontrolador: Como es lgico, los fabricantes de microcontroladores compiten duramente para vender sus productos. Para que nos hagamos una idea, para una produccin a gran o mediana escala de dispositivos que utilizan un microcontrolador, una diferencia de precio en el mismo de algunos cntimos es importante (el consumidor deber pagar adems el coste del empaquetado, el de los otros componentes, el diseo del hardware y el desarrollo del software). Elegir un modelo concreto de microcontrolador Una vez se decida que tipo o familia de microcontroladores se van a emplear hay que elegir el modelo de microcontrolador concreto para la aplicacin y resulta imprescindible analizar los requisitos de la aplicacin:

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.8

Entradas, salidas y recursos internos: Uno de los aspectos ms atractivos de los microcontroladores es que la circuitera externa puede reducirse al mnimo. Para determinar las necesidades de entradas y salidas as como los recursos del sistema es conveniente dibujar un diagrama de bloques del mismo, de tal forma que sea sencillo identificar la cantidad y tipo de seales a controlar. Habr que tener en cuenta: o Nmero de entradas y salidas necesarias. o Nmero y tamao (8, 16 32 bits) de los temporizadores necesarios.

o o o o

Necesidad de un CAD o CDA, incluyendo la resolucin y nmero de entradas. Necesidad de puertos de comunicaciones (I2C, RS232, USB, bus CAN, SPI u otros). Necesidad de una o ms salidas PWM. Necesidad de interfaces especficas como la de control LCD.

Una vez realizado este anlisis puede ser necesario aadir perifricos hardware externos. Esto puede ser una mejor opcin que utilizar un microcontrolador de altas prestaciones pero caro. Si por ejemplo necesitamos un conversor A/D (CAD) de unas determinadas caractersticas y no est disponible con la familia de microcontroladores deseada es posible utilizar un conversor externo con una interfaz I2C. Esto sirve tambin para conseguir memoria programable no volatil extra (con una EEPROM externa). Si necesitamos un puerto USB, el lugar de vernos limitados a elegir entre alguno de los modelos aparecidos mas recientemente en el mercado, podemos elegir un controlador USB externo. Por ltimo no olvidemos que tambin pueden implementarse algunos recursos por software, como una comunicacin I2C o RS232 o una salida PWM.

Velocidad y consumo: Actualmente pueden encontrarse modelos de microcontroladores que pueden utilizar velocidades de reloj de hasta 100 MHz, pero adems de eso, en la velocidad de ejecucin del programa repercute la arquitectura del microcontrolador, siendo ms rpido uno con arquitectura RISC que otro con CISC. Las velocidades altas incrementan las interferencias electromagnticas radiadas y el consumo de los microcontroladores al estar la mayora realizados con tecnologas CMOS, por lo que habr que tener en cuenta la velocidad si el consumo es importante en la aplicacin. Por todo esto el uso de velocidades altas debe reservarse para cuando sea necesario que el microcontrolador realice clculos crticos en un tiempo limitado. En ese caso debemos asegurarnos de seleccionar un dispositivo suficientemente rpido para ello. Hay que tener en cuenta que algunos productos que incorporan microcontroladores estn alimentados con bateras y su funcionamiento puede ser tan vital como activar una alarma antirrobo. Lo ms conveniente en un caso como ste puede ser que el microcontrolador est en estado de bajo consumo pero que

despierte ante la activacin de una seal (una interrupcin) y ejecute el programa adecuado para procesarla. En las situaciones donde un dispositivo se relaciona con el entorno humano suele utilizarse el modo de bajo consumo, como por ejemplo en un mando a distancia de un televisor, que la mayor parte del tiempo no est haciendo nada, de manera que cuando el usuario pulsa una tecla el microcontrolador pasa al modo normal y ejecuta las operaciones necesarias. De esta manera la duracin de la batera puede llegar casi a la vida de la misma puesto que en modo de bajo consumo un microcontrolador puede reducir 1000 veces sus necesidades de corriente comparndolo con el modo normal.

Memoria: Para determinar las necesidades de memoria de nuestra aplicacin debemos separarla en memoria voltil (RAM), memoria no voltil (ROM, Flash, etc.) y memoria no voltil modificable (EEPROM). Este ltimo tipo de memoria puede ser til para incluir informacin especfica de la aplicacin como un nmero de serie o parmetros de calibracin. El tipo de memoria a emplear vendr determinado por el volumen de ventas previsto del producto: de menor a mayor volumen ser conveniente emplear Flash, EEPROM, OTP y ROM. Los dos primeros tipos han sido pensados y diseados para ser utilizados en etapas de desarrollo o en pequeas series, para una produccin en masa a pequea escala es preferible utilizar el tipo OTP (que puede programarse como los dos tipos anteriores pero no se puede borrar y es normalmente ms barato). El ltimo tipo, ROM, necesita ser programado mediante una mscara por el frabicante de manera que slo es prctico para cuando se necesiten varios miles de dispositivos idnticos. Tambin debemos tener en cuenta que no siempre hay versiones con diferentes tipos de memoria para un modelo de microcontrolador en particular. En cuanto a la cantidad de memoria necesaria puede ser necesario realizar una versin preliminar de la aplicacin y a partir de ella hacer una estimacin de cunta memoria voltil y no voltil es necesaria y si es conveniente disponer de memoria no voltil modificable. Ancho de palabra: El criterio de diseo debe ser seleccionar el microcontrolador de menor ancho de palabra que satisfaga los requerimientos de la aplicacin. Los modelos de 4 bits han

desaparecido prcticamente del mercado de manera que utilizar un microcontrolador de 8 bits supone la mejor eleccin si el programa a desarrollar slo controla unas pocas entradas y salidas y no utiliza clculos complejos ni accede a grandes bases de datos. Tambin resultan perfectos si el ancho de los datos es de un byte. Los microcontroladores de 16 y 32 bits, debern utilizarse si se realizan clculos matemticos o cientficos, una gestin de Entrada/Salida potente o si se necesita un espacio de direccionamiento muy elevado. Si una aplicacin necesita un microcontrolador con ms de 8 bits, es recomendable utilizar microcontroladores de 32 bits frente a los de 16 bits dada la poca diferencia de precio que actualmente existe entre ellos. Si la velocidad no es crtica tambin puede acudirse a la utilizacin de libreras para manejar los datos de alta precisin, que resulta una alternativa ms barata y quiz suficiente.

Disponibilidad: Hay pocas cosas ms frustrantes que elegir para el desarrollo de un diseo un componente electrnico y despus de haberlo terminado comprobar que no est disponible en las tiendas de electrnica de tu ciudad. No obstante hoy es muy fcil realizar compras por medio de catlogos por correo o a travs de Internet, incluso pueden solicitarse componentes directamente al fabricante. El problema est en el nmero de dispositivos que se deben pedir. El fabricante slo nos atender si se solicitan cantidades realmente grandes, aparte de los problemas sobre licencias, permisos o aduanas que puedan surgir. La venta por catlogo mediante correo o por Internet dentro del pas resulta muy interesante apenas se compre el suficiente material como para amortizar los gastos de transporte. Las compras desde Espaa (mi caso) con otros paises de la Unin Europea como Alemania, Italia o Reino Unido no representan ningn problema. Ms problemtico resulta comprar en Estados Unidos o en otros paises que estn fuera de la Unin. (Recuerdo los problemas que tuvimos con la aduana al comprar hace unos aos una placa de desarrollo para el 8051 por correo en Israel). Teniendo en cuenta todo lo dicho resulta fundamental comprobar si existe un distribuidor que disponga de los componentes necesarios en su almacen (y en el encapsulado correcto) antes de comenzar el diseo. Tambin debemos considerar que cuanto ms popular sea el microcontrolador que elijamos menos problemas vamos a tener en este aspecto.

Diseo del circuito y de la PCB: La seleccin de un microcontrolador concreto condicionar el diseo del circuito de manera que debe tenerse en cuenta que quiz usar un microcontrolador barato encarezca el resto de componentes del diseo. Tampoco debemos olvidarnos del encapsulado, podramos elegir un determinado modelo de microcontrolador y luego encontrarnos que en lugar de venir con el tradicional encapsulado DIL slo est disponible en encapsulados PLCC o PGA, si bien siempre podremos utilizar un zcalo adecuado. Tampoco se podra trabajar manualmente con encapsulados BGA. Afortunadamente, de momento, estos problemas se dn slo con los ltimos modelos de microcontroladores con muchas patillas. En cuanto al diseo de la placa de circuito impreso (PCB) a no ser que el esquema sea simple o se afine mucho en el mismo ser necesario el uso de puentes (su uso est mal visto) o de placas de c.i. de doble cara. Si se utilizan componentes SMD conviene saber que la primera generacin de componentes SMD tiene una separacin de terminales de 1,27 milmetros que todava pueden soldarse manualmente con paciencia y una punta fina pero los ltimos circuitos SMD tienen una separacin de 0,64 milmetros paro lo cual es necesario utilizar mquinas de soldadura.

Fabricantes y modelos de microcontroladores A continuacin se muestra una relacin de algunos fabricantes y modelos de microcontroladores incluyendo su direccin en Internet, si es CISC o RISC, el nmero de bits del bus de datos y el ncleo del que deriva (8051, ARM, etc) as como si est disponible un IDE gratuito:
FABRICANTE FAMILIA ADUC8xx Analog Device www.analog.com ADUC7xx ARQUITECTUR A CISC 8 bits 8051 RISC 32 bits ARM7 CISC 8 bits 8051 IDE prog. independiente s prog. independiente s

AT89xxx Atmel www.atmel.com TS87xxx

CISC 8 bits

AVR AT91xxx EP73xxx Cirrus Logic www.cirrus.com EP93xxx Cygnal www.silabs.com C8051F HC05 HC08 HC11 HC12 HCS12 Freescale (Motorola) www.freescale.com HC16 56800 68K ColdFire MAC7100 F2MC-8 Fujitsu www.fujitsu.com F2MC-16 FR C5xxx C8xxx Infineon www.infineon.com C16xxx XC16xxx TCxxx Intel www.intel.com MCS251 MCS96/296 DS80Cxxx Maxim (Dallas) www.maxim-ic.com DS83Cxxx DS89Cxxx

RISC 8 bits RISC 16 bits ARM7/9 RISC 32 bits ARM7 RISC 32 bits ARM9 CISC 8 bits 8051 CISC 8 bits 6800 CISC 8 bits 6809 CISC 8 bits 6809 CISC 16 bits CISC 16 bits CISC 16 bits CISC 16 bits CISC 32 bits 68000 CISC 32 bits RISC 32 bits ARM7 CISC 8 bits CISC 16 bits RISC 32 bits CISC 8 bits 8051 CISC 8 bits 8051 CISC 16 bits CISC 16 bits CISC 32 bits CISC 8 bits 8051 CISC 16 bits CISC 8 bits 8051 CISC 8 bits 8051 CISC 8 bits 8051

AVR studio Code Warrior Code Warrior -

MAXQ

RISC 16 bits

MPLAB MPLAB Webench HEW HEW HEW Visual FIVE STVD 7 STVD 9 STVD 9 Eclipse -

Microchip www.microchip.com

PIC 10,12,14,16,17,1 RISC 8 bits 8 dsPIC COP8xxx RISC 16 bits CISC 8 bits CISC 16 bits RISC 16 bits CISC 8 bits 8051 CISC 16 bits RISC 32 bits ARM7 CISC 8 bits CISC 8 bits CISC 8 bits CISC 16 bits CISC 16 bits CISC 16 bits CISC 16 bits CISC 32 bits CISC 32 bits CISC 8 bits CISC 8 bits CISC 8 bits CISC 8 bits CISC 16 bits CISC 16 bits RISC 32 bits ARM7 CISC 8 bits 8051 CISC 16 bits RISC 32 bits ARM7

NS (NATIONAL SEMICONDUCTOR) www.national.com

CR16Cxxx CP3000 P8xxx

Philips www.semiconductors.philips.com

Xaxxx LPC2xxx

Rabbit Rabbit2000 Semiconductor www.rabbitsemiconductor.co Rabbit3000 m 740 H8 H8S Renesas www.renesas.com M16C 7700 H8SX Super H ST5 ST6 ST7 ST (SGS-THOMSON) www.stm.com ST9 ST9 ST10 ARM7 MSC12xxx Texas Instruments www.ti.com MSP430 TMS470

870 Toshiba chips.toshiba.com 900/900H 900/900H Ubicom (Scenix) www.ubicom.com SXxx Z8xxx Zilog www.zilog.com Z8Encore! eZ80Aclaim

CISC 8 bits CISC 16 bits CISC 32 bits RISC 8 bits CISC 8 bits Z80 CISC 8 bits Z80 CISC 8 bits Z80

Los microcontroladores PIC


Hace un tiempo, para introducirse en el mundo de microcontroladores, se empleaba principalmente el 8051 de Intel. Aspecto del 8051 en un montaje: los

Arquitectura bsica de un 8051:

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.17

Esquema mnimo de montaje para el 8051:

Sin embargo, despus de todo lo dicho, dedicaremos el resto de la documentacin a los microcontroladores PIC de Microchip, no porque

esta familia sea mejor que otras, sino porque presentan diversas caractersticas que los hacen especialmente interesantes:

Facilidad de uso. Gran cantidad de informacin disponible en libros, revistas e Internet. Herramientas de desarrollo muy asequibles. Bajo precio y fcil disponibilidad.

En muchos casos la eleccin de una versin adecuada de PIC es la mejor solucin para resolver un problema. Otras familias de microcontroladores son ms eficaces en aplicaciones concretas, especialmente si predomina una caracterstica especial. Dentro de los PIC, quiz el modelo con mayor disponibilidad (en el ao 2005) para utilizarlo en montajes y prcticas y del que existe mayor informacin es el PIC16F84A. Si bien es cierto que hoy puede sustituirse por otros modelos con mas prestaciones (recursos por hardware como puertos serie RS232 o salidas PWM) siendo incluso ms baratos (como el PIC....) no por ello deja de ser ideal para comenzar:

DISPOSITIVOS LGICOS MICROPROGRAMABLES

Microcontroladores

2.18

Esquemas mnimos de montaje para el PIC16F84:

Oscilador RC C1 de 20pF como mnimo 5K R1 100K

Resea histrica sobre los PIC


En 1965, la empresa GI cre una divisin de microelectrnica, GI Microelectronics Divisin. En 1975 dise un chip destinado a controlar E/S: el PIC (Peripheral Interface Controller) con una arquitectura en la que se basan los modelos actuales. GI Microelectronics Divisin se convirti en la empresa subsidiaria GI Microelectronics Inc. y en 1985 en una empresa independiente, la Arizona Microchip Technology. Microchip cuenta con factoras principal en Chandler y Tempe, Arizona. Tambin cuenta con centros de ensamblaje y ensayos en Taiwan y Tailandia. Para tener una idea de su alta produccin, hay que tener en cuenta que produce millnes de unidades por semana.

S-ar putea să vă placă și