16/01/2011
OBJETIVOS DE LA CLASE 1
Identificar las características principales de un microcontrolador
2
Conocer las principales arquitecturas, y familias
3
Conocer a los principales fabricantes de microcontroladores
MICROCONTROLADORES
e m a n
ING. CRISTIAN CHILON IDRUGO
y n a p m o c
CONTROLADORES
MICROCONTROLADORES
Un controlador el dispositivo que se emplea para el
Diremos entonces un uC realmente consiste en un sencillo pero completo computador contenido en el corazón de un
manejo de uno o varios procesos.
circuito integrado.
El concepto de controlador no ha cambiado, lo que va variando es su implementación física. Primero fueron construidos con componentes de lógica discreta, luego con microprocesado microprocesadores. res.
Actualmente Actualmente,, e m a n y n a p m o c
todos estos elementos elementos del controlador controlador se
han podido incluir en un chip y recibe el nombre de “ Microcontrolador M icrocontrolador (uC )” .
e m a n y n a p m o c
MICROCONTROLADORES
e m a n y n a p m o c
En la fig figura ura ant anteri erior or mos mostra tramo mos s un es esque quema ma básico de un uC, el cual está compuesto de tres bloque blo ques s fun fundam dament entale ales: s: CP CPU, U, la me memor moria, ia, y la inte in terf rfaz az de en entr trad ada a y sa sali lida da.. Lo Los s blo bloqu ques es se conectan entre sí mediante buses.
Los bus Los use es se cla las sif ific ica an de acue uerd rdo o a la info in form rmac ació ión n qu que e tr tran ansp spor orta tan n pu pued eden en se serr de direcciones, de datos o de control.
MICROCONTROLADORES
Los uC se han desarrollado para cubrir las más div di ver ersa sas s apli ap lica caci cion ones es (equipos de comunica comu nicacione ciones s y de telef telefonía, onía, en instru instrument mentos os electrónicos, en equipos médicos e industriales de todo tipo, en electrodomésticos, en juguetes, etc.)
Los uC están concebidos fundamentalmente para ser utilizados en aplicaciones puntuales, puntuales, es decir, apli ap lica caci cion ones es do dond nde e el uC de debe be re real aliz izar ar un pequeño número de tareas.
e m a n y n a p m o c
1
16/01/2011
MICROCONTROLADORES
e m a n y n a p m o c
Características deseables en un uC
El uC es parte de la aplicación: Es un controlador incrustado o embebido en la aplicación (e m b e d d e d c o n t r o l l er ) . En aplicaciones de cierta envergadura se utilizan varios uCs, cada uno de los cuales se encarga de un pequeño grupo de tareas. Para reducir la complejidad producida por el empleo de varios uCs, han surgido algunas tecnologías como la empleada por el Propeler (Parallax), el cual incorpora algunas incorpora varios cores incrustados denominados COGs, los cuales trabajando bajo una topología maestro esclavo pueden emplear tareas mútiples con funciones distribuidas.
e m a n y n a p m o c
Recursos de entrada/salida (I/O). Manejo individual de líneas de entrada y salida, el manejo de interrupciones, señales analógicas, etc.
Espacio optimizado.
El uC idóneo para una aplicación.
Seguridad en el funcionamiento del uC.
Bajo consumo.
Protección de los programas frente a copias.
Capacidad de MIPS.
Periféricos incorporados.
El Oscilador
COMPONENTES DE UN uC Un microcontrolador combina los recursos fundamentales disponibles en un microcomputador, es decir, la CPU, la memoria y los recursos de entrada y salida, en un único circuito integrado.
e m a n y n a p m o c
e m a n y n a p m o c
El Oscilador
La CPU
e m a n y n a p m o c
Todos los uC disponen de un circuito oscilador que genera una onda cuadrada de alta frecuencia, que genera los pulsos de reloj que sincronizan todas las operaciones internas del sistema (Fosc).
Generalmente, el circuito de reloj está incorporado en el uC y sólo se necesitan unos pocos componentes exteriores para seleccionar y estabilizar la frecuencia de trabajo (cristal de cuarzo ,resonador cerámico, red R-C).
Al aumentar la frecuencia de reloj (fosc) se disminuye el tiempo de instrucción pero se produce un incremento en el consumo de energía.
La CPU es el “cerebro” del uC y es manejado por el programa almacenado en la memoria. La tarea del CPU básicamente es traer las instrucciones, una a una del programa almacenado en la memoria, interpretarlas y hacer que se ejecuten. También incluye los circuitos para realizar operaciones aritméticas y lógicas elementales con los datos binarios, en la denominada ALU.
e m a n y n a p m o c
2
16/01/2011
La CPU
LA MEMORIA
La CPU de un uC dispone de diferentes registros, algunos de propósito general y otros para propósitos específicos. Entre estos últimos están el registro de instrucción, el acumulador, el registro de estado, el contador de programa, el registro de direcciones de datos el puntero de la pila.
e m a n
En los uC la memoria de instrucciones y datos está integrada en el propio chip.
Una parte debe ser no volátil, tipo ROM, y se destina a contener el programa de instrucciones que gobierna la aplicación. Otra parte de memoria será tipo RAM, volátil, y se destina a guardar las variables y los datos. No existen sistemas de almacenamiento masivo como disco duro.
En la memoria ROM, sólo hay que almacenar un único programa de trabajo.
e m a n
y n a p m o c
y n a p m o c
LA RAM
e m a n y n a p m o c
MEMORIA DE PROGRAMA
En estos dispositivos es de poca capacidad pues sólo debe contener las variables y los cambios de información que se produzcan en el transcurso del programa. Por otra parte, como sólo existe un programa activo, no se requiere guardar una copia del mismo en la RAM pues se ejecuta directamente desde la ROM.
MEMORIA DE PROGRAMA
e m a n y n a p m o c
(ROM)
Según el tipo de memoria ROM que dispongan los Uc, la aplicación y utilización de los mismos es diferente.
ROM con máscara: memoria no volátil de sólo lectura cuyo contenido se graba durante la fabricación del chip. (factible en varios miles)
OTP (One Time Programmable): memoria no volátil de sólo lectura "programable una sola vez”. EPROM (Erasable Programmable Read OnIy Memory). e m a n y n a p m o c
(ROM)
PUERTAS DE ENTRADA Y SALIDA I/O
EEPROM: (Electrical Erasable Programmable Read OnIy Memory): Tanto la programación como el borrado, se realizan eléctricamente desde el propio grabador y bajo el control programado de un PC. FLASH: Se trata de una memoria no volátil, de bajo consumo, que se puede escribir y borrar. Funciona como una ROM y una RAM pero consume menos y es más pequeña. Estos últimos dos tipos de memoria son los mas empleados en la actualidad pues permiten realizar la programación del uC en su propio circuito.
La principal utilidad de las patitas que posee la cápsula que contiene un uC es soportar las líneas de I/O que comunican al computador interno con los periféricos externos.
Según los controladores de periféricos que posea cada modelo de uC, las líneas de E/S se destinan a proporcionar el soporte a las señales de entrada, salida y control.
e m a n y n a p m o c
3
16/01/2011
RECURSOS ESPECIALES
e m a n y n a p m o c
RECURSOS ESPECIALES
Cada fabricante oferta numerosas versiones de una arquitectura básica de uC. En algunas amplía las capacidades de las memorias, en otras incorpora nuevos recursos, en otras reduce las prestaciones al mínimo para aplicaciones muy simples, etc. La labor del diseñador es encontrar el modelo mínimo que satisfaga todos los requerimientos de su aplicación. De esta forma, minimizará el coste, el hardware y el software. Mas en nuestra ciudad a veces estamos limitados por el mercado existente, en la actualidad solo son disponibles unos 15 códigos de uCs.
e m a n y n a p m o c
RECURSOS ESPECIALES
Es un contador de ejecución libre que es en realidad un registro cuyo valor numérico se incrementa en uno en un evento flanco (ciclo de reloj), por lo que tomando la diferencia de valor entre los valores T1 y T2 y conociendo el periodo del reloj podemos determinar cuánto tiempo ha transcurrido. Se trata de una parte muy importante del microcontrolador el cual deberíamos conocer a detalle.
RECURSOS ESPECIALES
Perro guardián o "W atchdog".
Protección ante fallo de alimentación o "Brownout".
Estado de reposo o de bajo consumo.
Conversor A/D.
Conversor D/A.
Comparador analógico. Modulador de anchura de impulsos o PWM.
Puertas de E/S digitales.
Puertas de comunicación.
El PERRO GUARDIAN (WDT)
El objetivo del programador es evitar el desbordamiento del perro guardián, es decir borrar el contenido del WDT a intervalos de tiempo más cortos que el tiempo que se tarda en contar los N pulsos.
ARQUITECTURAS DE HARDWARE La arquitectura de V o n N e u m a n n se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones de forma indistinta. A dicha memoria se accede a través de un sistema de buses único (direcciones, datos y control).
TAREA: Investigar sobre los siguiente Recursos Especiales: Reset
e m a n y n a p m o c
Temporizadores o "Timers".
Consta de un oscilador y un contador binario de N bits. La salida de la última etapa del contador va conectada al circuito de reset del uC. El conteo no se puede detener, pero el contador se puede borrar (poner a 0) desde el programa.
e m a n y n a p m o c
Estado
RECURSOS ESPECIALES
TIMER
e m a n y n a p m o c
Los principales son:
de bajo consumo
Protección
del programa frente a copias
Brown Out
Reset e m a n y n a p m o c
4
16/01/2011
ARQUITECTURAS DE HARDWARE
CUAL ES LA MAS APROPIADA? En un uC, los componentes del sistema se encuentran en el mismo chip integrado y por lo tanto, no hay necesidad de minimizar la cantidad de pines. Por esta razón, la Arquitectura Harvard ha sido la arquitectura elegida para la mayoría de microcontroladores a pesar de que necesita mas terminales de interconexión.
La arquitectura Harvard dispone de dos memorias independientes una, que contiene sólo instrucciones y otra, sólo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultáneamente en ambas memorias.
e m a n
e m a n
y n a p m o c
y n a p m o c
ARQUITECTURA CISC O RISC
e m a n y n a p m o c
ARQUITECTURA CISC O RISC
Al aparecer los microprocesadores y los microcontroladores, la tendencia inicial fue el CISC. Las instrucciones tenían diferente longitud y los modos de direccionamiento se hicieron cada vez más elaborados. Este aument o en la complejidad de las instrucciones se reflejo en la complejidad del hardware de la CPU, en el que se hacía necesario dedicar un gran espacio del circuito integrado a la decodificación y ejecución de las instrucciones.
e m a n y n a p m o c
ARQUITECTURA CISC O RISC
e m a n y n a p m o c
En la arquitectura RISC, la CPU dispone de un repertorio corto de instrucciones sencillas. Cada instrucción puede realizar una operación muy simple, pero a alta velocidad. Se puede lograr que todas las instrucciones tengan la misma longitud.
Hay pocos modos de direccionamiento de los datos y son aplicables a todas las celdas de la memoria.
FABRICANTES DE uP, uC, DSP
La complejidad de la CPU disminuye, de modo que es fácil aumentar la frecuencia del oscilador de la CPU y con ello la velocidad de las instrucciones.
INTEL (MCS51, MCS151, MCS251)
ATMEL (Marc 4, AVR, 8051, ARM7-9-11, PowerPC)
Como tienen menos transistores, son más baratas de diseñar y producir.
FREESCALE (68HC05-08-11-12-6 DSPs)
MICROCHIP (PICmicro, dsPIC, PIC24,PIC32)
La complejidad en la elaboración de programas, que implica el uso de una arquitectura RISC, en los uCs, también es encargada al compilador. Por lo que muchos fabricantes crean modelos especialmente acondicionados al lenguaje C, salvo algunos modelos que son optimizados para el basic y otros.
ANLOG DEVICES (8052, ARM7)
DALLAS SEMICONDUCTOR (8051)
TEXAS INSTRUMENTS (DSP TMS370-470, uC MSP430)
ACTEL (FPGA with 8051 and ARM7 cores)
ALTERA (FPGA with Nios II core)
e m a n y n a p m o c
5
16/01/2011
BIBLIOGRAFIA
Fernando E. Valdes,Ramon Pallas Areny, “FUNDAMENTALS AND APPLICATIONS WITH PIC”, Editorial Taylor & Francis Group, 2009 www. automatiza.com.pe
e m a n y n a p m o c
6