u1_microcontroladores

download u1_microcontroladores

of 17

description

descripcion de los micontroladores

Transcript of u1_microcontroladores

  • Microcontroladores

    1. Arquitectura interna y externa del microcontrolador.

    1.1. Introduccin a los microcontroladores.

    Qu es un microcontrolador? Un microcontrolador es un dispositivo electrnico capaz de llevar a cabo procesos lgicos. Estos procesoso acciones son programados en lenguaje ensamblador por el usuario, y son introducidos en este a travs de unprogramador, para que desempeen una funcin electrnica. Un poco de historia: Inicialmente cuando no existan los microprocesadores las personas se ingeniaban en disear sus circuitoselectrnicos y los resultados estaban expresados en diseos que implicaban muchos componentes electrnicos yclculos matemticos. Un circuito lgico bsico requera de muchos elementos electrnicos basados en transistores,resistencias, etc, lo cual desembocaba en circuitos con muchos ajustes y fallos; pero en el ao 1971 apareciel primer microprocesador el cual origin un cambio decisivo en las tcnicas de diseo de la mayora de losequipos. Al principio se crea que el manejo de un microprocesador era para aquellas personas con un coeficienteintelectual muy alto; por lo contrario con la aparicin de este circuito integrado todo sera mucho ms fcil deentender y los diseos electrnicos serian mucho ms pequeos y simplificados. Entre los microprocesadores msconocidos tenemos el popular Z-80 y el 8085. Los diseadores de equipos electrnicos ahora tenan equipos quepodan realizar mayor cantidad de tareas en menos tiempo y su tamao se redujo considerablemente; sin embargo,despus de cierto tiempo aparece una nueva tecnologa llamada microcontrolador que simplifica aun ms el diseoelectrnico. Diferencias entre microprocesador y microcontrolador: Si has tenido la oportunidad de realizar un diseo con un microprocesador pudiste observar que dependiendodel circuito se requeran algunos circuitos integrados adicionales adems del microprocesador como por ejemplo: Memorias RAM para almacenar los datos temporalmente y memorias ROM para almacenar el programa que seencargara del proceso del equipo, un circuito integrado para los puertos de entrada y salida y finalmente undecodificador de direcciones. Un microcontrolador es un solo circuito integrado que contiene todos los elementos electrnicos que se utilizabanpara hacer funcionar un sistema basado con un microprocesador; es decir contiene en un solo integradola Unidad de Proceso, la memoria RAM, memoria ROM , puertos de entrada, salidas y otros perifricos, con laconsiguiente reduccin de espacio. El microcontrolador es en definitiva un circuito integrado que incluye todos los componentes de un computador.

  • Debido a su reducido tamao es posible montar el controlador en el propio dispositivo al que gobierna. En estecaso el controlador recibe el nombre de controlador empotrado o embebido (embeddedcontroller).

    Ventajas de un microcontrolador frente a un microprocesador Estas ventajas son reconocidas inmediatamente para aquellas personas que han trabajado con los microprocesadoresy despus pasaron a trabajar con los microcontroladores. Estas son las diferencias ms importantes: Porejemplo la configuracin mnima bsica de un microprocesador estaba constituida por un Micro de 40 Pines, Unamemoria RAM de 28 Pines, una memoria ROM de 28 Pines y un decodificador de direcciones de 18 pines; pero unmicrocontrolador incluye todo estos elementos en un solo Circuito Integrado por lo que implica una gran ventaja envarios factores: En el circuito impreso por su amplia simplificacin de circuitera, el costo para un sistema basadoen microcontrolador es mucho menor y, lo mejor de todo, el tiempo de desarrollo de su proyecto electrnico sedisminuye considerablemente.

    Estructura de un sistema abierto basado en un microprocesador. La disponibilidad de los buses en el exterior permite que se configure a la medida de la aplicacin

    El microcontrolador es un sistema cerrado. Todas las partes del procesador estn contenidas en su interior y slo salen al exterior las lneas que gobiernan los perifricos.

  • Los microcontroladores hoy da: 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 nacimiento del siglo XXI ser testigo de la conquista masiva de estos diminutos computadores, que gobernarn la mayor parte de los aparatos que fabricaremos y usamos los humanos. Cada vez existen msproductos 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, computadoras, impresoras, mdems, el sistema de arranque de nuestrocoche, 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.

    1.2. Arquitectura internadel microcontrolador.

    Arquitectura Von Neumann La arquitectura tradicional de computadoras y microprocesadores est basada en la arquitectura Von Neumann,en la cual la unidad central de proceso (CPU), est conectada a una memoria nica donde se guardan las instruccionesdel programa y los datos. El tamao de la unidad de datos o instrucciones est fijado por el ancho del busque comunica la memoria con la CPU. As un microprocesador de 8 bits con un bus de 8 bits, tendr que manejardatos e instrucciones de una o ms unidades de 8 bits (bytes) de longitud. Si tiene que acceder a una instruccino dato de ms de un byte de longitud, tendr que realizar ms de un acceso a la memoria. Y el tener un nicobus hace que el microprocesador sea ms lento en su respuesta, ya que no puede buscar en memoria una nuevainstruccin mientras no finalicen las transferencias de datos de la instruccin anterior. Resumiendo todo lo anterior,las principales limitaciones que nos encontramos con la arquitectura Von Neumann son: 1. La limitacin de la longitud de las instrucciones por el bus de datos, que hace que el microprocesador tengaque realizar varios accesos a memoria para buscar instrucciones complejas.

  • 2. La limitacin de la velocidad de operacin a causa del bus nico para datos e instrucciones que no dejaacceder simultneamente a unos y otras, lo cual impide superponer ambos tiempos de acceso.

    Arquitectura Harvard La arquitectura Harvard tiene la unidad central de proceso (CPU) conectada a dos memorias (una con las instrucciones y otra con los datos) por medio de dos buses diferentes. Una de las memorias contiene solamente lasinstrucciones del programa (Memoria de Programa), y la otra slo almacena datos (Memoria de Datos). Ambosbuses son totalmente independientes y pueden ser de distintos anchos. Para un procesador de Set de InstruccionesReducido, o RISC (Reduced Instruccin Set Computer), el set de instrucciones y el bus de memoria de programapueden disearse de tal manera que todas las instrucciones tengan una sola posicin de memoria de programa delongitud. Adems, al ser los buses independientes, la CPU puede acceder a los datos para completar la ejecucinde una instruccin, y al mismo tiempo leer la siguiente instruccin a ejecutar. Ventajas de esta arquitectura: 1. El tamao de las instrucciones no est relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instruccin ocupe una sola posicin de memoria de programa, logrando as mayorvelocidad y menor longitud de programa. 2. El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidaden cada operacin. Una pequea desventaja de los procesadores con arquitectura Harvard, es que deben poseer instrucciones especialespara acceder a tablas de valores constantes que pueda ser necesario incluir en los programas, ya que estas tablas seencontraran fsicamente en la memoria de programa (por ejemplo en la EPROM de un microprocesador).

    Arquitectura Harvard

    El microcontrolador PIC 16F84 posee arquitectura Harvard, con una memoria de datos de 8 bits, y una memoria de programa de 14 bits.

  • Estructura y elementos de los microcontroladores A continuacin pasamos a describir los elementos ms comunes en todo tipo de microcontroladores y sistemas: El procesador 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 a la arquitectura y funcionalidadde los procesadores actuales: CISC:Complexinstruction set computing Un gran nmero de procesadores usados en los microcontroladores estn basados en la filosofa CISC (Computadoresde 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 delos procesadores CISC es que ofrecen al programador instrucciones complejas que actan como macros, es decir,que si las tuvisemos que implementar con instrucciones bsicas, acabaramos con dolor de cabeza. RISC:ReducedInstructionSetComputer 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 repertoriode 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:SimpleInstruction Set Computing 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 filosofase ha bautizado con el nombre de SISC (Computadores de Juego de Instrucciones Especfico). Memoria En los microcontroladores la memoria de instrucciones y datos est integrada en el propio chip. Una parte debeser no voltil, tipo ROM, y se destina a contener el programa de instrucciones que gobierna la aplicacin. Otraparte 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 computadores personales: No existen sistemas de almacenamiento masivo como disco duro o disquetes. Como el microcontrolador slose destina a una tarea en la memoria ROM, slo hay que almacenar un nico programa de trabajo.

  • La RAM en estos dispositivos es de poca capacidad pues slo debe contener las variables y los cambios deinformacin que se produzcan en el transcurso del programa. Por otra parte, como slo existe un programa activo,no se requiere guarda ni una copia del mismo en la RAM pues se ejecuta directamente desde la ROM. Los usuarios de computadores personales estn habituados a manejar Megabytes de memoria, pero, los diseadores con microcontroladores trabajan con capacidades de ROM comprendidas entre 512 bytes y 8 k bytes yde RAM comprendidas entre 20 y 512 bytes. Segn el tipo de memoria ROM que dispongan los microcontroladores, la aplicacin y utilizacin de los mismoses diferente. Se describen las cinco versiones de memoria no voltil que se pueden encontrar en los microcontroladoresdel mercado. ROM con mscara: Es una memoria no voltil de slo lectura cuyo contenido se graba durante la fabricacin del chip. Si tenemosidea de cmo se fabrican los circuitos integrados, sabremos de donde viene el nombre. Estos se fabrican enobleas que contienen varias decenas de chips. Estas obleas se fabrican a partir de procesos fotoqumicos, dondese impregnan capas de silicio y oxido de silicio, y segn convenga, se erosionan al exponerlos a la luz. Como notodos los puntos han de ser erosionados, se sita entre la luz y la oblea una mscara con agujeros, de manera quedonde deba incidir la luz, esta pasar. Con varios procesos similares pero ms complicados se consigue fabricarlos transistores y diodos micromtricos que componen un chip. El elevado coste del diseo de la mscara slo hace aconsejable el empleo de losmicrocontroladores con este tipo de memoria cuando se precisan cantidades superiores a varios miles de unidades. 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 sencillograbador controlado por un programa desde un PC. La versin OTP es recomendable cuando es muy corto el ciclode diseo del producto, o bien, en la construccin de prototipos y series muy pequeas. Tanto en este tipo dememoria como en la EPROM, se suele usar la encriptacin mediante fusibles para proteger el cdigo contenido. EPROM Los microcontroladores que disponen de memoria EPROM (ErasableProgrammableReadOnIyMemory)pueden borrarse y grabarse muchas veces. La grabacin se realiza, como en el caso de los OTP, con un grabadorgobernado desde un PC. Si, posteriormente, se desea borrar el contenido, disponen de una ventana de cristal ensu superficie por la que se somete a la EPROM a rayos ultravioleta durante varios minutos. Las cpsulas son dematerial cermico y son ms caros que los microcontroladores con memoria OTP que estn hechos con materialplstico.

  • EEPROM, E2PROM o E2PROM Se trata de memorias de slo lectura, programables y borrables elctricamente EEPROM (ElectricalErasableProgrammableReadOnIyMemory). Tanto la programacin como el borrado, se realizan elctricamente desdeel propio grabador y bajo el control programado de un PC. Es muy cmoda y rpida la operacin de grabado yla de borrado. No disponen de ventana de cristal en la superficie. Los microcontroladores dotados de memoriaEEPROM una vez instalados en el circuito, pueden grabarse y borrarse cuantas veces se quiera sin ser retiradosde dicho circuito. Para ello se usan "grabadores en circuito"que confieren una gran flexibilidad y rapidez a lahora de realizar modificaciones en el programa de trabajo. El nmero de veces que puede grabarse y borrarse unamemoria EEPROM es finito, por lo que no es recomendable una reprogramacin continua. Son muy idneos parala enseanza y la Ingeniera de diseo. Se va extendiendo en los fabricantes la tendencia de incluir una pequeazona de memoria EEPROM en los circuitos programables para guardar y modificar cmodamente una serie deparmetros que adecuan el dispositivo a las condiciones del entorno. Este tipo de memoria es relativamente lenta. FLASH: Se trata de una memoria no voltil, de bajo consumo, que se puede escribir y borrar. Funciona como una ROM yuna RAM pero consume menos y es ms pequea. A diferencia de la ROM, la memoria FLASH es programable enel circuito. Es ms rpida y de mayor densidad que la EEPROM. La alternativa FLASH est recomendada frente ala EEPROM cuando se precisa gran cantidad de memoria de programa no voltil. Es ms veloz y tolera ms ciclosde escritura/borrado. Las memorias EEPROM y FLASH son muy tiles al permitir que los microcontroladoresque las incorporan puedan ser reprogramados en circuito, es decir, sin tener que sacar el circuito integrado de latarjeta. As, un dispositivo con este tipo de memoria incorporado al control del motor de un automvil permite quepueda modificarse el programa durante la rutina de mantenimiento peridico, compensando los desgastes y otrosfactores tales como la compresin, la instalacin de nuevas piezas, etc. La reprogramacin del microcontroladorpuede convertirse en una labor rutinaria dentro de la puesta a punto. 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 sealdel 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 pocoscomponentes exteriores para seleccionar y estabilizar la frecuencia de trabajo. Dichos componentes suelen consistiren 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 llevaaparejado 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 amplalas capacidades de las memorias, en otras incorpora nuevos recursos, en otras reduce las prestaciones al mnimopara aplicaciones muy simples, etc. La labor del diseador es encontrar el modelo mnimo que satisfaga todos losrequerimientos de su aplicacin. De esta forma, minimizar el coste, el hardware y el software. Los principalesrecursos especficos que incorporan los microcontroladores son: Temporizadores o Timers. Perro guardin o Watchdog. Proteccin ante fallo de alimentacin o Brownout. Estado de reposo o de bajo consumo (Sleepmode). Conversor A/D (Analgico ->Digital). Conversor D/A (Digital ->Analgico). Comparador analgico. Modulador de anchura de impulsos o PWM (PulseWideModulation). Puertas de E/S digitales. Puertas de comunicacin. Temporizadores o Timers: Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos quesuceden en el exterior (contadores). Para la medida de tiempos se carga un registro con el valor adecuado y a continuacin dicho valor se va incrementandoodecrementando 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 cambiosde nivel o flancos en alguna de las patitas del microcontrolador, el mencionado registro se va incrementando odecrementando al ritmo de dichos impulsos. Bueno, con el fin de aclarar que es un registro, anticipamos que es un valor numrico en una posicin fija de memoria. Un ejemplo: esto es igual que el segundero de nuestro reloj digital, este va aumentando hasta quellega a 60 segundos, pero en la pantalla pone 00, esto quiere decir que se desborda. Pero cuando cambia da unaviso y se incrementan los minutos. En este ejemplo, el registro es el segundero; estos son fijos ya que sabemosque son los de la derecha del todo y no se van a cambiar. Perro guardin oWatchdog: Cuando el computador personal se bloquea por un fallo del software u otra causa, se pulsa el botn del reset y se reinicia el sistema. Pero un microcontrolador funciona sin el control de un supervisor y de forma continuadalas 24 horas del da. El Perro Guardin consiste en un contador que, cuando llega al mximo, provoca un reset automticamente en el sistema. Se debe disear el programa de trabajo que controla la tarea de forma que resetee al Perro Guardin de vez encuando antes de que provoque el reset. Si falla el programa o se bloquea (si cae en bucle infinito), no se refrescaral 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 aun voltaje mnimo (brownout). Mientras el voltaje de alimentacin sea inferior al de brownout el dispositivo semantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor. Esto es muy til paraevitar 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 quese produzca algn acontecimiento externo que le ponga de nuevo en funcionamiento. Para ahorrar energa, (factorclave 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. Endicho estado se detiene el reloj principal y se congelan sus circuitos asociados, quedando sumido en un profundosueo. 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 paraapagar el equipo (en aquellos PCs con administracin avanzada de energa) 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 delCAD 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 analgicaque saca al exterior por una de las patillas del chip. Existen muchos circuitos que trabajan con seales analgicas. Comparador analgico: Algunos modelos de microcontroladores disponen internamente de un Amplificador Operacional que actacomo comparador entre una seal fija de referencia y otra variable que se aplica por una de las patitas de lacpsula. La salida del comparador proporciona un nivel lgico 1 0 segn una seal sea mayor o menor quela otra. Tambin hay modelos de microcontroladores con un mdulo de tensin de referencia que proporcionadiversas 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 travsde las patitas del encapsulado. Puertos digitales de E/S: Todos los microcontroladores destinan parte de su patillaje a soportar lneas de E/S digitales. Por lo general,estas lneas se agrupan de ocho en ocho formando Puertos.Las lneas digitales de las Puertos pueden configurarse como Entrada

  • o como Salida cargando un 1 un 0 enel bit correspondiente de un registro destinado a su configuracin. Puertas de comunicacin: Con objeto de dotar al microcontrolador de la posibilidad de comunicarse con otros dispositivos externos, otrosbuses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otrasnormas y protocolos. Algunos modelos disponen de recursos que permiten directamente esta tarea, entre los quedestacan: UART, adaptador de comunicacin serie asncrona.(Ej: Puerto Serie) USART, adaptador de comunicacin serie sncrona y asncrona Puerta paralela esclava para poder conectarse con los buses de otros microprocesadores. USB (Universal Serial Bus), que es un moderno bus serie para los PC. Bus I2C, que es un interfaz serie de dos hilos desarrollado por Philips. CAN (ControllerArea Network), para permitir la adaptacin con redes de conexionado multiplexado desarrolladoconjuntamente por Bosch e Intel para el cableado de dispositivos en automviles. En EE.UU. se usa elJ185O. Tanto el I2C en televisores, como el Bus CAN en automviles, fueron diseados para simplificar la circuiteraque supone un bus paralelo de 8 lneas dentro de un televisor, as como para librar de la carga que supone unacantidad ingente de cables en un vehculo.

  • Arquitectura externa del microcontrolador.

    2.3. Puertas de Entrada y Salida Las puertas de Entrada y Salida (E/S) permiten comunicar al procesador con el mundo exterior, a travs deinterfaces, o con otros dispositivos. Estas puertas, tambin llamadas puertos, son la principal utilidad de las patas opines de un microprocesador. Segn los controladores de perifricos que posea cada modelo de microcontrolador,las lneas de E/S se destinan a proporcionar el soporte a las seales de entrada, salida y control. LA FAMILIA DE LOS PIC Introduccin Qu tienen los PIC que estn en boca de todo el mundo? En los ltimos tiempos esta familia de Microcontroladores ha revolucionado el mundo de las aplicaciones electrnicas. Tienen un don especial con el cual hanfascinado a programadores y desarrolladores. Quiz sea por su facilidad de uso,programacin, integracin, es probable que en un futuro prximo otra familia de microcontroladores le arrebate ese don. Hay que teneren cuenta que para las aplicaciones ms habituales (casi un 90dado su carcter general, otras familias de Microcontroladores son ms eficaces en aplicaciones especficas, especialmente si en ellas predomina una caractersticaconcreta, que puede estar muy desarrollada en otra familia. La Familia PIC Esta familia, desarrollada por la casa Microchip, se divide en cuatro gamas, gamas enana, baja, media y alta. Las principales diferencias entre estas gamas radica en el nmero de instrucciones y su longitud, el nmero depuertos y funciones, lo cual se refleja en el encapsulado, la complejidad interna y de programacin, y en el nmerode aplicaciones. En las prximas lneas pasamos a describir brevemente las cualidades de esta familia. Gama bajao gama enana, de 8 patas. Se trata de un grupo de PIC de reciente aparicin que ha acaparado la atencin delmercado. Su principal caracterstica es su reducido tamao, al disponer todos sus componentes de 8 patitas. Sealimentan con un voltaje de corriente continua comprendido entre 2,5 V y 5,5 V, y consumen menos de 2 mAcuando trabajan a 5 V y 4 MHz. El formato de sus instrucciones puede ser de 12 o de 14 bits y su repertorio esde 33 o 35 instrucciones, respectivamente. En la Figura 6 se muestra el diagrama de conexionado de uno de estos PIC.

  • Diagrama de conexiones de los PIC12Cxxx de la gama baja Aunque los PIC enanos slo tienen 8 patillas, pueden destinar hasta 6 como lneas de E/S para los perifricosporque disponen de un oscilador interno R-C, lo cual es una de su principales caractersticas. En la Figura 7 se presentan las principales caractersticas de los modelos de esta subfamilia, que el fabricantetiene la intencin de potenciar en un futuro prximo. Los modelos 12C5xx pertenecen a la gama baja, siendo eltamao de las instrucciones de 12 bits; mientras que los 12C6xx son de la gama media y sus instrucciones tienen14 bits. Los modelos 12F6xx poseen memoria Flash para el programa y EEPROM para los datos. Se trata de una serie de PIC de recursos limitados, pero con una de la mejores relaciones coste/prestaciones. Sus versiones estn encapsuladas con 18 y 28 patitas y pueden alimentarse a partir de una tensin de 2,5 V, lo queles hace ideales en las aplicaciones que funcionan con pilas teniendo en cuenta su bajo consumo (menos de 2 mAa 5 V y 4 MHz). Tienen un repertorio de 33 instrucciones cuyo formato consta de 12 bits. No admiten ningn tipo

    Principales caractersticas de la gama baja

    Diagrama de patas de los PIC de la gamma baja que responden a la nomenclatura PIC16C54/56de interrupcin y la Pila slo dispone de dos niveles. En la Figura 8 se muestra el diagrama de conexionado de unode estos PIC.

  • Al igual que todos los miembros de la familia PIC16/17, los componentes de la gama baja se caracterizan porposeer los siguientes recursos: Sistema PowerOnReset, Perro guardin (Watchdog o WDT), Cdigo de proteccin, Sep, etc. Sus principales desventajas o limitaciones son que la pila slo tiene dos niveles y que no admiteninterrupciones. En la Figura 9 se presentan las principales caractersticas de los modelos de esta subfamilia. Gama media. PIC16CXXX con instrucciones de 14 bits Es la gama ms variada y completa de los PIC. Abarca modelos con encapsulado desde 18 patas hasta 68,cubriendo varias opciones que integran abundantes perifricos. Dentro de esta gama se halla el famoso PIC16X84y sus variantes. En esta gama sus componentes aaden nuevas prestaciones a las que posean los de la gama baja, hacindolesms adecuados en las aplicaciones complejas. Admiten interrupciones, poseen comparadores de magnitudesanalgicas, convertidores A/D, puertos serie y diversos temporizadores. El repertorio de instrucciones es de 35, de14 bits cada una y compatible con el de la gama baja. Sus distintos modelos contienen todos los recursos que seprecisan en las aplicaciones de los microcontroladores de 8 bits. Tambin dispone de interrupciones y una Pila de8 niveles que permite el anidamiento de subrutinas. En la Figura 10 se presentan las principales caractersticas delos modelos de esta familia. En cuadrado en la gama media tambin se halla la versin PIC14C000, que soportael diseo de controladores inteligentes para cargadores de bateras, pilas pequeas, fuentes de alimentacin ininterrumpiblesy cualquier sistema de adquisicin y procesamiento de seales que requiera gestin de la energa dealimentacin. Los PIC 14C000 admiten cualquier tecnologa de las bateras como Li-Ion, NiMH, NiCd, Ph y Zinc. El temporizador TMR1 que hay en esta gama tiene un circuito oscilador que puede trabajar asncronamentey que puede incrementarse aunque el microcontrolador se halle en el modo de reposo (sleep), posibilitando laimplementacin de un reloj en tiempo real. Las lneas de E/S presentan una carga pull-up activada por software.

    Caractersticas de los modelos PIC16C(R)5X de la gama baja

  • El PIC 16F84

    El PIC16F84 es un microcontrolador a 8 bits de la familia PIC perteneciente a la

    Gama Media

    Se trata de uno de los microcontroladores ms populares del mercado actual, ideal para principiantes, debido a su arquitectura de 8 bits, 18 pines, y un conjunto de instruccionesRISC muy amigable para memorizar y fcil de entender, internamente consta de:

    Memoria Flash de programa (1K x 14 bits). Memoria EEPROM de datos (64 x 8 bits). Memoria RAM (68 registros x 8 bits). Un temporizador/contador (timer de 8 bits). Un divisor de frecuencia. Varios puertos de entrada-salida (13 pines en dos puertos, 5 pines el

    puerto A y 8 pines el puerto B).

    Otras caractersticas son:

    Manejo de interrupciones (de 4 fuentes). Perro guardin (watchdog). Bajo consumo. Frecuencia de reloj externa mxima 10MHz. (Hasta 20MHz en nuevas

    versiones). La frecuencia de reloj interna es un cuarto de la externa, lo que significa que con un reloj de 20Mhz, el reloj interno sera de 5Mhz y as pues se ejecutan 5 Millones de Instrucciones por Segundo (5 MIPS)

    No posee conversores analgicos-digital ni digital-analgicos. Pipe-line de 2 etapas, 1 para bsqueda de instruccin y otra para la

    ejecucin de la instruccin (los saltos ocupan un ciclo ms). Repertorio de instrucciones reducido (RISC), con tan solo 30

    instrucciones distintas. 4 tipos distintos de instrucciones, orientadas a byte, orientadas a bit,

    operacin entre registros, de salto.

    En los ltimos aos se ha popularizado el uso de este microcontrolador debido

    a su bajo costo y tamao. Se ha usado en numerosas aplicaciones, que van

    desde los automviles a decodificadores de televisin. Es muy popular su uso

    por los aficionados a la robtica y electrnica.

    Puede ser programado tanto en lenguaje ensamblador como en Basic y

    principalmente en C, para el que existen numerosos compiladores. Cuando se

    utilizan los compiladores Basic, es posible desarrollar tiles aplicaciones en

    tiempo rcord, especialmente dirigidas al campo domstico y educacional.

    El microcontrolador PIC 16f84 tiene 18 patillas y su distribucin es la siguiente:

  • Tiene dos puertos programables para entrada y salida que son el RAx y RBx donde RA puede ser desde RA0 hasta RA4 y RB0 hasta RB7.

    Vss es alimentacin a masa y VDD alimentacin a positivo entre +2 voltios y 6 voltios, normalmente se utiliza 5 voltios.

    MCLR es una patilla para habilitar a nivel bajo 0 voltios un reset al microcontrolador.

    OSC1 YOSC2 se utilizan para configurar internamente o por hardware exterior la frecuencia de funcionamiento del PIC desde un mnimo de 1KHZ hasta los 10 MHZ de mxima que posee el pic. Normalmente se utiliza 4MHZ aprovechando que 4 ciclos de reloj producen 1 ciclo de ejecucin de instruccin mquina, con lo que 1 instruccin se ejecutara en 1 MHZ y as poderlo tener en cuenta para calcular tiempos de retraso o espera en la ejecucin del programa.

    Este microcontrolador tiene un juego reducido de instrucciones de 32 instrucciones RISC de 14 bits cada instruccin, adems posee una estructura Harvard de manera que diferencia en sitios diferentes los datos de las instrucciones, de modo que no pierde tiempo en diferenciar si es dato o instruccin como ocurra en la estructura Von Neuman.

    A continuacion se expone un esquema de la memoria de registro y datos:

  • Podemos comprobar como la memoria est dividida en dos bancos (cada una de las columnas): banco 0 y banco 1.

    Las primeras 12 posiciones de cada banco (00h-0Bh y 80h-8Bh) estn ocupadas por los Registros de Propsito Especial (SpecialPurposeRegisters).

    Estos registros, son los encargados de controlar ciertas funciones especficas del PIC.

    Las 68 posiciones siguientes (0Ch-4Fh y 8Ch-CFh) son los denominados Registros de Propsito General, del ingls General PurposeRegisters. stos son empleados para guardar cualquier dato que necesitemos durante la ejecucin del programa.

    BANCO 0

    TMR0: es un temporizador/contador de 8 bits. Puede operar de dos modos distintos: - Temporizador: el registro incrementa su valor en cada ciclo de instruccin

  • (Fosc/4). - Contador: el registro incrementa su valor con cada impulso introducido en la patita RA4/TOSKI.

    En ambos casos, cuando el registro se desborda, es decir, llega a su valor mximo (en este caso 2^8 = 256. Como el 0 tambin se cuenta, el mximo valor sera 255), empieza de nuevo a contar a partir del 0, no sin antes informar de este evento a travs de la activacin de un flag y/o una interrupcin.

    PCL: es el contador del programa. Indica la direccin de memoria que se leer a continuacin. En algunas ocasiones, como el empleo de las tablas, el uso de este registro es imprescindible.

    STATUS: registro de 8 bits que sirve para configurar ciertos aspectos del PIC. En la siguiente figura se aprecia la disposicin de los bits de dicho registro:

    - RP0: indica el banco de memoria con el que se est trabajando. Cuando vale 0 se selecciona el Banco 0 y cuando vale 1 el Banco 1.

    PORTA: representacin de la puerta A. Cada bit representa una lnea de E/S de la puerta A:

    Como se puede comprobar, los tres bits de mayor peso no representan ninguna lnea de E/S, ya que la puerta A slo tiene 5 lneas de E/S

    PORTB: lo mismo que la puerta A, pero en este caso con 8 lneas de E/S

    BANCO 1

    TRISA: registro de 8 bits de configuracin de la puerta A. Si un bit se encuentra en 1, esa lnea de E/S se configura como entrada; si, en cambio, se encuentra a 0, se configura como salida

    TRISB: lo mismo que TRISA, pero referente a la puerta B.

    Finalmente cabe destacar el registro W, tambin conocido como registro de trabajo (del ingls work) o acumulador. Es de vital importancia ya que, entre otras, deberemos usarlo de registro puente para llevar a cabo ciertas operaciones.