Vous êtes sur la page 1sur 18

ndice general

Sistema programado
1.1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Microcontrolador

2.1

Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2

Caractersticas

2.3

Arquitecturas de computadora

2.4

Vase tambin

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.1

Arquitectura Von Neumann

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.2

Arquitectura Harvard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Procesador en detalle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.1

Registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.2

Unidad de control

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.3

Unidad aritmtico-lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.4

Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.5

Conjunto de instrucciones

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.5

Memoria

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.6

Interrupciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.7

Perifricos

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.7.1

Entradas y salidas de propsito general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.7.2

Temporizadores y contadores

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.7.3

Conversor analgico/digital

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.7.4

Puertos de comunicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.7.5

Comparadores

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.7.6

Modulador de ancho de pulsos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.7.7

Memoria de datos no voltil

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.8

Familias de microcontroladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.9

Vase tambin

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.10 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

Sistema secuencial

13
i

ii
4

NDICE GENERAL
Sistema combinacional

14

4.1

Funciones combinacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

4.2

Vase tambin

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

4.3

Origen del texto y las imgenes, colaboradores y licencias . . . . . . . . . . . . . . . . . . . . . . . .

15

4.3.1

Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

4.3.2

Imgenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

4.3.3

Licencia del contenido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

Captulo 1

Sistema programado
1.1

Un sistema programado es un circuito electrnico que


contiene un microprocesador o un microcontrolador integrado en el mismo. Mediante un programa informtico almacenado en una memoria interna, se realiza el control y la
gestin del sistema.

Vase tambin

Microcontrolador
Sistema secuencial

Este tipo de circuitos son, funcionalmente, idnticos a un


sistema cableado, con la diferencia fundamental de que en
un sistema programado, modicar su funcionamiento lgico se reduce a un simple cambio del programa (software)
del circuito microprogramado, con la reduccin de costes
que ello supone. Realizar un cambio similar en un sistema
cableado requiere un cambio parcial o completo de su estructura fsica (cables o componentes que contiene).

Sistema combinacional

De esta forma, automatismos que emplean un sistema programado son menos costosos de reutilizar que aquellos que
estn constituidos por un sistema cableado.
Las desventajas principales de este tipo de sistemas son:

Velocidad
Coste

La velocidad de un sistema programado puede ser un problema dependiendo de la velocidad crtica del sistema completo. Si un sistema debe de responder ante una seal de
entrada con un tiempo de reaccin muy reducido (del orden de microsegundos o menos) es posible que un sistema
programado tenga un coste demasiado elevado para cumplir este requisito. En la mayora de los casos esto no es
necesario.
En la actualidad, el coste es cada vez un problema menor
debido a la disminucin de los costes de produccin como
consecuencia de la gran demanda de la electrnica digital
en el mundo. Sin embargo, para sistemas muy simples, con
una funcionalidad muy concreta, puede resultar ms caro
emplear un sistema programado.
1

Captulo 2

Microcontrolador

Microcontrolador Motorola 68HC11 y chips de soporte.

Microcontrolador PIC 18F8720 en encapsulado TQFP de 80 pines.

pecca. Un microcontrolador incluye en su interior las


tres principales unidades funcionales de una computadora:
unidad central de procesamiento, memoria y perifricos de
entrada/salida.
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 microvatios). Por lo general, tendr la capacidad de
mantenerse a la espera de un evento como pulsar un botn
o de otra interrupcin; as, el consumo de energa durante
el estado de reposo (reloj de la CPU y los perifricos de
Die del microcontrolador de 8 bits Intel 8742, con CPU a 12 MHz,
la mayora) puede ser slo de nanovatios, lo que hace que
128 bytes de memoria RAM, 2048 bytes de EPROM, y E/S en un
muchos de ellos sean muy adecuados para aplicaciones con
chip.
batera de larga duracin. Otros microcontroladores pueden
Un microcontrolador (abreviado C, UC o MCU) es un servir para roles de rendimiento crtico, donde sea necesacircuito integrado programable, capaz de ejecutar las r- rio actuar ms como un procesador digital de seal (DSP),
denes grabadas en su memoria. Est compuesto de va- con velocidades de reloj y consumo de energa ms altos.
rios bloques funcionales, los cuales cumplen una tarea es- Cuando es fabricado el microcontrolador, no contiene da2

2.2. CARACTERSTICAS
tos 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 codicado en sistema numrico hexadecimal que es nalmente 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.[1]

2.1 Historia

3
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 acionados, con grandes comunidades en lnea para ciertos procesadores.
En el futuro, la MRAM podra ser utilizada en microcontroladores, ya que tiene resistencia innita y el coste de su
oblea semiconductora es relativamente bajo.

2.2

Caractersticas

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 destinada a los sistemas embebidos.[2]
Debido en parte a la existencia del TMS 1000,[3] Intel desarroll un sistema de ordenador en un chip optimizado para
aplicaciones de control, el Intel 8048, que comenz a comercializarse en 1977.[3] 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 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 en este momento tienen dos variantes. Unos tena una memoria EPROM reprogramable, signicativamente 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 coste menor.
En 1993, el lanzamiento de la EEPROM en los microcontroladores (comenzando con el Microchip PIC16x84)[4]
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 ash.[5] Otras
compaas rpidamente siguieron el ejemplo, con los dos tipos de memoria.

Esquema de un microcontrolador. En esta gura, 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
nito. 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 cdecs de seal digital (audio y/o
vdeo). El control de un sistema de frenos ABS (Antilock
Brake System) se basa normalmente en un microcontrolador de 16 bits, al igual que el sistema de control electrnico
del motor en un automvil.

4
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.

CAPTULO 2. MICROCONTROLADOR

2.3.1

Arquitectura Von Neumann

La arquitectura Von Neumann 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 cantiUn microcontrolador diere de una unidad central de pro- dad de problemas y reduce el costo de este tipo de sistemas.
cesamiento normal, debido a que es ms fcil convertirla En un ordenador personal, cuando se carga un programa
en una computadora en funcionamiento, con un mnimo de en memoria, a ste se le asigna un espacio de direcciones
circuitos integrados externos de apoyo. La idea es que el cir- de la memoria que se divide en segmentos, de los cuales
cuito integrado se coloque en el dispositivo, enganchado a tpicamente tenderemos los siguientes: cdigo (programa),
la fuente de energa y de informacin que necesite, y eso es datos y pila. Es por ello que podemos hablar de la memoria
todo. Un microprocesador tradicional no le permitir hacer como un todo, aunque existan distintos dispositivos fsicos
esto, ya que espera que todas estas tareas sean manejadas en el sistema (disco duro, memoria RAM, memoria ash,
por otros chips. Hay que agregarle los mdulos de entra- unidad de disco ptico...).
da y salida (puertos) y la memoria para almacenamiento de
En el caso de los microcontroladores, existen dos tipos
informacin.
de memoria bien denidas: memoria de datos (tpicamenUn microcontrolador tpico tendr un generador de reloj te algn tipo de SRAM) y memoria de programas (ROM,
integrado y una pequea cantidad de memoria de acceso PROM, EEPROM, ash u de otro tipo no voltil). En este
aleatorio y/o ROM/EPROM/EEPROM/ash, con lo que caso la organizacin es distinta a las del ordenador personal,
para hacerlo funcionar todo lo que se necesita son unos porque hay circuitos distintos para cada memoria y normalpocos programas de control y un cristal de sincronizacin. mente no se utilizan los registros de segmentos, sino que la
Los microcontroladores disponen generalmente tambin de memoria est segregada y el acceso a cada tipo de memoria
una gran variedad de dispositivos de entrada/salida, co- depende de las instrucciones del procesador.
mo convertidor analgico digital, temporizadores, UARTs
A pesar de que en los sistemas integrados con arquitectura
y buses de interfaz serie especializados, como I2 C y CAN.
Von Neumann la memoria est segregada, y existan difeFrecuentemente, estos dispositivos integrados pueden ser
rencias con respecto a la denicin tradicional de esta arcontrolados por instrucciones de procesadores especializaquitectura; los buses para acceder a ambos tipos de memodos. Los modernos microcontroladores frecuentemente inria son los mismos, del procesador solamente salen el bus
cluyen un lenguaje de programacin integrado, como el lende datos, el de direcciones, y el de control. Como concluguaje de programacin BASIC que se utiliza bastante con
sin, la arquitectura no ha sido alterada, porque la forma
este propsito.
en que se conecta la memoria al procesador sigue el mismo
Los microcontroladores negocian la velocidad y la exi- principio denido en la arquitectura bsica.
bilidad para facilitar su uso. Debido a que se utiliza basAlgunas familias de microcontroladores como la Intel 8051
tante sitio en el chip para incluir funcionalidad, como los
y la Z80 implementan este tipo de arquitectura, fundamendispositivos de entrada/salida o la memoria que incluye el
talmente porque era la utilizada cuando aparecieron los primicrocontrolador, se ha de prescindir de cualquier otra cirmeros microcontroladores.
cuitera.

2.3.2

2.3 Arquitecturas de computadora

Arquitectura Harvard

La otra variante es la arquitectura Harvard, y por excelencia


la utilizada en supercomputadoras, en los microcontroladores, y sistemas integrados en general. En este caso, adems
de la memoria, el procesador tiene los buses segregados, de
modo que cada tipo de memoria tiene un bus de datos, uno
de direcciones y uno de control.

Bsicamente existen dos arquitecturas de computadoras, y


por supuesto, estn presentes en el mundo 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.
La ventaja fundamental de esta arquitectura es que permite

2.4. PROCESADOR EN DETALLE


adecuar el tamao de los buses a las caractersticas de cada
tipo de memoria; adems, el procesador puede acceder a
cada una de ellas de forma simultnea, lo que se traduce en
un aumento signicativo de la velocidad de procesamiento.
Tpicamente los sistemas con esta arquitectura pueden ser
dos veces ms rpidos que sistemas similares con arquitectura Von Neumann.
La desventaja est en 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 y es por ello que encontramos la arquitectura Harvard
en la mayora de los microcontroladores.

5
cia atrs o adelante en la secuencia de cdigos sobre la base
de decisiones lgicas u rdenes especcas, permite que la
mquina realice un montn de operaciones complejas, no
contempladas en los simples cdigos bsicos.
Hoy estamos acostumbrados a los sistemas con microprocesadores, pero en el lejano 1971 esta era una forma de pensar un poco diferente y hasta escandalosa, a tal punto que
Busicom, la empresa que encarg los chips a Intel, no se
mostr interesada en el invento, por lo que Intel lo comercializ para otros que mostraron inters; el resto es historia:
una revolucin sin precedentes en el avance tecnolgico de
la humanidad.

Es lgico pensar que el invento del microprocesador integrado no fue una revelacin divina para sus creadores, sino
que se sustent en los avances, existentes hasta el momento, en el campo de la electrnica digital y las teoras sobre
Por eso es importante recordar que un microcontrolador se computacin. Pero sin lugar a dudas fue la gota que colm
puede congurar de diferentes maneras, siempre y cuando la copa de la revolucin cientco-tcnica, porque permiti
se respete el tamao de memoria que este requiera para su desarrollar aplicaciones impensadas o acelerar algunas ya
correcto funcionamiento.
encaminadas.

2.4 Procesador en detalle


En los aos 1970, la electrnica digital no estaba sucientemente desarrollada, pero dentro de la electrnica ya era
una especialidad consagrada. En aquel entonces las computadoras se diseaban para que realizaran algunas operaciones muy simples, y si se quera que estas mquinas pudiesen
hacer cosas diferentes, era necesario realizar cambios bastante signicativos al hardware.
A principios de la dcada de 1970, una empresa japonesa le
encarg a una joven compaa norteamericana que desarrollara un conjunto de circuitos para producir una calculadora
de bajo costo. Intel se dedic de lleno a la tarea y entre los
circuitos encargados desarroll uno muy especial, algo no
creado hasta la fecha: el primer microprocesador integrado.

Ahora comenzaremos a ver cmo es que est hecho un procesador, no ser una explicacin demasiado detallada porque desde su invencin ste ha tenido importantes revoluciones propias, pero hay aspectos bsicos que no han cambiado y que constituyen la base de cualquier microprocesador. En la Figura 'Esquema de un microcontrolador' podemos ver la estructura tpica de un microprocesador, con sus
componentes fundamentales, claro est que ningn procesador real se ajusta exactamente a esta estructura, pero aun
as nos permite conocer cada uno de sus elementos bsicos
y sus interrelaciones.

2.4.1

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
El Intel 4004 sali al mercado en 1971, es una mquina di- los resultados de la ejecucin de instrucciones, cargar datos
gital sincrnica compleja, como cualquier otro circuito l- desde la memoria externa o almacenarlos en ella.
gico secuencial sincrnico. Sin embargo, la ventaja de este Aunque la importancia de los registros parezca trivial, no
componente est en que aloja internamente un conjunto de lo es en absoluto. De hecho una parte de los registros, la
circuitos digitales que pueden hacer operaciones corrien- destinada a los datos, es la que determina uno de los pates para el clculo y procesamiento de datos, pero desde rmetros ms importantes de cualquier microprocesador.
una ptica diferente: sus entradas son una serie de cdigos Cuando escuchamos que un procesador es de 4, 8, 16, 32 o
bien denidos, que permiten hacer operaciones de carcter 64 bits, nos estamos reriendo a procesadores que realizan
especco cuyo resultado est determinado por el tipo de sus operaciones con registros de datos de ese tamao, y por
supuesto, esto determina muchas de las potencialidades de
operacin y los operandos involucrados.
Visto as, no hay nada de especial en un microprocesador; la estas mquinas.
maravilla est en que la combinacin adecuada de los cdi- Mientras mayor sea el nmero de bits de los registros de dagos de entrada, su ejecucin secuencial, el poder saltar ha- tos del procesador, mayores sern sus prestaciones, en cuan-

CAPTULO 2. MICROCONTROLADOR

to 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, por ejemplo, no tiene sentido tener una ALU de 16 bits en un procesador de 8
bits.
Por otro lado un procesador de 16 bits, puede que haga una
suma de 16 bits en un solo ciclo de mquina, mientras que
uno de 8 bits deber ejecutar varias instrucciones antes de
tener el resultado, aun cuando ambos procesadores tengan
la misma velocidad de ejecucin para sus instrucciones. El
procesador de 16 bits ser ms rpido porque puede hacer
el mismo tipo de tareas que uno de 8 bits, en menos tiempo.

2.4.2

Unidad de control

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 otante.

2.4.4

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
reejados en los pines del encapsulado del procesador.
En el caso de los microcontroladores, no es comn que los
buses estn reejados en el encapsulado del circuito, ya que
estos se destinan bsicamente a las E/S de propsito general
y perifricos del sistema.

Esta unidad es de las ms importantes en el procesador, en


ella recae la lgica necesaria para la decodicacin y ejecu- Existen tres tipos de buses:
cin de las instrucciones, el control de los registros, la ALU,
los buses y cuanta cosa ms se quiera meter en el procesa Direccin: Se utiliza para seleccionar al dispositivo
dor.
con el cual se quiere trabajar o en el caso de las memorias, seleccionar el dato que se desea leer o escribir.
La unidad de control es uno de los elementos fundamentales
que determinan las prestaciones del procesador, ya que su
tipo y estructura determina parmetros tales como el tipo de
conjunto de instrucciones, velocidad de ejecucin, tiempo
del ciclo de mquina, tipo de buses que puede tener el sistema, manejo de interrupciones y un buen nmero de cosas
ms que en cualquier procesador van a parar a este bloque.
Por supuesto, las unidades de control son el elemento ms
complejo de un procesador y normalmente estn divididas
en unidades ms pequeas trabajando de conjunto. La unidad de control agrupa componentes tales como la unidad de
decodicacin, unidad de ejecucin, controladores de memoria cache, controladores de buses, controlador de interrupciones, pipelines, entre otros elementos, dependiendo
siempre del tipo de procesador.

Datos: Se utiliza para mover los datos entre los dispositivos de hardware (entrada y salida).
Control: Se utiliza para gestionar los distintos procesos de escritura lectura y controlar la operacin de los
dispositivos del sistema.

2.4.5

Conjunto de instrucciones

Aunque no aparezca en el esquema, no podamos dejar al


conjunto o repertorio de instrucciones fuera de la explicacin, porque este elemento determina lo que puede hacer el
procesador.

Dene las operaciones bsicas que puede realizar el procesador, que conjugadas y organizadas forman lo que cono2.4.3 Unidad aritmtico-lgica
cemos como software. El conjunto de instrucciones vienen
siendo
como las letras del alfabeto, el elemento bsico del
Como los procesadores son circuitos que hacen bsicamenlenguaje,
que organizadas adecuadamente permiten escrite operaciones lgicas y matemticas, se le dedica a esbir
palabras,
oraciones y cuanto programa se le ocurra.
te proceso una unidad completa, con cierta independencia.
Aqu es donde se realizan las sumas, restas, y operaciones Existen dos tipos bsicos de repertorios de instrucciones,
que determinan la arquitectura del procesador: CISC y
lgicas tpicas del lgebra de Boole.
Actualmente este tipo de unidades ha evolucionado mucho RISC.
y los procesadores ms modernos tienen varias ALU, especializadas en la realizacin de operaciones complejas como las operaciones en coma otante. 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.

CISC, del ingls Complex instruction set computing,


Computadora 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 diculta el paralelismo entre instrucciones, por lo que en

2.5. MEMORIA

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 registros de trabajo del procesador y los de conguracin y trabajo de los distintos perifricos del microcontrolador. Es por ello que en la mayora de los casos, aunque se
tenga un espacio de direcciones de un tamao determinado,
Dentro de los microcontroladores CISC podemos encontrar la cantidad de memoria RAM de que dispone el programaa la popular familia Intel 8051 y la Z80, aunque actualmente dor para almacenar sus datos es menor que la que puede
existen versiones CISC-RISC de estos microcontroladores, direccionar el procesador.
que pretenden aprovechar las ventajas de los procesadores El tipo de memoria utilizada en las memorias RAM de los
RISC a la vez que se mantiene la compatibilidad hacia atrs microcontroladores es SRAM, lo que evita tener que imcon las instrucciones de tipo CISC.
plementar sistemas de refrescamiento como en el caso de
RISC, del ingls Reduced Instruction Set Computer, las computadoras personales, que utilizan gran cantidad de
Computadora con Conjunto de Instrucciones Reducido. Se memoria, tpicamente alguna tecnologa DRAM. A pesar
centra en la obtencin de procesadores con las siguientes de que la memoria SRAM es ms costosa que la DRAM,
es el tipo adecuado para los microcontroladores porque scaractersticas fundamentales:
tos poseen pequeas cantidades de memoria RAM.
En el caso de la memoria de programas se utilizan diferentes tecnologas, y el uso de una u otra depende de las carac Pocas instrucciones.
tersticas de la aplicacin a desarrollar, a continuacin se
describen las cinco tecnologas existentes, que mayor utili Slo las instrucciones de carga y almacenamiento ac- zacin tienen o han tenido:
ceden a la memoria de datos.
Instrucciones de tamao jo.

Nmero relativamente elevado de registros de propsito general.


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.
Los procesadores de los microcontroladores PIC son de tipo
RISC.

2.5 Memoria
Anteriormente se ha visto que la memoria en los microcontroladores debe estar ubicada dentro del mismo encapsulado, esto es as la mayora de las veces, porque la idea fundamental es mantener el grueso de los circuitos del sistema
dentro de un solo integrado.
En los microcontroladores la memoria no es abundante,
aqu no encontrar Gigabytes de memoria como en las
computadoras personales. Tpicamente la memoria de programas no exceder de 16 K-localizaciones de memoria no
voltil (ash o eprom) para contener los programas.
La memoria RAM est destinada al almacenamiento de informacin temporal que ser utilizada por el procesador para realizar clculos u otro tipo de operaciones lgicas. En el
espacio de direcciones de memoria RAM se ubican adems

Mscara ROM. En este caso no se graba el programa


en memoria sino que el microcontrolador se fabrica
con el programa, es un proceso similar al de produccin de los CD comerciales mediante masterizacin.
El costo inicial de producir un circuito de este tipo es
alto, porque el diseo y produccin de la mscara es
un proceso costoso, sin embargo, cuando se necesitan varios miles o incluso cientos de miles de microcontroladores para una aplicacin determinada, como
por ejemplo, algn electrodomstico, el costo inicial
de produccin de la mscara y el de fabricacin del
circuito se distribuye entre todos los circuitos de la serie, y el costo nal de sta es bastante menor que el de
sus semejantes con otro tipo de memoria.
Memoria PROM (Programmable Read-Only Memory) tambin conocida como OTP (One Time Programmable). Este tipo de memoria tambin es conocida como PROM o simplemente ROM.
Los microcontroladores con memoria OTP se
pueden programar una sola vez, con algn tipo
de programador. Se utilizan en sistemas donde
el programa no requiera futuras actualizaciones y
para series relativamente pequeas, donde la variante de mscara sea muy costosa, tambin para sistemas que requieren serializacin de datos,
almacenados como constantes en la memoria de
programas.
Memoria EPROM (Erasable Programmable Read
Only Memory). Los microcontroladores con este tipo

CAPTULO 2. MICROCONTROLADOR
de memoria son muy fciles de identicar porque su
encapsulado es de cermica y llevan encima una ventanita de vidrio desde la cual puede verse la oblea de
silicio del microcontrolador.
Se fabrican as porque la memoria EPROM es reprogramable, pero antes debe borrase, y para ello
hay que exponerla a una fuente de luz ultravioleta, el proceso de grabacin es similar al empleado
para las memorias OTP.
Al aparecer tecnologas menos costosas y ms
exibles, como las memorias EEPROM y
FLASH, este tipo de memoria han cado en
desuso, se utilizaban en sistemas que requieren
actualizaciones del programa y para los procesos
de desarrollo y puesta a punto.
EEPROM (Electrical Erasable Programmable Read
Only Memory). Fueron el sustituto natural de las memorias EPROM, la diferencia fundamental es que
pueden ser borradas elctricamente, por lo que la ventanilla de cristal de cuarzo y los encapsulados cermicos no son necesarios.

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.
A pesar de lo anterior existen familias como la Intel 8051
cuyos microcontroladores tienen la capacidad de ser expandidos en una variada gama de conguraciones para el uso
de memoria de programas externa. En el caso de los PIC,
estas posibilidades estn limitadas slo a algunos microcontroladores de la gama alta, la Figura 5 muestra algunas de
las conguraciones para memoria de programa que podemos encontrar en los microcontroladores. La conguracin
(a) es la tpica y podemos encontrarla casi en el 100% de
los microcontroladores. La conguracin (b) es poco frecuente y generalmente se logra congurando al microcontrolador para sacricar la memoria de programas interna,
sin embargo el Intel 8031 es un microcontrolador sin memoria de programas interna. La conguracin (c) es la que
se encuentra habitualmente en los microcontroladores que
tienen posibilidades de expandir su memoria de programas
como algunos PIC de gama alta.

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
Otra caracterstica destacable de este tipo de miclculos y dems operaciones que requieran almacenamiencrocontrolador es que fue en ellos donde comento temporal de datos se utiliza la memoria RAM interna
zaron a utilizarse los sistemas de programacin
del microcontrolador. Esta forma de expandir la memoria
en el sistema que evitan tener que sacar el microde datos est determinada, en la mayora de lo casos, por
controlador de la tarjeta que lo aloja para hacer
el tipo de repertorio de instrucciones del procesador y poractualizaciones al programa.
que permite un elevado nmero de conguraciones distintas, adems del consiguiente ahorro de lneas de E/S que se
Memoria ash. En el campo de las memorias reprogra- logra con el uso de memorias con buses de comunicacin
mables para microcontroladores, son el ltimo avance serie.
tecnolgico en uso a gran escala, y han sustituido a los
microcontroladores con memoria EEPROM.
Al disminuir los costos de los encapsulados, los
microcontroladores con este tipo de memoria se
hicieron ms baratos y cmodos para trabajar que
sus equivalentes con memoria EPROM.

2.6
A las ventajas de las memorias ash se le adicionan su gran densidad respecto a sus predecesoras
lo que permite incrementar la cantidad de memoria de programas a un costo muy bajo. Pueden
adems ser programadas con las mismas tensiones de alimentacin del microcontrolador, el acceso en lectura y la velocidad de programacin
es superior, disminucin de los costos de produccin, entre otras.

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 especco que gener la interrupcin.
Al terminar la rutina, una instruccin especial le indica al
Lo ms habitual es encontrar que la memoria de programas procesador el n de la atencin de la interrupcin. En ese
y datos est ubicada toda dentro del microcontrolador, de momento el controlador restablece el estado anterior, y el

2.6. INTERRUPCIONES
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, por que normalmente cuando una interrupcin es atendida, todas las dems
interrupciones estn en espera.
Imagine que est esperando la visita de un amigo, al que
llamaremos Juan. Usted y Juan han acordado que cuando
l llegue a su casa esperar pacientemente a que le abra la
puerta. Juan no debe tocar a la puerta porque alguien en la
casa duerme y no quiere que le despierten.
Ahora usted ha decidido leer un libro mientras espera a que
Juan llegue a la casa, y para comprobar si ha llegado, cada
cierto tiempo detiene la lectura, marca la pgina donde se
qued, se levanta y va hasta la puerta, abre y comprueba si
Juan ha llegado, si ste todava no est en la puerta, esperar unos minutos, cerrar la puerta y regresar a su lectura
durante algn tiempo.

9
deciencias que con frecuencia obligan al diseador a moverse hacia otros horizontes
El mundo est lleno de situaciones; de las cuales no podemos determinar ni cuando, ni como ni por qu se producen,
en la mayora de los casos lo nico que podemos hacer es
enterarnos de que determinada situacin, asociada a un proceso, ha ocurrido. Para ello seleccionamos alguna condicin
o grupo de condiciones que nos indican que el proceso que
nos interesa debe ser atendido, a este fenmeno, en el cual
se dan las condiciones que nos interesa conocer, lo llamaremos evento. En el segundo ejemplo vemos que para atender a Juan, ste debe tocar el timbre, por tanto, la llegada
de Juan es el proceso que debemos atender y el sonido del
timbre es el evento que nos indica que Juan ha llegado.

El mtodo de atencin a procesos por interrupcin, visto


desde la ptica del ejemplo que utilic para mostrarlo, es
ms simple que el de la encuesta, pero no es cierto, el mtodo se complica porque requiere que el microprocesador inComo ver este es un mtodo poco eciente para esperar a corpore circuitos adicionales para registrar los eventos que
Juan porque requiere que deje la lectura cada cierto tiempo le indican que debe atender al proceso asociado y compreny vaya hasta la puerta a comprobar si l ha llegado, adems der estos circuitos y su dinmica no es una tarea sencilla.
debe esperar un rato si todava no llega. Y por si fuera po- Los circuitos para la atencin a las interrupciones y todas las
co, imagine que Juan no llega nunca porque se le present tareas que debe realizar el procesador para atender al proun problema, tuvo que cancelar la cita y no pudo avisarle a ceso que lo interrumpe son bastante complejos y requieren
tiempo, o peor, que Juan ha llegado a la puerta un instante una visin diferente de la que estamos acostumbrados a tedespus que usted la cerraba. Juan, respetando lo acordado, ner de nuestro mundo.
espera un tiempo, pero se cansa de esperar a que le abran Los seres humanos no estamos conscientes de las interrupy decide marcharse porque cree que ya usted no est en la ciones, en nuestro organismo existen mecanismos que nos
casa o no puede atenderlo. A este mtodo de atender la lle- interrumpen constantemente, para ello tenemos a nuestro
gada de Juan lo llamaremos encuesta.
sistema sensorial, pero no somos conscientes del proceso de
Veamos ahora otro mtodo. En esta ocasin simplemente
se recuesta en el sof de la sala y comienza a leer su libro,
cuando Juan llegue debe tocar el timbre de la puerta y esperar unos momentos a que le atiendan. Cuando usted oye sonar el timbre, interrumpe la lectura, marca la pgina donde
se qued y va hasta la puerta para atender a la persona que
toca el timbre. Una vez que Juan o la persona que ha tocado
el timbre, se marcha, usted regresa a su asiento y retoma la
lectura justo donde la dej. Este ltimo es un mtodo ms
eciente que el anterior porque le deja ms tiempo para leer
y elimina algunos inconvenientes como el de que Juan nunca llegue o se marche antes de que usted abra la puerta. Es,
en principio, un mtodo simple pero muy ecaz y eciente,
lo llamaremos atencin por interrupcin.
El primero de ellos, la encuesta, es un mtodo ecaz, pero
poco eciente porque requiere realizar lecturas constantes y
muchas veces innecesarias del estado del proceso que queremos atender. Sin embargo, es muy utilizado en la programacin de microcontroladores porque resulta fcil de
aprender, la implementacin de cdigo con este mtodo es
menos compleja y no requiere de hardware especial para
llevarla adelante. Por otra parte, la encuesta, tiene muchas

interrupcin, aunque s de la atencin a las interrupciones.


Eso es porque incorporamos mecanismos que nos sacan rpidamente de la tarea que estemos haciendo para atender
una situacin que no puede o no debe esperar mucho tiempo. Bien, esa misma es la idea que se incorpora en los microprocesadores para atender procesos que no pueden esperar
o que no sabemos cuando deben ser atendidos porque ello
depende de determinadas condiciones.
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, utilicemos el segundo ejemplo para atender la
llegada de Juan. Piense en cuantas cosas su cerebro hace a
espaldas de su conciencia, desde el momento en que suena
el timbre hasta que usted se encuentra listo (consciente de
que es probable que Juan ha llegado) para abrir la puerta,
y todo lo que su cerebro debe trabajar para retomar la lectura despus que Juan se ha marchado. Todo eso, excepto
abrir la puerta y atender a Juan, lo hacemos de forma inconsciente porque para ello tenemos sistemas dedicados

10

CAPTULO 2. MICROCONTROLADOR

en nuestro organismo, pero en el mundo de los microcon- de ser asncrono. Ambas de conjunto permiten que aprotroladores debemos conocer todos esos detalles para poder vechemos al mximo las capacidades de trabajo de nuestro
utilizar los mecanismos de interrupcin.
procesador.
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.

Los mecanismos de interrupcin no solo se utilizan para


atender eventos ligados a procesos que requieren atencin
inmediata sino que se utilizan adems para atender eventos
de procesos asncronos.

Las interrupciones son tan ecaces que permiten que el procesador acte como si estuviese haciendo varias cosas a la
En trminos generales, un proceso de interrupcin y su vez cuando en realidad se dedica a la misma rutina de siematencin por parte del procesador, tiene la siguiente secuen- pre, ejecutar instrucciones una detrs de la otra.
cia de acciones:
1. En el mundo real se produce el evento para el cual que- 2.7 Perifricos
remos que el procesador ejecute un programa especial,
este proceso tiene la caracterstica de que no puede es- Cuando observamos la organizacin bsica de un microconperar mucho tiempo antes de ser atendido o no sabe- trolador, sealamos que dentro de este se ubican un conjunmos en que momento debe ser atendido.
to de perifricos. A continuacin describiremos algunos de
los perifricos que con mayor frecuencia encontraremos en
2. El circuito encargado de detectar la ocurrencia del
los microcontroladores.
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.

2.7.1

Entradas y salidas de propsito general

Tambin conocidos como puertos de E/S, generalmente


agrupadas en puertos de 8 bits de longitud, permiten leer
datos del exterior o escribir en ellos desde el interior del
microcontrolador, el destino habitual es el trabajo con dispositivos simples como rels, LED, o cualquier otra cosa
4. La unidad de ejecucin termina con la instruccin en que se le ocurra al programador.
curso y justo antes de comenzar a ejecutar la siguiente Algunos puertos de E/S tienen caractersticas especiales
comprueba que se ha registrado una interrupcin
que le permiten manejar salidas con determinados requeri5. 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.

mientos de corriente, o incorporan mecanismos especiales


de interrupcin para el procesador.

Tpicamente cualquier pin de E/S puede ser considerada


E/S de propsito general, pero como los microcontroladores no pueden tener innitos pines, ni siquiera todos los pines que queramos, las E/S de propsito general comparten
6. Se ejecuta el cdigo de atencin a interrupcin, esta los pines con otros perifricos. Para usar un pin con cuales la parte consciente de todo el proceso porque es quiera de las caractersticas a l asignadas debemos condonde se realizan las acciones propias de la atencin a gurarlo mediante los registros destinados a ellos.
la interrupcin y el programador juega su papel.
7. Cuando en la subrutina de atencin a interrupcin se 2.7.2 Temporizadores y contadores
ejecuta la instruccin de retorno, se desencadena el
proceso de restauracin del procesador al estado en Son circuitos sincrnicos para el conteo de los pulsos que
que estaba antes de la atencin a la interrupcin.
llegan a su poder para conseguir la entrada de reloj. Si la
fuente de un gran conteo es el oscilador interno del miComo podemos observar, el mecanismo de interrupcin es crocontrolador es comn que no tengan un pin asociado,
bastante complicado, sin embargo tiene dos ventajas que y en este caso trabajan como temporizadores. Por otra parobligan a su implementacin: la velocidad y su capacidad te, cuando la fuente de conteo es externa, entonces tienen

2.7. PERIFRICOS

11

asociado un pin congurado como entrada, este es el modo velocidad y resistencia al ruido.
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. Como veremos
ms adelante 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.

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 optoacopladores.

I2C

Cumple las mismas funciones que el SPI, pero requiere menos seales de comunicacin y cualquier nodo puede iniciar
2.7.3 Conversor analgico/digital
una transaccin. Es muy utilizado para conectar las tarjetas
grcas de las computadoras personales con los monitores,
Como es muy frecuente el trabajo con seales analgicas,
para que estos ltimos informen de sus prestaciones y perstas deben ser convertidas a digital y por ello muchos
mitir la autoconguracin del sistema de vdeo.
microcontroladores incorporan un conversor analgicodigital, el cual se utiliza para tomar datos de varias entradas
diferentes que se seleccionan mediante un multiplexor.
USB
Las resoluciones ms frecuentes son 8 y 10 bits, que son
sucientes para aplicaciones sencillas. Para aplicaciones en
Los microcontroladores son los que han permitido la exiscontrol e instrumentacin estn disponibles resoluciones de
tencia de este sistema de comunicacin. Es un sistema que
[6]
12bit, 16bit y 24bit. Tambin es posible conectar un contrabaja por polling (monitorizacin) de un conjunto de pevertidor externo, en caso de necesidad
rifricos inteligentes por parte de un amo, que es normalmente un computador personal. Cada modo inteligente est
gobernado inevitablemente por un microcontrolador.

2.7.4

Puertos de comunicacin

Puerto serie
Ethernet
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.

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 sucientemente poderosos como para que puedan ser accesados directamente por la red. Muchos de los enrutadores caseros
El destino comn de este perifrico es la comunicacin con
de pequeas empresas estn construidos sobre la base de un
otro microcontrolador o con una PC y en la mayora de los
microcontrolador que hace del cerebro del sistema.
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 RS-232), Can
es por ello que muchas personas se reeren a la UART o
USART como puerto serie RS-232, pero esto constituye Este protocolo es del tipo CSMA/CD con tolerancia a eleun error, puesto que este perifrico se puede utilizar pa- vados voltajes de modo comn y orientado al tiempo real.
ra interconectar dispositivos mediante otros estndares de Este protocolo es el estndar ms importante en la induscomunicacin. En aplicaciones industriales se utiliza pre- tria automotriz (OBD). Tambin se usa como capa fsica
feriblemente RS-485 por sus superior alcance en distancia, del eld bus para el control industrial.

12

CAPTULO 2. MICROCONTROLADOR

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.

2.7.5

Comparadores

Son circuitos analgicos basados en amplicadores 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.

2.9

Vase tambin

Lista de microcontroladores comunes


Controladora de perifrico
Microprocesador
Microbtica
PIC16F87X
Intel HEX
Informtica de sistemas
Ingeniera Tcnica en Informtica de Gestin
BASIC Stamp
Arduino

2.7.6

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.

2.7.7

Memoria de datos no voltil

Muchos microcontroladores han incorporado estos tipos de


memoria como un perifrico ms, para el almacenamiento
de datos de conguracin 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.

2.8 Familias de microcontroladores


Los microcontroladores ms comunes en uso son:
Observacin: Algunas arquitecturas de microcontrolador
estn disponibles por tal cantidad de vendedores y en tantas variedades, que podran tener, con total correccin, su
propia categora. Entre ellos encontramos, principalmente,
las variantes de Intel 8051 y Z80.

2.10

Referencias

[1] Vienna University of Technology, Introduction To Microcontrollers (Gunther Gridling, Bettina Weiss), 26 de febrero
de 2007
[2] Augarten, Stan (1983). The Most Widely Used Computer on
a Chip: The TMS 1000. State of the Art: A Photographic
History of the Integrated Circuit. New Haven y New York:
Ticknor & Fields. ISBN 0-89919-195-9. Consultado el 2 de
marzo de 2012.
[3] http://archive.computerhistory.org/resources/access/text/
Oral_History/102658328.05.01.acc.pdf Oral History Panel
on the Development and Promotion of the Intel 8048
Microcontroller, Computer History Museum oral history,
2008, consultado el 28 de junio de 2011, pgina 4
[4] http://microchip.com/stellent/idcplg?IdcService=SS_
GET_PAGE&nodeId=2018&mcparam=en013082
[5] Atmels Self-Programming Flash Microcontrollers de Odd
Jostein Svendsli 2003
[6] microcontroladores analgicos

Captulo 3

Sistema secuencial
A diferencia de los sistemas combinacionales, en los sistemas secuenciales, los valores de las salidas, en un momento dado, no dependen exclusivamente de los valores de
las entradas en dicho momento, sino tambin dependen del
estado anterior o estado interno. El sistema secuencial ms
simple es el biestable, de los cuales, el de tipo D (o cerrojo)
es el ms utilizado actualmente.
La mayora de los sistemas secuenciales estn gobernados
por seales de reloj. A stos se los denomina sncronos o
sincrnicos, a diferencia de los asncronos o asincrnicos que son aquellos que no son controlados por seales
de reloj.
A continuacin se indican los principales sistemas secuenciales que pueden encontrarse en forma de circuito integrado o como estructuras en sistemas programados:
Contador
Registros
En todo sistema secuencial nos encontraremos con:
a) Un conjunto nito, n, de variables de entrada
(X1, X2,..., Xn).

Estructuras de bloque de un autmata de Moore, a), y un autmata


de Mealy, b)

b) Un conjunto nito, m, de estados internos, de


aqu que los estados secuenciales tambin sean
denominados autmatas nitos. Estos estados
proporcionarn m variables internas (Y1,Y2,...,
Ym).
c) Un conjunto nito, p, de funciones de salida
(Z1, Z2,..., Zp).
Dependiendo de como se obtengan las funciones de salida,
Z, los sistemas secuenciales pueden tener dos estructuras
como las que se observan el la siguiente gura, denominadas: a) Mquina de Moore y b) Mquina de Mealy.

13

Captulo 4

Sistema combinacional
A

Se denomina sistema combinacional o lgica combinacional a todo sistema digital en el que sus salidas son funcin exclusiva del valor de sus entradas en un momento dado, sin que intervengan en ningn caso estados anteriores
de las entradas o de las salidas. Las funciones (OR, AND,
NAND, XOR) son booleanas (de Boole) donde cada funcin se puede representar en una tabla de la verdad. Por
tanto, carecen de memoria y de retroalimentacin.

C
D
F = (A B) + (C D)

En electrnica digital la lgica combinacional est formada


por ecuaciones simples a partir de las operaciones bsicas
del lgebra de Boole. Entre los circuitos combinacionales generando de forma matemtica el funcionamiento del sisclsicos tenemos:
tema combinacional. De este modo, cada seal de entrada
es una variable de la ecuacin lgica de salida. Por ejemplo, un sistema combinacional compuesto exclusivamente
Lgicos
por una puerta AND tendra dos entradas A y B. Su funcin combinacional seria F = A B , para una puerta OR
Generador/Detector de paridad
sera F = A + B . Estas operaciones se pueden combinar
Multiplexor y Demultiplexor
formando funciones ms complejas.
Codicador y Decodicador
Esto permite emplear diferentes mtodos de simplicacin
Conversor de cdigo

para reducir el nmero de elementos combinacionales que


forman el sistema.

Comparador
Aritmticos

4.2

Sumador

Vase tambin

Sistema secuencial
Sistema digital

Aritmticos y lgicos

Teora de autmatas

Unidad aritmtico lgica


stos circuitos estn compuestos nicamente por puertas
lgicas interconectadas entre s.

Autmata nito
Autmata con pila
Mquina de Turing

4.1 Funciones combinacionales


Todos los circuitos combinacionales pueden representarse
empleando lgebra de Boole a partir de su funcin lgica,
14

4.3. ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS

15

4.3 Origen del texto y las imgenes, colaboradores y licencias


4.3.1

Texto

Sistema programado Fuente: https://es.wikipedia.org/wiki/Sistema_programado?oldid=79131364 Colaboradores: Pilaf, Guevonaso, Murphy


era un optimista, Digigalos, Superzerocool, Caiserbot, GermanX, ECAM, Chlewbot, Paintman, Escarapela, Grillitus, Acratta y Annimos: 3
Microcontrolador Fuente: https://es.wikipedia.org/wiki/Microcontrolador?oldid=85778913 Colaboradores: Centeno, Mac, Moriel, Frutoseco,
Dodo, Triku, Sms, Avm, Odalcet, Tano4595, Murphy era un optimista, Lopezmts, Marcelo Huerta, Flugplatz, Renabot, FAR, Digigalos, Internete, Taichi, Emijrp, Rembiapo pohyiete (bot), Orgullobot~eswiki, RobotQuistnix, BOT-Superzerocool, FlaBot, Varano, YurikBot, Museo8bits,
GermanX, Gaijin, Santiperez, Kryptt, Baneld, Tomatejc, The worst user, CEM-bot, Jorgelrm, Atalanta86, Eternauta3k, Johncaranton, Aweinstein, Juanfran GG, Thijs!bot, uo Martnez, Botones, Jurgens~eswiki, JAnDbot, Lelguea, TXiKiBoT, Netito777, Phirosiberia, Plux, Biasoli,
AlnoktaBOT, VolkovBot, AristidesParallax, Matdrodes, Shooke, 3coma14, Muro Bot, BotMultichill, SieBot, Loveless, BOTarate, Cbodington, Aleposta, JaviMad, DragonBot, PixelBot, Eduardosalg, Lloizaga, Mendezmh, Ateocinico, UA31, AVBOT, MastiBot, Ialad, Diegusjaimes,
DumZiBoT, DominusDRR, Luckas-bot, Ptbotgourou, LordboT, SuperBraulio13, Ortisa, Xqbot, Jkbw, Ryback, Rubinbot, Kraixx, D'ohBot,
TiriBOT, TobeBot, PatruBOT, Edslov, Microc, Grillitus, Duhi, Win7912, Poeta3d, Netnbit, MetroBot, Eagle c5, Gusama Romero, Acratta,
Angeldefuego22, Addbot, Trabajocolaborativo2grupo179, Jarould, Enriqueperiam y Annimos: 153
Sistema secuencial Fuente: https://es.wikipedia.org/wiki/Sistema_secuencial?oldid=81744189 Colaboradores: JorgeGG, Digigalos, Xuankar,
Paintman, Cabanyas, Andrs Djordjalian, VolkovBot, Lucien leGrey, Leonpolanco, Louperibot, MastiBot, Luckas-bot, ArthurBot, Jkbw, Rubinbot, Atope36, Luisda1984, PatruBOT, KamikazeBot, ZroBot, Sergio Andres Segovia, ChuispastonBot, WikitanvirBot, Acratta, MahdiBot,
Addbot, StephsTrrs y Annimos: 17
Sistema combinacional Fuente: https://es.wikipedia.org/wiki/Sistema_combinacional?oldid=84991851 Colaboradores: Guevonaso, Sms,
Murphy era un optimista, Aracne, Melocoton, Dianai, Almorca, Suruena, Villamota, WhisKiTo, Digigalos, Xuankar, Taichi, Orgullobot~eswiki,
Caiserbot, Yrbot, GermanX, CEM-bot, Norikesh, Drake 81, Isha, Alfonso, Jenkin~eswiki, Snakefang, Jose gueredo, Shooke, Muro Bot, Cobalttempest, Dnu72, Poco a poco, AVBOT, Atope36, FrescoBot, PatruBOT, MerlIwBot, Acratta, Addbot y Annimos: 22

4.3.2

Imgenes

Archivo:153056995_5ef8b01016_o.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/6/64/Intel_8742_153056995.jpg Licencia:


CC BY-SA 2.0 Colaboradores: http://www.flickr.com/photos/biwook/153056995/ Artista original: Ioan Sameli
Archivo:AutomataMooreMealy.PNG Fuente: https://upload.wikimedia.org/wikipedia/commons/4/47/AutomataMooreMealy.PNG Licencia: CC-BY-SA-3.0 Colaboradores: Dibujo propio (Own drawing) Artista original: Jos Luis Glvez
Archivo:Circuito_combinacional.svg Fuente: https://upload.wikimedia.org/wikipedia/commons/b/bf/Circuito_combinacional.svg Licencia:
Public domain Colaboradores: ? Artista original: ?
Archivo:MC68HC11_microcontroller.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/b/b5/MC68HC11_microcontroller.
jpg Licencia: CC-BY-SA-3.0 Colaboradores: ? Artista original: ?
Archivo:Microcontrolador.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/c/cb/Microcontrolador.jpg Licencia: Public domain Colaboradores: Trabajo propio Artista original: Daniel
Archivo:PIC18F8720.jpg Fuente: https://upload.wikimedia.org/wikipedia/commons/1/18/PIC18F8720.jpg Licencia: Public domain Colaboradores: ? Artista original: ?

4.3.3

Licencia del contenido

Creative Commons Attribution-Share Alike 3.0

Vous aimerez peut-être aussi