Вы находитесь на странице: 1из 10

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

LECTURA 1
Qu es un Microcontrolador? Microcontroladores Un Microcontrolador es Circuito integrado o chip que incluye en su interior las tres unidades funcionales de un ordenador: CPU, Memoria y Unidades de E/S, es decir, se trata de un computador completo en un solo circuito integrado. Aunque sus prestaciones son limitadas, adems de dicha integracin, su caracterstica principal es su alto nivel de especializacin. Aunque los hay del tamao de una moneda, lo normal es que sean incluso ms pequeos, ya que, lgicamente, forman parte del dispositivo que controlan. Un microcontrolador tpico posee en su interior un generador de reloj integrado, una pequea cantidad de memoria RAM y ROM/EPROM/EEPROM. Para hacerlos funcionar todo lo que se necesita son unos pocos programas de control, alimentacin (tpicamente 3.3V o 5V) y un cristal de sincronizacin. Los microcontroladores disponen generalmente tambin de una gran variedad de dispositivos de entrada/salida, como convertidores de analgico a digital, temporizadores, UARTs y buses de interfaz serie especializados, como I2C y CAN. Los microcontroladores mas utilizados son los: AVR ARM MSP430 PIC A continuacin se detallan las principales diferencias entre ellos. ARM Los microcontroladores ARM son dispositivos de altas prestaciones, con un core RISC de 16/32bits. El mercado de los ARM es uno de los que ha crecido mas rpido en cuanto a microcontroladores se refiere. Los precios de los ARM son similares a los dispositivos de 8 bit, sin embargo proveen mucho mas poder y perifricos que cualquier dispositivo de 8 bit. Se encuentran disponibles de

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

distintos proveedores como: Texas Instruments, Atmel, Phillips, OKI, ST, Cirrus Logic, Analog Devices y otros. Muchos expertos en el tema dicen que dentro de 5 aos los ARM reemplazaran la industria ocupada por la arquitectura 8051 en la mayora de las aplicaciones. Olimex intenta proveer herramientas de desarrollo de bajo costo utilizando ARM de la mayor cantidad de proveedores posible. Este ao cubriremos 7 proveedores y tenemos mas de 40 diferentes prototipos que incorporan dispositivos ARM7 y ARM9. Lo positivo Muy rpidos: la mayora de los ARM7 corren a 60 Mhz y los ARM9 a 150Mhz+ siendo mas poderosos que los antiguos procesadores Intel 386 Bajo Consumo: Los ARM7 necesitan aproximadamente 0.5-1mA por Mhz Gran rango de perifericos: ADC,DAC,USB,SPI, UART, I2C, CAN, Ethernet, SDRAM Memoria Flash Interna: 32-512KB Memoria Ram Interna: 4-64KB Lo Negativo Complejo de utilizar para principiantes, definitivamente no es un microcontrolador con el que se puedan dar los primeros pasos para aprender sobre microcontroladores. MSP430 El microcontrolador MSP430 es de ultra bajo consumo, con un core de 16-Bit RISC. Pueden correr hasta 8 Mhz y tiene un consumo de tan solo 250uA por MIPS, lo cual lo hace perfecto para dispositivos porttiles. Lo Positivo Muy bajo consumo: 250uA por MIPS Un producto muy desarrollado con una arquitectura limpia, permite portar cdigo a otro miembro de la familia MSP430 casi sin necesidad de retoque. Disponible en bajas cantidades a travs de los distribuidores de Texas Instruments Muchas aplicaciones desarrolladas y cdigos de ejemplo.

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

Muy buen rango de perifricos: ADC y DAC de precisin, Comparadores, OAMPs, LCD Drivers, SPI, UART, DMA. Lo negativo Posee una arquitectura Von Neuman, las instrucciones se toman de 1 a 4 bytes y utilizan de 1 a 6 ciclos de reloj. PIC Los microcontroladores PIC son unos de los mas populares de 8-bit. Microchip tiene cientos de diferentes microcontroladores desde los pequeos en encapsulados SOT23 hasta los 84-PLCC. Ellos pueden correr hasta 40Mhz y ejecutar instrucciones cada 4 ciclos de reloj. Lo Positivo Son muy baratos, los dispositivos como el PIC10Fxx llegan a costar $0.40 cuando se compran en volmenes. Software de desarrollo en assembler gratuito (MPLAB) Se encuentra una gran gama de dispositivos con diferentes tamaos de memorias y cantidad de perifricos. Los puertos GPIO pueden entregar hasta 20mA lo que permite manejar LED`s y otros dispositivos directamente. Hay disponibles para rangos de temperaturas extendidos de -40 a +125C Lo Negativo Escribir un programa en assembler es un arte que no muchos dominan y puede extender el cdigo a cientos de lneas. Algunos de los nuevos dispositivos tienen bugs de hardware y no son tan estables como los viejos OTP No hay compatibilidad entre los diferentes PIC's y hay que reescribir el cdigo cada vez que se quiera cambiar de un PIC a otro. Tomado de http://www.psoc-chile.es.tl/%BFMicrocontrolador-f-.htm

LECTURA 2
3

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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 generando un reset el LPC210x ejecuta el programa cargador de arranque. Utilizando 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.

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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 tambin 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. http://perso.wanadoo.es/pictob/microcr.htm#herramientas_de_desarrollo>

LECTURA 3
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 especficos que incorporan los microcontroladores son: Temporizadores o "Timers"

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

(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). 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

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 208006 Sistemas Embebidos Act 7: Reconocimiento Unidad 2

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. http://perso.wanadoo.es/pictob/microcr.htm#recursos_especiales

10

Вам также может понравиться