Sei sulla pagina 1di 44

Universidad Michoacana De San Nicols De Hidalgo

Facultad De Ingeniera Elctrica

Nombre: Bernardo Barajas Ontiveros

Materia: Control Digital

Profesor:

Tema: Microcontroladores

Morelia, Mich. Marzo de 2015.

MICROCONTROLADORES
Introduccin

Primero que todo comenzaremos definiendo que son los microcontroladores: Los
microcontroladores (abreviado C, UC o MCU) son circuitos integrados capaces de
ejecutar rdenes que fueron grabadas en su memoria. Su composicin est dada por
varios bloques funcionales, los cuales cumplen una tarea especfica, son dispositivos que
operan uno o ms procesos, por lo general los microcontroladores estn basados en la
arquitectura de Harvard, la cual consiste en dispositivos de almacenamiento separados
(memoria de programa y memoria de datos). El termino microcontrolador est dado por
dos palabras que son Micro-Controlador las cuales tienen por significado pequeo
(en tamao) y maniobrar o controlar (funcin principal), los cuales son definidos
mediante la programacin. Un microcontrolador est constituido en su interior por las tres
principales unidades funcionales de una computadora, las cuales son: unidad central de
procesamiento, memoria y perifricos de entrada y salida. En fin un microcontrolador es un
sistema completo, con unas prestaciones limitadas que no pueden modificarse y que
puede llevar a cabo las tareas para las que ha sido programado de forma autnoma.
Algunos microcontroladores pueden utilizar palabras de cuatro bits y funcionan a
velocidad de reloj con frecuencias tan bajas como 4 kHz, con un consumo de baja
potencia (mW o micro watts). Por lo general, tendr la capacidad para mantener la
funcionalidad a la espera de un evento como pulsar un botn o de otra interrupcin, el
consumo de energa durante el estado de reposo (reloj de la CPU y los perifricos de la
mayora) puede ser slo de nano watts, lo que los hace muy adecuados para aplicaciones
con batera de larga duracin. Otros microcontroladores pueden servir para roles de
rendimiento crtico, donde sea necesario actuar ms como un procesador digital de seal
(DSP), con velocidades de reloj y consumo de energa ms altos.
Cuando es fabricado el microcontrolador, no contiene datos en la memoria ROM.
Para que pueda controlar algn proceso es necesario generar o crear y luego grabar en la
EEPROM o equivalente del microcontrolador algn programa, el cual puede ser escrito en
lenguaje ensamblador u otro lenguaje para microcontroladores; sin embargo, para que el
programa pueda ser grabado en la memoria del microcontrolador, debe ser codificado en
sistema numrico hexadecimal que es finalmente el sistema que hace trabajar al
microcontrolador cuando ste es alimentado con el voltaje adecuado y asociado a
dispositivos analgicos y discretos para su funcionamiento.

Historia
El primer microcontrolador fue el Intel 4004 de 4 bits, lanzado en 1971, seguido
por el Intel 8008 y otros ms capaces. Sin embargo, ambos procesadores requieren
circuitos adicionales para implementar un sistema de trabajo, elevando el costo del
sistema total.
El Instituto Smithsoniano dice que los ingenieros de Texas Instruments Gary Boone
y Michael Cochran lograron crear el primer microcontrolador, TMS 1000, en 1971; fue
comercializado en 1974. Combina memoria ROM, memoria RAM, microprocesador y reloj
en un chip y estaba destinado a los sistemas embebidos.
Debido en parte a la existencia del TMS 1000, Intel desarroll un sistema de
ordenador en un chip optimizado para aplicaciones de control, el Intel 8048, que comenz
a comercializarse en 1977. Combina memoria RAM y ROM en el mismo chip y puede
encontrarse en ms de mil millones de teclados de compatible IBM PC, y otras numerosas
aplicaciones. El en ese momento el presidente de Intel, Luke J. Valenter, declar que el
microcontrolador es uno de los productos ms exitosos en la historia de la compaa, y
ampli el presupuesto de la divisin en ms del 25%.
La mayora de los microcontroladores tienen dos variantes. Unos tena una
memoria EPROM reprogramable, significativamente ms caros que la variante PROM que
era slo una vez programable. Para borrar la EPROM necesita exponer a la luz ultravioleta
la tapa de cuarzo transparente. Los chips con todo opaco representaban un costo menor.
En 1993, el lanzamiento de la EEPROM en los microcontroladores (comenzando
con el Microchip PIC16x84), permite borrarla elctrica y rpidamente sin necesidad de un
paquete costoso como se requiere en EPROM, lo que permite tanto la creacin rpida de
prototipos y la programacin en el sistema. El mismo ao, Atmel lanza el primer
microcontrolador que utiliza memoria flash. Otras compaas rpidamente siguieron el
ejemplo, con los dos tipos de memoria.
El costo se ha desplomado en el tiempo, con el ms barato microcontrolador de 8
bits disponible por menos de 0,25 dlares para miles de unidades en 2009, y algunos
microcontroladores de 32 bits a 1 dlar por cantidades similares. En la actualidad los
microcontroladores son baratos y fcilmente disponibles para los aficionados, con grandes
comunidades en lnea para ciertos procesadores.
En el futuro, la MRAM podra ser utilizada en microcontroladores, ya que tiene
resistencia infinita y el costo de su oblea semiconductora es relativamente bajo.

Caractersticas

Esquema de un Microcontrolador

En la figura anterior, vemos al microcontrolador metido dentro de un encapsulado


de circuito integrado, con su procesador (CPU), buses, memoria, perifricos y puertos de
entrada/salida. Fuera del encapsulado se ubican otros circuitos para completar perifricos
internos y dispositivos que pueden conectarse a los pines de entrada/salida. Tambin se
conectarn a los pines del encapsulado la alimentacin, masa, circuito de completamiento
del oscilador y otros circuitos necesarios para que el microcontrolador pueda trabajar.
Los microcontroladores estn diseados para reducir el costo econmico y el
consumo de energa de un sistema en particular. Por eso el tamao de la unidad central
de procesamiento, la cantidad de memoria y los perifricos incluidos dependern de la
aplicacin. El control de un electrodomstico sencillo como una batidora utilizar un
procesador muy pequeo (4 u 8 bits) porque sustituir a un autmata finito. En cambio, un
reproductor de msica y/o vdeo digital (MP3 o MP4) requerir de un procesador de 32 bits
o de 64 bits y de uno o ms cdec de seal digital (audio y/o vdeo). El control de un
sistema de frenos ABS (Antilock Break System) se basa normalmente en un
microcontrolador de 16 bits, al igual que el sistema de control electrnico del motor en un
automvil.
Los microcontroladores representan la inmensa mayora de los chips de
computadoras vendidos, sobre un 50% son controladores "simples" y el restante
corresponde a DSP ms especializados. Mientras se pueden tener uno o dos
microprocesadores de propsito general en casa (Ud. est usando uno para esto), usted
tiene distribuidos seguramente entre los electrodomsticos de su hogar una o dos docenas
de microcontroladores. Pueden encontrarse en casi cualquier dispositivo electrnico como
automviles, lavadoras, hornos microondas, telfonos, etc.
Un microcontrolador difiere de una unidad central de procesamiento normal, debido
a que es ms fcil convertirla en una computadora en funcionamiento, con un mnimo de

circuitos integrados externos de apoyo. La idea es que el circuito integrado se coloque en


el dispositivo, enganchado a la fuente de energa y de informacin que necesite, y eso es
todo. Un microprocesador tradicional no le permitir hacer esto, ya que espera que todas
estas tareas sean manejadas por otros chips. Hay que agregarle los mdulos de entrada y
salida (puertos) y la memoria para almacenamiento de informacin.
Un microcontrolador tpico tendr un generador de reloj integrado y una pequea
cantidad de memoria de acceso aleatorio y/o ROM/EPROM/EEPROM/flash, con lo que
para hacerlo funcionar todo lo que se necesita son unos pocos programas de control y un
cristal de sincronizacin. Los microcontroladores disponen generalmente tambin de una
gran variedad de dispositivos de entrada/salida, como convertidor analgico digital,
temporizadores, UARTs y buses de interfaz serie especializados, como I2C y CAN.
Frecuentemente, estos dispositivos integrados pueden ser controlados por instrucciones
de procesadores especializados. Los modernos microcontroladores frecuentemente
incluyen un lenguaje de programacin integrado, como el lenguaje de programacin
BASIC que se utiliza bastante con este propsito.
Los microcontroladores negocian la velocidad y la flexibilidad para facilitar su uso.
Debido a que se utiliza bastante sitio en el chip para incluir funcionalidad, como los
dispositivos de entrada/salida o la memoria que incluye el microcontrolador, se ha de
prescindir de cualquier otra circuitera.
En cuanto a la arquitectura de los microcontroladores la detallaremos con mayor
profundidad a continuacin.

Arquitectura de los microcontroladores


Bsicamente existen dos arquitecturas para conformar la estructura de los
microcontroladores: Von Neumann y Harvard. Ambas se diferencian en la forma de
conexin de la memoria al procesador y en los buses que cada una necesita.

Arquitectura Von Neumann:

Es la llamada tambin arquitectura tradicional se basa en el esquema propuesto por


John Von Neumann, en el cual la unidad central de proceso, est conectada a una
memoria nica que contiene las instrucciones del programa y los datos, o sea utiliza el
mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos,
siendo la que se utiliza en un ordenador personal porque permite ahorrar una buena
cantidad de lneas de E/S, que son bastante costosas, sobre todo para aquellos sistemas
donde el procesador se monta en algn tipo de zcalo alojado en una placa madre.
Tambin esta organizacin les ahorra a los diseadores de placas madre una buena
cantidad de problemas y reduce el costo de este tipo de sistemas. El tamao de la unidad
de datos o instrucciones est fijado por el ancho del bus de la memoria. Las dos
principales limitaciones de esta arquitectura son:
a) Que la longitud de las instrucciones est limitada por la unidad de longitud de los
datos, por lo tanto el microprocesador debe hacer varios accesos a memoria para buscar
instrucciones complejas.
b) La velocidad de operacin (o ancho de banda de operacin) est limitada por el
efecto de cuello de botella que significa un bus nico para datos e instrucciones que
impide superponer ambos tiempos de acceso.
La arquitectura von Neumann permite el diseo de programas con cdigo automodificable,
prctica bastante usada en las antiguas computadoras que solo tenan acumulador y
pocos modos de direccionamiento, pero innecesaria, en las computadoras modernas.

La arquitectura Harvard:

La arquitectura conocida como Harvard, consiste simplemente en un esquema en el


que el CPU est conectado a dos memorias por intermedio de dos buses separados. Una
de las memorias contiene solamente las instrucciones del programa, y es llamada
Memoria de Programa. La otra memoria solo almacena los datos y es llamada Memoria de
Datos. Ambos buses son totalmente independientes y pueden ser de distintos anchos.
Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced Instruccin Set
Computer), el set de instrucciones y el bus de la memoria de programa pueden disearse
de manera tal que todas las instrucciones tengan una sola posicin de memoria de
programa de longitud. Adems, como los buses son independientes, el CPU puede estar

accediendo a los datos para completar la ejecucin de una instruccin, y al mismo tiempo
estar leyendo la prxima instruccin a ejecutar. Podemos observar claramente que las
principales ventajas de esta arquitectura son:
a) 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 mayor velocidad y menor longitud de programa.
b) El tiempo de acceso a las instrucciones puede superponerse con el de los datos,
logrando una mayor velocidad de operacin.
Una pequea desventaja de los procesadores con arquitectura Harvard, es que
deben poseer instrucciones especiales para acceder a tablas de valores constantes que
pueda ser necesario incluir en los programas, ya que estas tablas se encontraran
fsicamente en la memoria de programa (por ejemplo en la EPROM de un
microprocesador), otra desventaja es que consume muchas lneas de E/S del procesador;
por lo que en sistemas donde el procesador est ubicado en su propio encapsulado, solo
se utiliza en supercomputadoras. Sin embargo, en los microcontroladores y otros sistemas
integrados, donde usualmente la memoria de datos y programas comparten el mismo
encapsulado que el procesador, este inconveniente deja de ser un problema serio.

Arquitectura interna de un microcontrolador.

Registros
Son un espacio de memoria muy reducido pero necesario para cualquier
microprocesador, de aqu se toman los datos para varias operaciones que debe realizar el
resto de los circuitos del procesador. Los registros sirven para almacenar los resultados de
la ejecucin de instrucciones, cargar datos desde la memoria externa o almacenarlos en
ella. Aunque la importancia de los registros parezca trivial, no lo es en absoluto. De hecho
una parte de los registros, la destinada a los datos, es la que determina uno de los
parmetros ms importantes de cualquier microprocesador. Cuando escuchamos que un

procesador es de 4, 8, 16, 32 o 64 bits, nos estamos refiriendo a procesadores que


realizan sus operaciones con registros de datos de ese tamao, y por supuesto, esto
determina muchas de las potencialidades de estos.
Mientras mayor sea el nmero de bits de los registros de datos del procesador,
mayores sern sus prestaciones, en cuanto a poder de cmputo y velocidad de ejecucin,
ya que este parmetro determina la potencia que se puede incorporar al resto de los
componentes del sistema.

CPU (unidad central de proceso):


Podemos decir que la CPU, siglas en ingls de unidad central de proceso, es el
ncleo del microcontrolador. Se encarga de ejecutar las instrucciones almacenadas en la
memoria, de la que hablaremos ms adelante. Es lo que habitualmente llamamos
procesador o microprocesador, trmino que a menudo se confunde con el de
microcontrolador. En esta lnea cabe aclarar que, tal y como estamos viendo, ambos
trminos no son lo mismo: el microprocesador es una parte de un microcontrolador y
sin l no sera til; un microcontrolador, en cambio, es un sistema completo que
puede llevar a cabo de forma autnoma una labor.

Unidad Aritmtico lgica


Como los procesadores son circuitos que hacen bsicamente operaciones lgicas y
matemticas, se le dedica a este proceso una unidad completa, con cierta independencia.
Aqu es donde se realizan las sumas, restas, y operaciones lgicas tpicas del lgebra de
Boole. Actualmente este tipo de unidades ha evolucionado mucho y los procesadores ms
modernos tienen varias ALU, especializadas en la realizacin de operaciones complejas
como las operaciones en coma flotante. De hecho en muchos casos le han cambiado su
nombre por el de coprocesador matemtico, aunque este es un trmino que surgi para
dar nombre a un tipo especial de procesador que se conecta directamente al procesador
ms tradicional. Su impacto en las prestaciones del procesador es tambin importante
porque, dependiendo de su potencia, tareas ms o menos complejas, pueden hacerse en
tiempos muy cortos, como por ejemplo, los clculos en coma flotante.

Buses
Son el medio de comunicacin que utilizan los diferentes componentes del
procesador para intercambiar informacin entre s, eventualmente los buses o una parte

de ellos estarn reflejados en los pines del encapsulado del procesador. En el caso de los
microcontroladores, no es comn que los buses estn reflejados en el encapsulado del
circuito, ya que estos se destinan bsicamente a las E/S de propsito general y perifricos
del sistema.

Memoria:
Entendemos por memoria los diferentes componentes del microcontrolador que se
emplean para almacenar informacin durante un periodo determinado de tiempo. La
informacin que necesitaremos durante la ejecucin del programa ser, por un lado, el
propio cdigo, y por otro, los diferentes datos que usemos durante la ejecucin del mismo.
(Memoria de programa y de memoria de datos, respectivamente).
La diferente naturaleza de la informacin que hay que almacenar hace necesario el
uso de diferentes tipos memorias. Hay que tener en cuenta una clasificacin bsica, que
distinga entre memoria voltil y no voltil. La primera es aquella que pierde la informacin
que almacena al desconectarla de la alimentacin; la segunda, como resulta obvio, no. Por
lo tanto, se hace evidente que al menos la memoria de programa deber ser no voltil: no
sera prctico que el programa grabado en el microcontrolador se borrara cada vez que
apagramos el dispositivo. Con respecto a la memoria de datos, diremos por el momento
segn la situacin puede interesarnos una u otra.

Unidades de entrada/salida:
Las unidades de entrada/salida son los sistemas que emplea el microcontrolador
para comunicarse con el exterior. Imaginemos una televisin: por un lado tiene un
dispositivo de salida, como es la pantalla, y por otro lado, de entrada, como son los
botones de subir o bajar volumen y de cambio de canal. As, los dispositivos de entrada
nos permitirn introducir informacin en el microcontrolador y los de salida nos servirn
para que ste la saque al exterior.

Conjunto de instrucciones
Aunque no aparezca en el esquema, no podemos de hablar del conjunto o
repertorio de instrucciones, porque este elemento determina lo que puede hacer el
procesador.
Define las operaciones bsicas que puede realizar el procesador, que conjugadas y
organizadas forman lo que conocemos como software. El conjunto de instrucciones vienen

siendo como las letras del alfabeto, el elemento bsico del lenguaje, que organizadas
adecuadamente permiten escribir palabras, oraciones y cuanto programa se le ocurra.
Existen dos tipos bsicos de repertorios de instrucciones, que determinan la
arquitectura del procesador: RISC y CISC.

Arquitectura RISC y CISC

RISC (Reduced Instruction Set Computer) Computadora con conjunto


de Instrucciones Reducido.
Se centra en la obtencin de procesadores con las siguientes caractersticas
fundamentales:
Instrucciones de tamao fijo.
Pocas instrucciones.
Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.
Nmero relativamente elevado de registros de propsito general.
En este caso la idea es que el microcontrolador reconoce y ejecuta slo
operaciones bsicas (sumar, restar, copiar etc) Las operaciones ms complicadas se
realizan al combinar stas (por ejemplo, multiplicacin se lleva a cabo al realizar adicin
sucesiva). Sin embargo, no todo es tan oscuro. Adems, el microcontrolador es muy
rpido as que no es posible ver todas las acrobacias aritmticas que realiza. El usuario
slo puede ver el resultado final de todas las operaciones.

Una de las caractersticas ms destacables de este tipo de procesadores es que


posibilitan el paralelismo en la ejecucin, y reducen los accesos a memoria. Es por eso
que los procesadores ms modernos, tradicionalmente basados en arquitecturas CISC
implementan mecanismos de traduccin de instrucciones CISC a RISC, para aprovechar
las ventajas de este tipo de procesadores

CISC (Complex Instruction Set Computer) Computadoras de conjunto


de instrucciones complejo.
Los microprocesadores CISC tienen un conjunto de instrucciones que se
caracteriza por ser muy amplio y que permiten realizar operaciones complejas entre
operandos situados en la memoria o en los registros internos. Este tipo de repertorio
dificulta el paralelismo entre instrucciones, por lo que en la actualidad, la mayora de los
sistemas CISC de alto rendimiento, convierten las instrucciones complejas en varias
instrucciones simples del tipo RISC, llamadas generalmente microinstrucciones. Los
microcontroladores diseados para reconocer ms de 200 instrucciones diferentes
realmente pueden realizar muchas cosas a alta velocidad. No obstante, uno debe saber
cmo utilizar todas las posibilidades que ofrece un lenguaje tan rico, lo que no es siempre
tan fcil.

Composicin y principios de los microcontroladores


Ya hablamos de la arquitectura y composicin (memoria, procesador, entradas y
salidas), de los microcontroladores. Ahora veremos un poco ms a detalle los
componentes de los microcontroladores.

Funcionamiento
Para entender el funcionamiento de los microcontroladores describiremos con ms
profundidad los componentes mencionados anteriormente, adems hablaremos de los
tipos de memoria y su funcionamiento.
La necesidad de conseguir elevados rendimientos en el procesamiento de las
instrucciones ha desembocado en el empleo generalizado de procesadores de
arquitectura Harvard frente a los tradicionales que seguan la arquitectura Von Neuman.
Esta ltima se caracterizaba porque la UCP se conectaba con una memoria nica, donde
coexistan datos e instrucciones, a travs de un sistema de buses.

En la arquitectura de Von Neuman la UCP se comunica a travs de un sistema de


buses con la memoria, donde se guardan las instrucciones y los datos.
En la arquitectura Harvard son independientes la memoria de instrucciones y la
memoria de datos y cada una dispone de su propio sistema de buses para el acceso. Esta
dualidad, adems de propiciar el paralelismo, permite la adecuacin del tamao de las
palabras y los buses a los requerimientos especficos de las instrucciones y de los datos.
Tambin la capacidad de cada memoria es diferente.
El procesador de los modernos microcontroladores responde a la arquitectura RISC
que se identifica por poseer un repertorio de instrucciones mquina pequeo y simple, de
forma que la mayor parte de las instrucciones se ejecuta en un ciclo de instruccin.
Otra aportacin frecuente que aumenta el rendimiento del computador es el
fomento del paralelismo implcito, que consiste en la segmentacin del procesador (pipeline), descomponindolo en etapas para poder procesar una instruccin diferente en cada
una de ellas y trabajar con varias a la vez.
El alto rendimiento y elevada velocidad que alcanzan los modernos procesadores,
como el que poseen los microcontroladores PIC, se debe a la conjuncin de tres tcnicas:

Arquitectura Harvard.
Arquitectura RISC.
Segmentacin.

Memoria de programa y su labor


El microcontrolador est diseado para que en su memoria de programa se
almacenen todas las instrucciones del programa de control. NO hay posibilidad de utilizar
memorias externas de ampliacin.
Como el programa a ejecutar siempre es el mismo, debe estar grabado de forma
permanente. Los tipos de memoria adecuados para soportar esta funcin admiten cinco
versiones diferentes:

En la arquitectura Harvard la memoria de instrucciones y la de datos son


independientes, lo que permite optimizar sus caractersticas y propiciar el paralelismo. En
la figura anterior, la memoria de instrucciones tiene 1K posiciones de 14 bits cada una,
mientras que la de datos slo dispone de 512 posiciones de 1 byte.

ROM con mascara:

En este tipo de memoria el programa se graba en el


chip durante el proceso de su fabricacin mediante el uso
de mscaras. Los altos costos de diseo e instrumental
solo aconsejan usar este tipo de memoria cuando se
procesan series muy grandes.

EPROM:
La

grabacin de esta memoria se realiza


mediante un dispositivo fsico gobernado desde un
computador personal, que recibe el nombre de
grabador. En la superficie de la cpsula del
microcontroladores existe una ventana de cristal para la
que se puede someter al chip de la memoria a rayos
ultravioletas para producir su borrado y emplearla
nuevamente. Es interesante la memoria EPROM en la fase de diseo y depuracin de los
programas, pero su costo unitario es ms elevado.

OTP (Programable una sola vez):

Este modelo de memoria solo se puede grabar


una vez por parte del usuario, utilizando el mismo
procedimiento
que con la memoria
EPROM.
Posteriormente no se puede borrar. Su bajo precio y la
sencillez de la grabacin aconsejan este tipo de memoria
para prototipos finales y series de produccin cortas.

EEPROM:

La grabacin es similar a las memorias OTP y


EPROM, pero el borrado es mucho ms sencillo al
poderse efectuar la misma forma que el grabado, o
sea, elctricamente. Sobre el mismo zcalo del
grabador puede ser programada y borrada tantas
veces como se quiera, lo cual la hace ideal en la
enseanza y en la creacin de nuevos proyectos. El
PIC16C84 dispone de 1K de palabras de memoria
EEPROM para contener instrucciones y tambin
tiene algunos bytes de memoria de datos de este
tipo para evitar que cuando se retira la alimentacin se pierda la informacin. Aunque se
garantizan 1,000,000 de ciclos de escritura / borrado en una EEPROM, todava s
tecnologa de fabricacin tiene obstculos para alcanzar capacidades importantes y el
tiempo de escritura de las mismas es relativamente grande y con elevado consumo de
energa.

FLASH:

Se trata de una memoria no voltil, de bajo


consumo, que se puede escribir y borrar en el circuito al
igual que las EEPROM, pero suelen disponer de mayor
capacidad que estas ltimas. El borrado solo es posible
con bloques completos y no se puede realizar sobre
posiciones concretas. Son muy recomendables en

aplicaciones en las que sea necesario modificar el programa a lo largo de la vida del
producto, como consecuencia del desgaste o cambios de piezas, como sucede con los
vehculos. Por sus mejores prestaciones est sustituyendo a la memoria EEPROM para
contener instrucciones. De esta forma Microchip comercializa dos microcontroladores
prcticamente iguales, que solo se diferencias en que la memoria de programa de uno de
ellos es tipo EEPROM y la del otro tipo Flash. Se trata del PIC16C84 y el PIC16F84,
respectivamente.

Memoria de Datos:
Los datos que manejan los programas varan continuamente, y esto exige que la
memoria que los contiene deba ser de lectura y escritura, por lo que la memoria RAM
esttica (SRAM) es la ms adecuada, aunque sea voltil.
Hay microcontroladores que disponen como memoria de datos una de lectura y
escritura no voltil, del tipo EEPROM. De esta forma, un corte en el suministro de la
alimentacin no ocasiona la prdida de la informacin, que est disponible al reiniciarse el
programa. El PIC16C84, el PIC16F83 y el PIC16F84 disponen de 64 bytes de memoria
EEPROM para contener datos.
La memoria tipo EEPROM y la tipo Flash pueden escribirse y borrase
elctricamente. Sin necesidad de sacar el circuito integrado del zcalo del grabador
pueden ser escritas y borradas numerosas veces.
Lo ms habitual es encontrar que la memoria de programas y datos est ubicada
toda dentro del microcontrolador, de hecho, actualmente son pocos los microcontroladores
que permiten conectar memoria de programas en el exterior del encapsulado. Las razones
para estas limitaciones estn dadas porque el objetivo fundamental es obtener la mayor
integracin posible y conectar memorias externas consume lneas de E/S que son uno de
los recursos ms preciados de los microcontroladores.
Cuando se requiere aumentar la cantidad de memoria de datos, lo ms frecuente es
colocar dispositivos de memoria externa en forma de perifricos, de esta forma se pueden
utilizar memorias RAM, FLASH o incluso discos duros como los de los ordenadores
personales, mientras que para los clculos y dems operaciones que requieran
almacenamiento temporal de datos se utiliza la memoria RAM interna del
microcontrolador. Esta forma de expandir la memoria de datos est determinada, en la
mayora de los casos, por el tipo de repertorio de instrucciones del procesador y porque
permite un elevado nmero de configuraciones distintas, adems del consiguiente ahorro
de lneas de E/S que se logra con el uso de memorias con buses de comunicacin serie.

Interrupciones
Las interrupciones son esencialmente llamadas a subrutina generadas por los
dispositivos fsicos, al contrario de las subrutinas normales de un programa en ejecucin.
Como el salto de subrutina no es parte del hilo o secuencia de ejecucin programada, el
controlador guarda el estado del procesador en la pila de memoria y entra a ejecutar un
cdigo especial llamado "manejador de interrupciones" que atiende al perifrico especfico
que gener la interrupcin. Al terminar la rutina, una instruccin especial le indica al
procesador el fin de la atencin de la interrupcin. En ese momento el controlador
restablece el estado anterior, y el programa que se estaba ejecutando antes de la
interrupcin sigue como si nada hubiese pasado. Las rutinas de atencin de interrupciones
deben ser lo ms breves posibles para que el rendimiento del sistema sea satisfactorio,
porque normalmente cuando una interrupcin es atendida, todas las dems interrupciones
estn en espera.
Los circuitos para la atencin a las interrupciones y todas las tareas que debe
realizar el procesador para atender al proceso que lo interrumpe son bastante complejos,
la cosa se complica en la secuencia de acciones a realizar desde el momento en que se
desencadena el proceso de interrupcin, hasta que se ejecuta el programa que lo atiende,
y en la secuencia de acciones posteriores a la atencin. Piense en cuantas cosas debe
hacer su organismo ante una interrupcin. Los procesos de atencin a interrupciones
tienen la ventaja de que se implementan por hardware ubicado en el procesador, as que
es un mtodo rpido de hacer que el procesador se dedique a ejecutar un programa
especial para atender eventos que no pueden esperar por mecanismos lentos como el de
encuesta.
En trminos generales, un proceso de interrupcin y su atencin por parte del
procesador, tiene la siguiente secuencia de acciones:
1. En el mundo real se produce el evento para el cual queremos que el procesador
ejecute un programa especial, este proceso tiene la caracterstica de que no puede
esperar mucho tiempo antes de ser atendido o no sabemos en qu momento debe
ser atendido.
2. El circuito encargado de detectar la ocurrencia del evento se activa, y como
consecuencia, activa la entrada de interrupcin del procesador.
3. La unidad de control detecta que se ha producido una interrupcin y levanta una
bandera para registrar esta situacin; de esta forma si las condiciones que
provocaron el evento desaparecen y el circuito encargado de detectarlo desactiva la
entrada de interrupcin del procesador, sta se producir de cualquier modo,
porque ha sido registrada.
4. La unidad de ejecucin termina con la instruccin en curso y justo antes de
comenzar a ejecutar la siguiente comprueba que se ha registrado una interrupcin

5. Se desencadena un proceso que permite guardar el estado actual del programa en


ejecucin y saltar a una direccin especial de memoria de programas, donde est la
primera instruccin de la subrutina de atencin a interrupcin.
6. Se ejecuta el cdigo de atencin a interrupcin, esta es la parte consciente de
todo el proceso porque es donde se realizan las acciones propias de la atencin a
la interrupcin y el programador juega su papel.
7. Cuando en la subrutina de atencin a interrupcin se ejecuta la instruccin de
retorno, se desencadena el proceso de restauracin del procesador al estado en
que estaba antes de la atencin a la interrupcin.

Lneas de E / S para los controladores de perifricos:


A excepcin de dos patitas destinadas a recibir la alimentacin, otras dos para el
cristal de cuarzo, que regula la frecuencia de trabajo, y una ms para provocar el Reset,
las restantes patitas de un microcontrolador sirven para soportar su comunicacin con los
perifricos externos que controla.
Las lneas de E / S que se adaptan con los perifricos manejan informacin en
paralelo y se agrupan en conjuntos de ocho, que reciben el nombre de Puertos. Hay
modelos con lneas que soportan la comunicacin en serie; otros disponen de conjuntos
de lneas que implementan puertas de comunicacin para diversos protocolos, como el
I2C, el USB, etc.
Tpicamente cualquier pin de E/S puede ser considerada E/S de propsito general,
pero como los microcontroladores no pueden tener infinitos pines, ni siquiera todos los
pines que queramos, las E/S de propsito general comparten los pines con otros
perifricos. Para usar un pin con cualquiera de las caractersticas a l asignadas debemos
configurarlo mediante los registros destinados a ellos.

Recursos auxiliares:
Segn las aplicaciones a las que orienta el fabricante cada modelo de
microcontroladores, incorpora una diversidad de complementos que refuerzan la potencia
y la flexibilidad del dispositivo. Entre los recursos ms comunes se citan a los siguientes:

Circuito de reloj, encargado de generar los impulsos que sincronizan el


funcionamiento de todo el sistema.
Temporizadores, orientados a controlar tiempos.
Perro Guardin (watchdog), destinado a provocar una reinicilizacin cuando el
programa queda bloqueado.

Conversores AD y DA, para poder recibir y enviar seales analgicas.


Comparadores analgicos, para verificar el valor de una seal analgica.
Sistema de proteccin ante fallos de la alimentacin.
Estado de Reposo, en el que el sistema queda congelado y el consumo de energa
se reduce al mnimo.

Temporizadores y contadores
Son circuitos sincrnicos para el conteo de los pulsos que llegan a su poder para
conseguir la entrada de reloj. Si la fuente de un gran conteo es el oscilador interno del
microcontrolador es comn que no tengan un pin asociado, y en este caso trabajan como
temporizadores. Por otra parte, cuando la fuente de conteo es externa, entonces tienen
asociado un pin configurado como entrada, este es el modo contador.
Los temporizadores son uno de los perifricos ms habituales en los
microcontroladores y se utilizan para muchas tareas, como por ejemplo, la medicin de
frecuencia, implementacin de relojes, para el trabajo de conjunto con otros perifricos
que requieren una base estable de tiempo entre otras funcionalidades. Es frecuente que
un microcontrolador tpico incorpore ms de un temporizador/contador e incluso algunos
tienen arreglos de contadores, este perifrico es un elemento casi imprescindible y es
habitual que tengan asociada alguna interrupcin. Los tamaos tpicos de los registros de
conteo son 8 y 16 bits, pudiendo encontrar dispositivos que solo tienen temporizadores de
un tamao o con ms frecuencia con ambos tipos de registro de conteo.

Conversor analgico/digital
Como es muy frecuente el trabajo con seales analgicas, stas deben ser
convertidas a digital y por ello muchos microcontroladores incorporan un conversor
analgico-digital, el cual se utiliza para tomar datos de varias entradas diferentes que se
seleccionan mediante un multiplexor.
Las resoluciones ms frecuentes son 8 y 10 bits, que son suficientes para
aplicaciones sencillas. Para aplicaciones en control e instrumentacin estn disponibles
resoluciones de 12bit, 16bit y 24bit. Tambin es posible conectar un convertidor externo,
en caso de necesidad.

Puertos de comunicacin
Puerto serie
Este perifrico est presente en casi cualquier microcontrolador, normalmente en
forma de UART (Universal Asynchronous Receiver Transmitter) o USART (Universal
Synchronous Asynchronous Receiver Transmitter), dependiendo de si permiten o no el
modo sincrnico de comunicacin.
El destino comn de este perifrico es la comunicacin con otro microcontrolador o
con una PC y en la mayora de los casos hay que agregar circuitos externos para
completar la interfaz de comunicacin. La forma ms comn de completar el puerto serie
es para comunicarlo con una PC mediante la interfaz EIA-232 (ms conocida como RS232), es por ello que muchas personas se refieren a la UART o USART como puerto serie
RS-232, pero esto constituye un error, puesto que este perifrico se puede utilizar para
interconectar dispositivos mediante otros estndares de comunicacin. En aplicaciones
industriales se utiliza preferiblemente RS-485 por su superior alcance en distancia,
velocidad y resistencia al ruido.

SPI
Este tipo de perifrico se utiliza para comunicar al microcontrolador con otros
microcontroladores o con perifricos externos conectados a l, por medio de una interfaz
muy sencilla. Hay solo un nodo controlador que permite iniciar cualquier transaccin, lo
cual es una desventaja en sistemas complejos, pero su sencillez permite el aislamiento
galvnico de forma directa por medio de opto acopladores.

I2C
Cumple las mismas funciones que el SPI, pero requiere menos seales de
comunicacin y cualquier nodo puede iniciar una transaccin. Es muy utilizado para
conectar las tarjetas grficas de las computadoras personales con los monitores, para que
estos ltimos informen de sus prestaciones y permitir la autoconfiguracin del sistema de
vdeo.

USB
Los microcontroladores son los que han permitido la existencia de este sistema de
comunicacin. Es un sistema que trabaja por polling (monitorizacin) de un conjunto de
perifricos inteligentes por parte de un amo, que es normalmente un computador personal.
Cada modo inteligente est gobernado inevitablemente por un microcontrolador.

Ethernet
Es el sistema ms extendido en el mundo para redes de rea local cableadas. Los
microcontroladores ms poderosos de 32 bits se usan para implementar perifricos lo
suficientemente poderosos como para que puedan ser accesados directamente por la red.
Muchos de los enrutadores caseros de pequeas empresas estn construidos en base a
un microcontrolador que hace del cerebro del sistema.

Can
Este protocolo es del tipo CSMA/CD con tolerancia a elevados voltajes de modo
comn y orientado al tiempo real. Este protocolo es el estndar ms importante en la
industria automotriz (OBD). Tambin se usa como capa fsica del "Field bus" para el
control industrial.

Otros puertos de comunicacin


Hay una enorme cantidad de otros buses disponibles para la industria automotriz
(linbus) o de medios audiovisuales como el i2s, IEEE 1394. Es usuario se los encontrar
cuando trabaje en algn rea especializada.

Comparadores
Son circuitos analgicos basados en amplificadores operacionales que tienen la
caracterstica de comparar dos seales analgicas y dar como salida los niveles lgicos 0
o 1 en dependencia del resultado de la comparacin. Es un perifrico muy til para
detectar cambios en seales de entrada de las que solamente nos interesa conocer
cuando est en un rango determinado de voltaje.

Modulador de ancho de pulsos


Los PWM (Pulse Width Modulator) son perifricos muy tiles sobre todo para el
control de motores, sin embargo hay un grupo de aplicaciones que pueden realizarse con
este perifrico, dentro de las cuales podemos citar: inversin DC/AC para UPS, conversin
digital analgica D/A, control regulado de luz (dimming) entre otras.

Memoria de datos no voltil


Muchos microcontroladores han incorporado estos tipos de memoria como un
perifrico ms, para el almacenamiento de datos de configuracin o de los procesos que
se controlan. Esta memoria es independiente de la memoria de datos tipo RAM o la
memoria de programas, en la que se almacena el cdigo del programa a ejecutar por el
procesador del microcontrolador. Muchos de los microcontroladores PIC, incluyen este tipo
de memoria, tpicamente en forma de memoria EEPROM, incluso algunos de ellos
permiten utilizar parte de la memoria de programas como memoria de datos no voltil, por
lo que el procesador tiene la capacidad de escribir en la memoria de programas como si
sta fuese un perifrico ms.

Circuito Lgicos:
Algunas instrucciones de programa utilizadas por un microcontrolador funcionan de
la misma manera que las compuertas lgicas, pero en forma de comandos. A
continuacin se explicar el principio de su funcionamiento.

Compuerta Y (AND):

Una compuerta lgica Y dispone de dos o ms entradas y de una salida. En este


caso la compuerta utilizada dispone de slo dos entradas. Un uno lgico (1) aparecer en
su salida slo en caso de que ambas entradas (A y B) sean llevadas a alto (1). La tabla a
la derecha es la tabla de verdad que muestra la relacin entre las entradas y salidas de la
compuerta. El principio de funcionamiento es el mismo cuando la compuerta disponga de

ms de dos entradas: la salida proporciona un uno lgico (1) slo si todas las entradas son
llevadas a alto (1).

Cualquier otra combinacin de voltajes de entrada proporcionar un cero lgico (0)


en su salida. Utilizada en el programa, la operacin Y lgico es realizada por una
instruccin de programa. Por ahora basta con conocer qu Y lgico en un programa se
refiere a la realizacin de este tipo de operacin sobre los bits correspondientes de dos
registros diferentes.

Compuerta O (OR):

De manera similar, la compuerta O tambin dispone de dos o ms entradas y de


una salida. Si la compuerta dispone de slo dos entradas, es aplicable lo siguiente: la
salida proporciona un uno lgico (1) si una u otra entrada (A o B) es llevada a alto (1). En
caso de que la compuerta O disponga de ms de dos entradas, es aplicable lo siguiente:
La salida proporciona un uno lgico (1) si por lo menos una entrada es llevada a alto (1).
Si todas las entradas estn a cero lgico (0), la salida estar a cero lgico (0) tambin.

En un programa, la operacin O lgico se realiza de la misma manera que la


operacin Y.

Compuerta NO (NOT):

La compuerta lgica NO dispone de una sola entrada y una sola salida, por lo que
funciona muy simplemente. Cuando un cero lgico (0) aparezca en su entrada, la salida
proporciona un uno lgico (1) y viceversa. Esto significa que esta compuerta invierte las
seales por s mismas y por eso es denominada inversor.

En el programa la operacin lgica NO se realiza sobre un byte. El resultado es


un byte con los bits invertidos. Si los bits de un byte se consideran nmero, el valor
invertido es un complemento a ese nmero. El complemento de un nmero es el valor que
se aade al nmero hasta llegar al mayor nmero binario de 8 dgitos. En otras palabras,
la suma de un dgito de 8 nmeros y de su complemento es siempre 255.

Compuerta OR- Exclusiva (XOR):

La compuerta XOR (o OR - EXCLUSIVA) es un poco complicada en comparacin


con las dems. Representa una combinacin de todas las compuertas anteriormente

descritas. La salida proporciona un uno lgico (1) slo si sus entradas estn en estados
lgicos diferentes.

En el programa, esta operacin se utiliza con frecuencia para comparar dos bytes.
La resta se puede utilizar con el mismo propsito (si el resultado es 0, los bytes son
iguales). A diferencia de la resta, la ventaja de esta operacin lgica es que no es posible
obtener los resultados negativos.

Registros:

Un registro o una celda de memoria es un circuito electrnico que puede memorizar


el estado de un byte.

Registros SFR
A diferencia de los registros que no tienen ninguna funcin especial y
predeterminada, cada microcontrolador dispone de un nmero de registros de funciones
especiales (SFR), con la funcin predeterminada por el fabricante. Sus bits estn
conectados a los circuitos internos del microcontrolador tales como temporizadores,
convertidores A/D, osciladores entre otros, lo que significa que directamente manejan el
funcionamiento de estos circuitos, o sea del microcontrolador. Imagnese ocho
interruptores que manejan el funcionamiento de un circuito pequeo dentro del
microcontrolador. Los registros SFR hacen exactamente lo mismo.

En otras palabras, el estado de los bits de registros se fija dentro de programa, los
registros SFR dirigen los pequeos circuitos dentro del microcontrolador, estos circuitos se
conectan por los pines del microcontrolador a un dispositivo perifrico utilizado para
Bueno, depende de usted.

Microcontroladores PIC y sus variedades


Los microcontroladores PIC, son recomendados cuando uno est recin indagando
en la programacin de estos circuitos integrados.
Microchip es la empresa que fabrica los microcontroladores PIC. En los ltimos
tiempos esta familia de microcontroladores ha revolucionado el mundo de las aplicaciones
electrnicas. Tienen una facilidad de uso y programacin tales, que junto a las inmensas
posibilidades de E/S que brindan han conquistado a programadores y desarrolladores. Su
principal ventaja (y segn sus detractores la principal desventaja) es su carcter general,
la flexibilidad que les permite ser empleados en casi cualquier aplicacin. Otras familias de
microcontroladores son ms eficaces en aplicaciones especficas.
La familia PIC se divide en cuatro gamas, gamas que podemos llamar mini, baja,
media y alta. Las principales diferencias entre estas gamas radica en el nmero de
instrucciones y su longitud, el nmero de puertos y funciones, lo cual se refleja en el
encapsulado, la complejidad interna y de programacin, y en el nmero de aplicaciones.

El nombre verdadero de este microcontrolador es PICmicro (Peripheral Interface


Controller), conocido bajo el nombre PIC. Su primer antecesor fue creado en 1975 por la
compaa General Instruments. Este chip denominado PIC1650 fue diseado para
propsitos completamente diferentes. Diez aos ms tarde, al aadir una memoria
EEPROM, este circuito se convirti en un verdadero microcontrolador PIC. Hace unos
pocos aos la compaa Microchip Technology fabric la 5 billonsima muestra.

Todos los microcontroladores PIC utilizan una arquitectura Harvard, lo que quiere
decir que su memoria de programa est conectada a la CPU por ms de 8 lneas. Hay
microcontroladores de 12, 14 y 16 bits, dependiendo de la anchura del bus. La tabla
anterior muestra las caractersticas principales de estas tres categoras.

Como se puede ver en la tabla de anterior, salvo los monstruos de 16 bits PIC
24FXXX y PIC 24HXXX todos los microcontroladores tienen la arquitectura Harvard de 8
bits y pertenecen a una de las tres grandes grupos. Por eso, dependiendo del tamao de
palabra de programa existen la primera, la segunda y la tercera categora de
microcontroladores, es decir microcontroladores de 12, 14 o 16 bits. Puesto que disponen
del ncleo similar de 8 bits, todos utilizan el mismo juego de instrucciones y el esqueleto
bsico de hardware conectado a ms o menos unidades perifricas.
Los microcontroladores PIC con palabras de programa de 14 bits parecen ser la
mejor opcin para los principiantes.

Algunas ventajas de los microcontroladores PIC de Microchip:

Eficiencia del cdigo: permiten una gran compactacin de los programas.


Rapidez de ejecucin: a frecuencia de 20MHz->5 millones de instr. /seg.
Seguridad en acceso por la separacin de memoria de datos y de programa.
Juego reducido de instrucciones y de fcil aprendizaje.
Compatibilidad de pines y cdigo entre dispositivos de la misma familia o sin
reduccin de las prestaciones internas (muy verstiles).
Gran variedad de versiones en distintos encapsulados (desde 8 hasta 84 pines) sin
reduccin de las prestaciones internas (muy verstiles).
Posibilidad de proteccin del cdigo muy fiable.
Herramientas de desarrollo software y hardware abundantes y de bajo costo.

Familia de controladores Pic (2004-2007):

FamiliaPIC10F20x 4 Dispositivos Familia PIC12CXXX/12FXXX 12/14 bits 8


Dispositivos.
Familia PIC16C5X 12 bits 9 Dispositivos Familia PIC16CXXX/16FXXX 14 bits 74
Dispositivos.
Familia PIC18CXXX/18FXXX 16 bits 82 Dispositivos.

Versiones de Memoria de Programa: OTP, EPROM, EEPROM y FLASH.

Algunas caractersticas de las familias anteriores:


FamiliaPIC10F20x:

Encapsulados de 6 pines (SOT). Oscilador


interno 4MHz.
Memoria de programa de 12 bits y datos de 8
bits.
Juego de 33 instrucciones.

Familia PIC12CXXX/12FXXX:

Encapsulados de 8 pines (DIP SOIC).


Instrucciones de 12 14 bits en Memoria de Programa.
Juego de 33 35 instrucciones.
Disponibles con EEPROM de datos.
Modelos con mdulos de conversin A/D.
Permiten alimentacin a baja tensin de hasta 2,5V.

FamiliaPIC16C5X:

Encapsulados de 14, 18, 20 y 28 pines.


Instrucciones de 12 bits.
Juego de 33 instrucciones.
Es la familia base de partida de los PIC.

Familia PIC16CXXX/16FXXX + PIC 14000:

Encapsulados desde 18 hasta 68 pines (DIP, SSOP, PLCC,

QFP).

Instrucciones de 14 bits en Memoria de Programa.


Juego de 35 instrucciones.
Gran variedad de mdulos integrados.

Familia PIC18CXXX/18FXXX:

Encapsulados de 18 a 80 pines.
Memoria de Programa de 16 bits.
Juego de 77 instrucciones (multiplicacin).

Microcontroladores PIC en la actualidad:


PICs de 32 bits:
Microchip Technology lanzo en noviembre de 2007 los nuevos microcontroladores
de 32 bits con una velocidad de procesamiento de 1.5 DMIPS/MHz con capacidad HOST
USB. Estos MCUs permiten un procesamiento de informacin increble con un ncleo de
procesador de tipo M4K.

PICs ms comnmente usados:

PIC12C508/509 (encapsulamiento reducido de


8 pines, oscilador interno, popular en pequeos
diseos como el iPod remote)

PIC16F84(Considerado obsoleto, pero imposible de


descartar y muy popular) PIC16F84A (Buena actualizacin
del anterior, algunas versiones funcionan a 20 MHz,
compatible 1:1)

PIC12F629/675
PIC16F628
PIC16F88
(Nuevo
sustituto del PIC16F84A con ms memoria, oscilador
interno, PWM, etc. que podra convertirse en popular
como su hermana menor). La familia PIC16F87X y
PIC16F87XA (los hermanos mayores del PIC16F84 y
PIC16F84A, con cantidad de mejoras incluidas en
hardware. Bastante comn en proyectos de
aficionados)

PIC18F2455 y similares con puerto USB 2.0


PIC18F2550 PIC18F452 PIC18F4550 dsPIC30F3011
(Ideales para control electrnico de motores elctricos
de induccin).

Programacin del PIC:


Para transferir el cdigo de un ordenador al PIC normalmente se usa un dispositivo
llamado programador. La mayora de PICs que Microchip distribuye hoy en da incorporan
ICSP (In Circuit Serial Programming, programacin serie incorporada) o LVP (Low Voltage
Programming, programacin a bajo voltaje), lo que permite programar el PIC directamente
en el circuito destino. Para la ICSP se usan los pines RB6 y RB7 como reloj y datos y el
MCLR para activar el modo programacin aplicando un voltaje de 13 voltios.
Existen muchos programadores de PICs, desde los ms simples que dejan al
software los detalles de comunicaciones, a los ms complejos, que pueden verificar el
dispositivo a diversas tensiones de alimentacin e implementan en hardware casi todas las
funcionalidades. Muchos de estos programadores complejos incluyen ellos mismos PICs
pre programado, como interfaz para enviar las rdenes al PIC que se desea programar.
Uno de los programadores ms simples es el TE20, que utiliza la lnea TX del puerto
RS232 como alimentacin y las lneas DTR y CTS para mandar o recibir datos cuando el
microcontrolador est en modo programacin. El software de programacin puede ser el
ICprog, muy comn entre la gente que utiliza este tipo de microcontroladores.

Programadores:

PICStart Plus (puerto serie y USB).


Promate II (puerto serie).
MPLAB PM3 (puerto serie y USB).
ICD2 (puerto serie y USB).
PICKit 1 (USB) IC-Prog 1.06B.
PICAT 1.25 (puerto USB2.0 para PICs y Atmel).
WinPic 800 (puerto paralelo, serie y USB).
Terusb1.0.

Depuradores integrados:

ICD (Serie).
ICD2 (USB).

Emuladores:

Proteus ISIS.
ICE2000 (puerto paralelo, convertidor a USB disponible).
ICE4000 (USB).
PIC EMU.
PIC CDlite.

Juego de Instrucciones:
El juego de instrucciones para los microcontroladores 16F8XX incluye 35
instrucciones en total. La razn para un nmero tan reducido de instrucciones yace en la
arquitectura RISC. Esto quiere decir que las instrucciones son bien optimizadas desde el
aspecto de la velocidad operativa, la sencillez de la arquitectura y la compacidad del
cdigo. Lo malo de la arquitectura RISC es que se espera del programador que haga
frente a estas instrucciones. Por supuesto, esto es relevante slo si se utiliza el lenguaje
ensamblador para la programacin.

Tiempo de ejecucin de instrucciones:


Todas las instrucciones se ejecutan en un ciclo. Las nicas excepciones pueden ser
las instrucciones de ramificacin condicional o las instrucciones que cambian el contenido
del contador de programa. En ambos casos, dos ciclos de reloj son necesarios para la
ejecucin de la instruccin, mientras que el segundo ciclo se ejecuta como un NOP (No
operacin). Las instrucciones de un ciclo consisten en cuatro ciclos de reloj. Si se utiliza un
oscilador de 4 MHz, el tiempo nominal para la ejecucin de la instruccin es 1S. En
cuanto a las instrucciones de ramificacin, el tiempo de ejecucin de la instruccin es 2S.

Juego de instrucciones de los microcontroladores PIC de 14 bits:

1. Si un registro de E/S est modificado, el valor utilizado ser el valor presentado en


los pines del microcontrolador.
2. Si la instruccin se ejecuta en el registro TMR y si d=1, el pre-escalador ser
borrado.
3. Si la instruccin se ejecuta en el registro TMR y si d=1, el pre-escalador ser
borrado.

Arquitectura de los microcontroladores PIC de 8 bits:

Evolucin del Microcontrolador


A medida que fue transcurriendo el tiempo los microcontroladores fueron tomando
mayor relevancia en el mbito de la electrnica y la computacin, esto debido a los
grandes resultados que se obtienen al integrarlos a los distintos circuitos elctricos
tomando muchas veces el control completo de un sistema y tambin a la gran evolucin
que tuvieron durante el transcurso del tiempo en cuanto a su arquitectura y
funcionamiento, continuacin les presentamos una pequea lista de la evolucin de los
microcontroladores.

8048 (Intel):

El primer microcontrolador. Antiguo y un


poco obsoleto (para los estndares de hoy en
da), es an muy popular debido a su bajo precio,
disponibilidad y un enorme rango de herramientas
de desarrollo. Tiene arquitectura de Harvard
modificada con programa ROM en chip con una
memoria RAM de 64 a 256 bytes adicionales en el chip. La entrada salida tiene su propio
espacio de memoria.

8051 (Intel y otros):

Segunda generacin de microcontroladores Intel, ha marcado muchas de las


caractersticas actuales. Tiene un diseo un
poco raro, pero es muy potente y sencillo de
programar (una vez que se conoce). Su
arquitectura es Harvard Modificada con
espacio de direcciones separadas para
memoria de programa y memoria de datos.
El 8051 puede direccionar hasta 64k de
memoria de datos externa, y solo puede acceder a ella mediante direccionamiento
indirecto. 80c196 (MCS-96)

80186,80188 (Intel):

Estos chips son, fundamentalmente, la versin en


microcontrolador del 8086 y del 8088 (del famoso IBM
PC).
El chip tiene: 2 Canales de DMA (acceso directo a
memoria) 2 Contadores/temporizadores. Controlador de
interrupcin programable. Refresco de RAM dinmica.
Una de las mayores ventajas de estos dispositivos es que
se pueden utilizar herramientas de desarrollo estndar para PC (Compiladores,
ensambladores, etc.). 80386 EX Intel

El 80386 EX:

Es por supuesto un 386 vestido de microcontrolador,


dentro del chip existen:
Entrada/Salida serie. Manejo de la alimentacin del
chip.
DMA
(Acceso
directo
a
memoria)
Contadores/Temporizadores. Circuito de refresco para
memoria DRAM. Una de las mayores ventajas de estos
dispositivos es que se pueden utilizar herramientas de desarrollo estndar para PC
(Compiladores, ensambladores, etc.).

65C02/W65C816S/W65C134S WDC (Western Design Center):


El Western Design Center Inc. es el dueo original y diseador
del microcontrolador 65C02 de 8-bit que se us en el Apple
original. Para el ordenador Commodore y el Atari WDC
desarrollo el microprocesador 65C816 de 16 bits.

El W65C816S es un microcontrolador con un 65C02


dentro.
El W65C134S es un microcontrolador hecho con un
65C816.

68HC05 (Motorola):

Est basado en el antiguo 6800, tiene arquitectura VonNeuman donde las instrucciones, datos, entrada/salida y
temporizadores ocupan un mismo espacio de memoria.
El puntero de pila tiene un ancho de palabra de 5 bits, lo que
limita la pila a 32 posiciones, algunos modelos incluyen:
Conversor A/D. Sintetizador PLL.E/S serie.

68HC11 (Motorola y Toshiba):

El popular 68HC11 es un poderoso microcontrolador de


Motorola de 8 bits con las siguientes caractersticas:

Direcciones de 16 bits.
Juego de instrucciones similar a la familia 68xx. (6801,
6805, 6809)
Tiene un nico espacio de memoria principal donde
estn las instrucciones, datos, E/S, y temporizadores.

PIC (Microchip):

Aunque el xito de los microcontroladores PIC es


reciente, su introduccin en el mercado se realiz hace
20 aos .Los microcontroladores PIC fueron los primeros
microcontroladores RISC, RISC generalmente implica
que la simplicidad de diseo permite aadir ms
caractersticas a bajo precio y la lnea PIC no es una
excepcin. Aunque tiene pocas instrucciones (33
instrucciones el 16C5X mientras que el Intel 8048 tiene
ms de 90), la lnea PIC tiene las caractersticas siguientes:
Buses de instrucciones y datos separados (arquitectura Harvard) lo que permite el
acceso simultneo a las instrucciones y a los datos, y el solapamiento de algunas

operaciones para incrementar las prestaciones de proceso. Los microcontroladores PIC


estn ganando popularidad debido a su bajo costo, pequeo tamao y a su bajo consumo
pueden ser usados en reas en las que antes se pensaba que eran inapropiados.

COP400 Familia:

La familia C0P400 es un microcontrolador de 4


bit P2CMOS que ofrece desde 512 hasta 2K de ROM
y desde 324 hasta 1604 de memoria RAM. Lejos
de la vieja tecnologa, los microcontroladores de 4 bits
tienen un importante mercado y tienen ms aplicaciones que nunca. Estos dispositivos son
muy verstiles, hay ms de 60 diferentes.

COP800 Familia (National Semiconductor):

La familia COP800 Basic es un microcontrolador de 8


bits totalmente esttico, fabricado usando puertas
doubl metal silicn de tecnologa microCMOS.
Este microcontrolador de bajo costo contiene:
Temporizadores. Lgica de Interrupcin. Memoria ROM.
Memoria RAM. Entrada/Salida Memoria de E/S
mapeada. Entrada/Salida serie Microwire. UART
Muchos temporizadores/Contadores de 16 bits Interrupciones vectorizadas. Comparador.
Temporizador WATCHDOG. Monitor de reloj. Conversor A/D de 8 canales. Proteccin
Brownout.

Microcontroladores en la actualidad.
El microcontrolador es uno de los logros ms sobresalientes del siglo XX. Hace un
cuarto de siglo tal afirmacin habra parecido absurda. Pero cada ao, el microcontrolador
se acerca ms al centro de nuestras vidas, forjndose un sitio en el ncleo de una
mquina tras otra. Su presencia ha comenzado a cambiar la forma en que percibimos el
mundo e incluso a nosotros mismos. Cada vez se hace ms difcil pasar por alto el
microcontrolador como otro simple producto en una larga lnea de innovaciones
tecnolgicas.

Ninguna otra invencin en la historia se ha diseminado tan aprisa por todo el mundo
o ha tocado tan profundamente tantos aspectos de la existencia humana. Hoy existen casi
15,000 millones de microchips de alguna clase en uso. De cara a esa realidad, quin
puede dudar que el microcontrolador no slo est transformando los productos que
usamos, sino tambin nuestra forma de vivir y, por ltimo, la forma en que percibimos la
realidad?
No obstante que reconocemos la penetracin del microcontrolador en nuestras
vidas, ya estamos creciendo indiferentes a la presencia de esos miles de mquinas
diminutas que nos encontramos sin saberlo todos los das. As que, antes de que se
integre de manera demasiado imperceptible en nuestra diaria existencia, es el momento
de celebrar al microcontrolador y la revolucin que ha originado, para apreciar el milagro
que es en realidad cada uno de esos chips de silicio diminutos y meditar acerca de su
significado para nuestras vidas y las de nuestros descendientes.
Primero, la revolucin. Si desechramos el microchip de todas y cada una de las
aplicaciones en las que ahora encuentra un hogar, terminaramos aturdidos y
aterrorizados por la prdida. La cocina moderna quedara casi inservible porque el horno
de microondas, la mquina lavavajillas y la mayora de otros aparatos domsticos no
funcionaran ms. El televisor y la videocasetera se reduciran a la negrura, el equipo
estereofnico se volvera mudo y la mayora de los relojes se detendran. El automvil no
arrancara. Los aviones no podran despegar del suelo. El sistema telefnico quedara
muerto, al igual que la mayora de las luces de las calles, termostatos y, desde luego, unos
500 millones de computadoras. Y stas son tan slo las aplicaciones ms evidentes.
Todas las fbricas del mundo industrial pararan y tambin la red elctrica, las bolsas de
valores y el sistema bancario global. Pero vayamos ms a fondo: los marcapasos se
detendran tambin, al igual que el equipo quirrgico y los sistemas de supervisin fetal.
Todo debido a la prdida de un diminuto cuadradito de silicio del tamao de la ua de un
dedo, que pesa menos que una estampilla postal, y construido tan slo de cristal, fuego,
agua y metal.
Desde luego, ste es el milagro. Decenas de miles de microcontroladores se
integran todos los das en las plantas de manufactura ms avanzadas jams conocidas,
donde un simple grnulo de polvo puede significar el desastre, donde los procesadores
ocurren en ambientes ms limpios que ningn otro sitio en la tierra. Incluso el agua que
utiliza para enjuagar las superficies de los chips terminados es ms pura que la que se
utiliza en la ciruga a corazn abierto. Y no obstante, pese a un proceso de manufactura
extraordinariamente refinado, los microchips se producen en volumen a razn de ms de
1,000 millones de unidades por ao. Para poner esta complejidad en perspectiva,
imagnese que dentro de cada microcontrolador diminuto existe una estructura tan
compleja como una ciudad de tamao mediano, incluidas todas sus lneas de energa
elctrica, lneas telefnicas, lneas de drenaje, edificios, calles y casas. Ahora imagine que
en esa misma ciudad, millones de personas se desplazan a la velocidad de la luz y con la

sincronizacin perfecta en una danza de coreografa muy complicada. Y eso es tan slo
un chip. De todas las estadsticas asombrosas que se utilizan para describir el mundo del
microcontrolador, ninguna es ms extraordinaria que sta: el nmero total de transistores
que integran todos los microchips que se producirn en el mundo este ao es equivalente
al nmero de gotas de lluvia que caern en California durante ese mismo periodo.
Pero el microcontrolador ya ha eclipsado hasta a la Revolucin Industrial.
Evolucionando a mayor velocidad que ningn otro invento en la historia, la capacidad del
microprocesador ha aumentado 10,000 veces en los ltimos 25 aos. Lo que es notable, y
quiz un poco atemorizante, es que por todos los indicios, estamos tan slo a la mitad de
la historia del microcontrolador. No es muy aventurado sugerir que la humanidad tardar
otro siglo en comprender todas las implicaciones de esta revolucin. Por lo tanto, todos los
milagros de que somos testigos hoy como resultado del microcontrolador pueden ser si
acaso una pequesima fraccin de todas las maravillas que obtendremos de este
dispositivo hacia el nuevo milenio.
El ms grande atributo del microcontrolador es que puede integrar inteligencia casi
a cualquier artefacto. Se le puede entrenar para adaptarse a su entorno, responder a
condiciones cambiantes y volverse ms eficiente y que responda a las necesidades nicas
de sus usuarios. Desmonte cualquier rincn de la vida moderna, retire la capa exterior de
cajas y material de construccin y luces parpadeantes, y como semillas en una maceta,
aparecern microcontroladores por millones.

Principales mbitos donde intervienen los microcontroladores:


Los siguientes son algunos campos en los que los microcontroladores tienen gran uso:

En la industria del automvil: Control de motor, alarmas, regulador del servofreno,


dosificador, etc.
En la industria de los electrodomsticos: control de calefacciones, lavadoras,
cocinas elctricas, etc.
En informtica: como controlador de perifricos. Por ejemplo para controlar
impresoras, plotters, cmaras, scanner terminales, unidades de disco, teclados,
comunicaciones (mdems), etc.
En la industria de imagen y sonido: tratamiento de la imagen y sonido, control de los
motores de arrastre del giradiscos, magnetfono, video, etc.

En la industria, en general se utilizan en:

Regulacin: todas las familias de microcontroladores incorporan en alguna de sus


versiones conversores A/D y D/A, para la regulacin de la velocidad de las
mquinas, de niveles, de temperatura, etc.

Automatismos: La enorme cantidad de lneas de entrada y salidas, y su inmunidad


al ruido le hacen muy valioso para el control secuencial de procesos. Por ejemplo
control de mquinas, herramientas, apertura y cierre automtico de puertas segn
condiciones, plantas empaquetadoras, aparatos de maniobra de ascensores, etc.

Robtica: para control de los motores y captura de seales de los diferentes


sensores, fabricacin de controladores robticos para sistemas automticos, etc.

Instrumentos porttiles compactos:

Radio paginador numrico (beeper).


Planmetro electrnico.
Nivelmetro digital.
Identificador-probador de circuitos integrados.
Tacmetro digital.
Panel frontal de un osciloscopio.
Controlador de display LCD.
Analizador de espectros, etc.

Dispositivos autnomos:

Fotocopiadoras.
Mquinas de escribir.
Selector, Codificador decodificador de TV.
Localizador de peces.
Telfonos de tarjeta.
Telfonos celulares.
Cerraduras electrnicas.
Sistemas de seguridad.

Empresas fabricantes de microcontroladores


Algunas empresas dedicadas al rubro de la fabricacin de los microcontroladores y
su mayor aporte en los comienzos de la carrera de los microcontroladores.

Microchip:

Microchip Technology Inc. es una empresa


fabricante de microcontroladores, memorias y
semiconductores
analgicos,
situada
en
Chandler,
Arizona,
EE.
UU.
Su Producto ms popular son los microcontroladores PIC de 8 bits.

Atmel Corporation:

Atmel es una compaa de semiconductores, fundada en


1984. Su lnea de productos incluye microcontroladores
(incluyendo derivados del 8051, el AT91SAM basados en ARM, y
sus arquitecturas propias AVR y AVR32), dispositivos de
radiofrecuencia, memorias EEPROM y Flash, ASICs, WiMAX, y
muchas otras. Tambin tiene capacidad de ofrecer soluciones del tipo system on chip
(SoC).

Freescale Semiconductor:

Freescale Semiconductor es una compaa global


lder en la industria de semiconductores enfocada proveer
procesamiento embebido y productos de conectividad.
Actualmente, se enfoca al suministro de productos para la
industria automotriz, de redes, comunicaciones inalmbricas, control industrial e industrias
de consumo electrnico. Con se oferta de procesadores embebidos y de productos
complementarios, proporciona una solucin completa de semiconductores y software.

Texas Instruments:

Texas Instruments o TI, es una empresa


norteamericana
que
desarrolla
y
comercializa
semiconductores y tecnologa para sistemas de cmputo. Igualmente, es el mayor
productor de procesadores digitales de seal y semiconductores analgicos. TI es el tercer
mayor fabricante de semiconductores del mundo tras Intel y Samsung y es el mayor
suministrador de circuitos integrados para telfonos mviles. Otras reas de actividad
incluyen circuitos integrados para mdem de banda ancha, perifricos para ordenadores,
dispositivos digitales de consumo y RFID.

ZiLOG Inc.

ZiLOG Inc. es un fabricante de microprocesadores y


microcontroladores. Su producto ms conocido es el Zilog Z80 de 8
bits.

Motorola:
Motorola Empresa dedicada a fabricar microprocesadores y
microcontroladores entre otros productos, su mayor logro en la
industria fue poner al Mercado un microprocesador de 8 bits, llamado
6800. Motorola fue la primera compaa en construir otros perifricos
como el 6820 y el 6850.

Intel:
Intel empresa dedicada a la fabricacin de
microcontroladores y microprocesadores, aunque no
trabajaba sola obtuvo un logro en abril de 1974 pone en el
Mercado el microprocesador bajo el nombre 8080 con
capacidad de direccionar 64kb de memoria, con 75
instrucciones y un precio de inicio de $360 dlares.

CONCLUSION
El nmero de productos que funcionan en base a uno o varios microcontroladores
aumenta de forma exponencial. No es aventurado pronosticar que en el siglo XXI habr
pocos elementos que carezcan de microcontrolador. La industria Informtica acapara gran
parte de los microcontroladores que se fabrican. Casi todos los perifricos del computador,
desde el ratn o el teclado hasta la impresora, son regulados por el programa de un
microcontrolador. Los electrodomsticos de lnea blanca (lavadoras, hornos, lavavajillas,
etc.) y de lnea marrn (televisores, vdeos, aparatos musicales, etc.) incorporan
numerosos microcontroladores. Igualmente, los sistemas de supervisin, vigilancia y
alarma en los edificios utilizan estos chips para optimizar el rendimiento de ascensores,
calefaccin, aire acondicionado, alarmas de incendio, robo, etc. Las comunicaciones y sus
sistemas de transferencia de informacin utilizan profundamente estos pequeos
computadores incorporndolos en los grandes automatismos y en los modernos telfonos.
La instrumentacin y la electro medicina son dos campos idneos para la implementacin
de circuitos integrados. Una importante industria suministradora de microcontroladores es
la automocin, que los aplica en el control de aspectos tan populares como la
climatizacin, la seguridad y los frenos ABS. Las comunicaciones y los productos de
consumo general absorben ms de la mitad de la produccin de microcontroladores. El
resto se distribuye entre el sector de automocin, los computadores y la industria.

Como conclusin y al tratar el tema podemos darnos cuenta del avance sustancial
que han tenido los microcontroladores, estos son circuitos integrados que llegaron a
revolucionar la industria de la computacin pero ms an la tecnologa en general, ya que
si nos ponemos a pensar, la gran mayora (por no decir todos) los dispositivos electrnicos
tienen uno o ms microcontroladores que le permiten cumplir a cabalidad las funciones
que se les fueron asignadas, esto debido a la gran capacidad que tienen integrado estos
pequeos pero poderosos dispositivos. Muchos futuristas predicen que en siete
generaciones contadas a partir de ahora, estos chips incorporarn reconocimiento del
habla a procesadores de textos y sistemas de entrada de pedidos. Producirn grficos en
3D del tamao de muros para televisin, teleconferencias e incluso pelculas
personalizadas. Dirigirn nuestros vehculos para optimizar la seguridad y crearn mundos

virtuales por los que nos desplazaremos. Darn instruccin a nuestros hijos, supervisarn
nuestra salud, reemplazarn partes perdidas del cuerpo y, a travs de una retcula de
miles de millones de sensores, nos conectarn con el mundo en formas que slo podemos
imaginar vagamente.
En definitiva, el micro controlador puede ser considerado como uno de los inventos
ms importantes de este siglo, y quien sabe si tambin del prximo.

Potrebbero piacerti anche