Está en la página 1de 11

____________________________________________ Introduccin a los microcontroladores

INTRODUCCIN A LOS MICROCONTROLADORES

UMSNH-FIE

2005

GENERALIDADES SOBRE MICROCONTROLADORES Breve Esbozo Histrico


1971 Intel fabrica el primer microprocesador (el 4004) de tecnologa PMOS. Este era un microprocesador de 4 bits y fue fabricado por Intel a peticin de Datapoint Corporation con el objeto de sustituir la CPU de terminales inteligentes que eran fabricadas en esa fecha por Datapoint mediante circuitera discreta. El dispositivo fabricado por Intel result 10 veces ms lento de lo requerido y Datapoint no lo compr, de esta manera Intel comenz a comercializarlo. El 4004 era un microprocesador de 4 bits, contena 2,300 transistores y corra a 108 Khz poda direccionar slo 4096 (4k) localidades de memoria de 4 bits, reconoca 45 instrucciones y poda ejecutar una instruccin en 20 seg en promedio. Este procesador se utiliz en las primeras calculadoras de escritorio. 1972 Las aplicaciones del 4004 estaban muy limitadas por su reducida capacidad y rpidamente Intel desarroll una versin ms poderosa (el 8008), el cual poda manipular bytes completos, por lo cual fue un microprocesador de 8 bits. La memoria que este poda manejar se increment a 16 kbytes, sin embargo, la velocidad de operacin continu igual. 1973 Intel lanza al mercado el 8080 el primer microprocesador de tecnologa NMOS, lo cual permite superar la velocidad de su predecesor (el 8008) por un factor de diez, es decir, el 8080 puede realizar 500 000 operaciones por segundo, adems se increment la capacidad de direccionamiento de memoria a 64 kbytes. A partir del 8080 de Intel se produjo una revolucin en el diseo de microcomputadoras y varias compaas fabricantes de circuitos integrados comenzaron a producir microprocesadores. Algunos ejemplos de los primeros microprocesadores son: el IMP-4 y el SC/MP de National Semiconductors, el PPS-4 y PPS-8 de Rockwell International, el MC6800 de Motorola, el F-8 de Fairchild. 1975 Zilog lanza al mercado el Z80, uno de los microprocesadores de 8 bits ms poderosos. En ese mismo ao, Motorola abate dramticamente los costos con sus microprocesadores 6501 y 6502 (este ltimo adoptado por APPLE para su primera microcomputadora personal). estos microprocesadores se comercializan en $20 y $25 (dls. USA) respectivamente. Esto provoca un auge en el mercado de microcomputadoras de uso domstico y un caos en la proliferacin de lenguajes, sistemas operativos y programas (ningn producto era compatible con el de otro fabricante). 1976 Surgen las primeras microcomputadoras de un slo chip, que ms tarde se denominarn microcontroladores. Dos de los primeros microcontroladores, son el 8048 de Intel y el 6805R2 de Motorola.

____________________________________________ Introduccin a los microcontroladores


M a y o re s lo n g itu d e s d e p a la b ra ( 1 6 b its , 3 2 , .. .) m a y o r c a p a c id a d d e m a n e jo d e m e m o r i a . MICROPROCESADORES

1971

1976 M IC R O C O N T R O L A D O R E S M a y o r n u m e r o y c o m p le ji d a d d e d is p o s itiv o s d e c o m u n i c a c i o n , f a c i li d a d e s p a r a c o n tro l e n tie m p o re a l

198x En la dcada de los 80's comienza la ruptura entre la evolucin tecnolgica de los microprocesadores y la de los microcontroladores, Ya que los primeros han ido incorporando cada vez ms y mejores capacidades para las aplicaciones en donde se requiere el manejo de grandes volmenes de informacin y por otro lado, los segundos han incorporado ms capacidades que les permiten la interaccin con el mundo fsico en tiempo real, adems de mejores desempeos en ambientes de tipo industrial.

C o n t ro l e n t ie m p o re a l S is te m a s M in im o s

G ra n d e s v o lu m e n e s d e d a to s S is te m a s I n fo rm a tic o s

M IC R O C O N T R O L A D O R E S

M IC R O P R O C E S A D O R E S

1.2.-CONCEPTOS BSICOS Unidad Central de Proceso (CPU).- Es el "cerebro" de una computadora, de manera ms precisa, es la parte de una computadora que se encarga de controlar el proceso y la transferencia de informacin. La funcin de la CPU es interpretar las instrucciones de un programa y coordinar su ejecucin. La CPU desde que es energizada realiza en forma repetitiva ciclos de instruccin, los cuales se componen de las actividades descritas en la siguiente figura:
Ciclo FETCH lectura de la siguiente instruccin decodificacin de la instruccin Ejecucin de la instruccin ...

Ciclo de Instruccin

____________________________________________ Introduccin a los microcontroladores Para realizar este ciclo bsico, la CPU debe ser capaz de coordinar sus dispositivos internos y externos para realizar: Lecturas desde memoria interna (registros) y memoria externa Escrituras a memoria interna y externa Decodificacin de instrucciones (basada en la consulta de una unidad de microcdigo interna a la CPU) Operaciones de tipo aritmtico y lgico.

Microprocesador (p).- Es una CPU en un slo circuito integrado. Microcomputadora (c).- Es una computadora cuya CPU es un p. Microcontrolador (cc).- Es una microcomputadora en un slo circuito integrado. Computadora.- Una computadora es un sistema secuencial sncrono programable, la cual para desempear sus funciones debe poseer adems de la CPU:
- Conductos para el flujo de la informacin - Dispositivos para almacenar informacin - Dispositivos para comunicarse con el exterior. En la siguiente figura se muestra en forma esquemtica y muy general la estructura de una computadora.

M em o ria

CPU

P u erto s
E n trad a/S alid a ... P erifrico s

El diagrama anterior es una manera muy simplificada de representar los componentes de una computadora. Al entrar a detalle sobre la organizacin de estos componentes encontramos variantes que generan diferentes arquitecturas de computadora.

1.6.- ARQUITECTURAS DE COMPUTADORA


La arquitectura de computadora ms usada actualmente se denomina Arquitectura Princeton o Von Newman y tiene la caracterstica de poseer un bus comn llamado bus de datos para la informacin sin hacer distincin entre datos e instrucciones. Esta se ilustra con mayor detalle en la siguiente figura.

____________________________________________ Introduccin a los microcontroladores

B u s d e D a to s

CPU

M em o ria

M em o ria

RA M

RO M

P ue rto E /S

P ue rto E n tra d a

P ue rto S alid a

B us de D irec cio ne s B u s d e C o n tro l

R e lo j

Arquitectura Harvard.- En esta estructura la memoria de programa (pasiva) recibe un tratamiento diferente que la memoria de datos (activa), pudindose llegar a una total diferenciacin entre los buses de comunicacin: bus de datos y bus de instrucciones. 1.3.- TIPOS DE MEMORIAS
En trminos generales, los dispositivos de memoria pueden clasificarse en RAM (memoria de acceso aleatorio) y ROM (memoria de slo escritura), sin embargo, tanto en RAM como en ROM tenemos una gran variedad de subtipos de memoria, algunos de los cuales se describen a continuacin:

MEMORIA ROM.- Es una memoria de slo lectura. Su contenido es absolutamente inalterable desde el instante en que el fabricante graba la informacin en el chip, por lo tanto la escritura de este tipo de memorias ocurre una sola vez y queda grabado su contenido aunque se le retire la energa debido a esto se dice que es memoria no voltil. Su contenido se graba durante su construccin y no se puede cambiar. Son memorias excelentes para guardar microprogramas, sistemas operativos, tablas de conversin, codificacin de teclados, generacin de caracteres para displays etc.
Una computadora siempre usa una ROM para guardar ah programas y los datos necesarios (principalmente en el arranque) para activar y hacer funcionar la computadora y sus perifricos. La ventaja de tener los programas fundamentales almacenados en la ROM es que evita la necesidad de cargarlos en la memoria desde algn dispositivo externo. Debido a que estn siempre residentes, los programas en ROM son muy a menudo los cimientos sobre los que se construye el resto de los programas. En la siguiente figura se muestra la configuracin interna de una memoria ROM, de n localidades de memoria, cada localidad con 4 bits de capacidad (ROM de nx4). Los diodos mostrados en cada unin de lneas vertical/horizontal son quemados 5

____________________________________________ Introduccin a los microcontroladores selectivamente en el proceso de fabricacin para guardar un uno (diodo quemado) o un cero (diodo intacto.)
+ Vcc

Decodificador de k a n lneas Y0 Y1

Strobe

Y2 Y3

LINEAS DE SELECCION

. . .

A0 A1 Ak

. . .

. . .

Yn

D3

D2

D1

D0

As, en el diagrama de un solo bloque de un circuito integrado de memoria ROM de 2 kilobytes, las lineas externas seran como se muestra en la siguiente figura
A0 D0 A1 D1 A2 D2 A3 D3 A4 D4 A5 ROM D5 A6 D6 A7 2k x 8 D7 A8 A9 A10 CS

Bus de direcciones

Bus de datos

Seleccin de chip

MEMORIA PROM.- Tal como indica su nombre (Programmable ROM) estas memorias son programables, se entregan vrgenes al programador el cual mediante un dispositivo especial (programador de memorias), las programar grabando en ellas los datos que considera de inters para su trabajo. El proceso de programacin es destructivo: una vez grabada, es como si fuese una ROM normal a stas tambin se les llama memorias OTP (One Time Programmable).

____________________________________________ Introduccin a los microcontroladores

MEMORIAS EPROM Y RPROM.- Estas memorias son similares a las PROM pero con la diferencia que se pueden borrar y volver a grabar varias veces. Existen dos tipos de memorias segn el proceso de borrado de las mismas: Memoria EPROM.- Se trata de una PROM, de la que se puede borrar (erasable PROM) la informacin mediante luz ultravioleta. Para esta operacin, es necesario que el circuito integrado disponga de una ventana de cuarzo transparente a la luz ultravioleta. El tiempo de exposicin a la luz ha de ser corto, pero variable segn el constructor. As como para aplicar la luz ultravioleta se precisa un dispositivo especial (borrador de memorias), una vez borrados los datos de la EPROM, se necesita disponer de un grabador especial para introducir nuevos datos. Memoria RPROM o EEPROM.- Los datos contenidos en este circuito integrado se borran elctricamente si se aplican a las entradas valores de voltaje adecuados (normalmente ms elevados que los valores para leerla). Para el borrado de los circuitos RPROM, como para la programacin, se necesita un programador especial que maneje los voltajes y corrientes adecuados.
Las memorias EEPROM no pueden tratarse como si fuesen RAM no voltiles, pues aunque pueden leerse igual que una ROM o RAM, su escritura es un proceso mucho ms lento y que requiere voltajes y corrientes ms elevados que en la lectura. Memoria tipo FLASH.- Son memorias EEPROM de un tipo especial que permite una alta velocidad de escritura.

MEMORIA RAM .- Se le llama memoria de acceso aleatorio (Random Access Memory) no porque se pueda leer y escribir, sino porque puede accederse de manera no secuencial. Se dice que es memoria voltil porque la informacin almacenada en ella se pierde al retirarle la energa, por ello en RAM slo se guarda informacin temporal. MEMORIA DRAM o RAM dinmica.- Este es el tipo de RAM ms comnmente usado. Internamente est compuesto por microcapacitores de pequea capacidad, que almacenan la informacin mediante la carga y la descarga. Son de bajo costo, pero tienen el inconveniente de que pierden su carga, y por tanto la informacin demasiado rpido, por lo que deben ser constantemente "refrescados" con una nueva carga. Una computadora puede perder un 7% de tiempo aproximadamente en "refrescar" el contenido de la memoria DRAM. MEMORIA SRAM o RAM esttica.- Su diseo interno est hecho en base Flip Flops basados en transistores que almacenan un 1 o 0 cuando son polarizados en corte o saturacin respectivamente permaneciendo en esta condicin hasta que se cambie la informacin. No necesitan ser "refrescados", son muy veloces pero mucho ms costosos que los DRAM. Memorias de almacenamiento masivo.- Se trata de dispositivos de memoria no voltil, con una alta capacidad de almacenamiento. La tecnologa bsica que se emplea para su desarrollo es la basada en sustancias fcilmente magnetizables por medio de corrientes elctricas que mantienen la orientacin de los campos an cuando ha sido retirado el estmulo elctrico.
7

____________________________________________ Introduccin a los microcontroladores Los primeros elementos de este tipo que se desarrollaron fueron las cintas magnticas en los aos 60. A principios de los aos 70 aparecieron las unidades de almacenamiento en disco, su principio de funcionamiento es el mismo que las cintas pero son mucho ms rpidas y ocupan menos espacio. En este tipo de unidades la lectura y grabacin de los datos se puede hacer por contacto fsico entre la cabeza y los discos (discos flexibles) o sin contacto (discos duros). A principios de los 90 aparecieron los discos compactos, que han supuesto una autntica revolucin en este tipo de materiales. Su principio de funcionamiento esta basado en el empleo de luz lser para la lectura y grabacin. Tienen una velocidad de transferencia muy alta, reducido coste, gran capacidad y son muy fciles de transportar. En la actualidad estn siendo sustituidas por los discos de tecnologa DVD que, teniendo el mismo principio de funcionamiento, tienen unas prestaciones, sobre todo en capacidad, muy superiores.

1.4.- DISPOSITIVOS AUXILIARES


Los dispositivos que realizan funciones auxiliares a la CPU y a la memoria constituyen los puertos de entrada/salida, y en ocasiones suelen llamarse perifricos. Estos se encuentran en el interior del chip en el caso de un cc y en el exterior (como chips auxiliares) en el caso de un p. Estos pueden ser entre otros:

Puertos de entrada/salida (paralelo) digitales: Permiten configurar cada una de sus lneas como entrada o salida digital de manera individual (sin protocolo) o en bloques para comunicacin con protocolo. Puertos Analgicos. Permiten adquirir seales digitales mediante convertidores Analgico a Digital. Temporizadores con funciones del tipo: o Entradas temporizadas o de captura: permiten capturar o medir el tiempo en que ocurren eventos exteriores o Salidas temporizadas o de comparacin: permiten generar seales temporizadas o Conteo de eventos: permiten contar eventos externos Salidas PWM: permiten generar salidas analgicas. Dispositivos de vigilancia (watchdogs): evitan cadas del sistema Controladores de interrupciones: administran la ejecucin de tareas por interrupciones, lo cual permite la multitarea. Controladores de Acceso Directo a la Memoria (D.M.A.). Permiten que otros dispositivos aparte de la CPU puedan acceder a la memoria. Acondicionadores del reloj y del reset. Permiten generar adecuadamente las seales de reloj y de reset. 1.5.- HERRAMIENTAS DE DESARROLLO
Al decidirse a utilizar o bien, a aprender el uso de algn cc uno se encuentra con una gran cantidad de herramientas de desarrollo, tanto de software como de hardware, la principal de estas herramientas (que en la actualidad incorpora las funciones de varias herramientas en una) es el entrenador o mdulo de evaluacin. 8

____________________________________________ Introduccin a los microcontroladores

Entrenadores para microprocesador.- Cuando el diseador elige un p o un cc nuevo, requiere de un medio que le permita familiarizarse con l; para ello el fabricante de p o cc disea pequeos sistemas de entrenamiento (o mdulos de evaluacin) que adems de permitir esta familiarizacin, tambin pueden servir como herramientas de desarrollo, experimentacin y prueba de algunos proyectos iniciales. Un entrenador o mdulo de evaluacin para p o para cc normalmente posee poca memoria RAM, un programa en ROM que permite la comunicacin con el usuario, un teclado y un display sencillos e una interface con algn medio de almacenamiento magntico. Estos tres ltimos elementos han sido reemplazados en los entrenadores ms actuales por una interface de comunicacin serie a una computadora personal.
Los entrenadores actuales incorporan una gran variedad de funciones que ocasionalmente se pueden conseguir en mdulos separados, as, un entrenador actual puede incorporar funciones de:

Depurador.- Permite la ejecucin pausada paso por paso de programas, la revisin de registros y localidades de memoria o puerto y en ocasiones la modificacin de los contenidos de dichos registros y localidades de memoria o puerto y en ocasiones inclusive la modificacin del propio programa. Programador.- As como un programador de memorias PROM permite grabar informacin en ellas, un programador de microcontroladores permite grabar informacin en la memoria PROM (EPROM, EEPROM o FLASH) incluida en el chip del microcontrolador, normalmente la informacin guardada en este tipo de memoria corresponde a cdigo de programa. Simulador.- Permite la ejecucin y depuracin de programas de manera simulada y por lo tanto, en tiempo no-real y en una CPU diferente a la del sistema para el cual estn diseados, es decir, no en el tiempo ni en la CPU en que se ejecutaran normalmente. (un simulador nunca puede simular al 100% las capacidades de un cc especfico) Ensamblador.- Es un programa que permite convertir un cdigo escrito en lenguaje ensamblador (nemnicos) a cdigo binario (lenguaje de mquina) ejecutable por la CPU. Compilador.- Es un programa que permite convertir un cdigo escrito en un lenguaje de alto nivel, tal como BASIC, C, FORTRAN, PASCAL, etc. A cdigo binario ejecutable, a veces pasando por un cdigo intermedio relocalizable llamado cdigo objeto, el cual es una versin de cdigo de mquina con referencias simblicas que son resueltas despus por un encadenador (linker) para convertirlo en cdigo ejecutable. Emuladores.- Un emulador de p o cc es un computadora que imita las funciones de un p o cc de la manera ms fiel posible y en tiempo real. La imitacin que realiza es tan fiel que posee un conector que encaja en el lugar del chip del p o cc para reemplazarlo. El objetivo de utilizar un emulador es validar el hardware conectado al p o cc, y su interaccin con el programa en ejecucin.
9

____________________________________________ Introduccin a los microcontroladores

Sistemas mnimos basados en microprocesador.- Un sistema mnimo basado en p o cc es una microcomputadora de propsito especfico, equipada con el mnimo de componentes (memoria RAM, ROM, puertos, sensores actuadores, etc.) para realizar sus funciones.
Los propsitos para los cuales puede disearse un sistema mnimo pueden caer en una infinidad de campos, tales como: instrumentacin, control, monitoreo, sealizacin, secuenciamiento, autorizacin, comunicaciones, procesamiento de seales, etc. Inclusive, un sistema mnimo puede tener propsitos didcticos como es un entrenador o propsitos de validacin como es un emulador. El objetivo de este curso es que el alumno sea capaz de disear un sistema mnimo basado en un cc para una aplicacin elegida.

1.7.- APLICACIONES DE LOS MICROCONTROLADORES.


Las aplicaciones especficas de los cc son tan enormemente variadas que no se exagera cuando se dice que stas estn limitadas solamente por la imaginacin del diseador. En cualquier problema en el cual se requiera un instrumento digital compacto que sea capaz de realizar funciones como las siguientes, es posible pensar en sistema basado en un cc: secuenciamiento, codificacin/decodificacin, monitoreo, adquisicin de datos, sealizacin, procesamiento de seales, control retroalimentado, temporizacin, clculos aritmticos sencillos, comunicaciones, automatizacin, despliegue digital, control on - off, etc. La siguiente lista de aplicaciones ha sido tomada delcaptulo 1 del libro Design with microcontrollers de John B. Peatman, dicho captulo se anexa en las siguientes pginas.
Instrumentos porttiles compactos: Radio paginador numrico (beeper) Planmetro electrnico Nivelmetro digital Identificador-probador de circuitos integrados Dispositivos perifricos: Teclado, Modems Buffer para impresoras Plotters Posicionadores Dispositivos autnomos (stand alone): Fotocopiadoras Mquinas de escribir Selector, Codificador- decodificador de T.V. Localizador de peces Control de aspersores para riego de jardines Telfonos de tarjeta Subfunciones de instrumentos: Panel frontal de un osciloscopio Control de display sensible al tacto Contador de microondas con interface HP-IB Multmetro con interface serie a otro multmetro Analizador de espectros (mdulos de expansin para IR y RF comunicados va Interface serie) Aplicaciones automotrices: Control de encendido e inyeccin de combustible Sistema de frenos antiderrapes (ABS) Control dinmico de la suspensin Sistemas de navegacin Alarmas automotrices Otros: Controladores de CRT Telfonos celulares Cerraduras electrnicas Sistemas de seguridad

10

11

También podría gustarte