Академический Документы
Профессиональный Документы
Культура Документы
MICROPROGRAMABLES
ndice / Introduccin
Microcontroladores 2.1
Sistemas microprogramables
Microcontroladores PIC
Microcontroladores
ndice de contenidos
Microcontroladores
o ndice de contenidos
o Introduccin
o Que es un microcontrolador
Controlador y microcontrolador
o Aplicaciones de los microcontroladores
o El mercado de los microcontroladores
o Recursos comunes
Arquitectura bsica
El procesador o CPU
Memoria
Puertos de Entrada y Salida
Reloj principal
o Recursos especiales
Temporizadores o "Timers"
Perro guardin o "Watchdog"
Proteccin
ante fallo de alimentacin o
"Brownout"
Estado de reposo de bajo consumo
Conversor A/D (CAD)
Conversor D/A (CDA)
Comparador analgico
Modulador de anchura de impulsos o PWM
Puertos de comunicacin
o Herramientas de desarrollo
Paquetes IDE
o Qu microcontrolador emplear?
Elegir un tipo o familia de microcontroladores
Elegir
un
modelo
concreto
de
microcontrolador
Fabricantes y modelos de microcontroladores
o Los microcontroladores PIC
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.2
Introduccin
Que es un microcontrolador
Los microcontroladores estn conquistando el mundo.
Estn presentes en nuestro trabajo, en nuestra casa y en
nuestra vida, en general. Se pueden encontrar controlando el
funcionamiento de los ratones y teclados de los
computadores, en los telfonos, en los hornos microondas y
los televisores de nuestro hogar. Pero la invasin acaba de
comenzar y el siglo XXI ser testigo de la conquista masiva
de estos diminutos computadores, que gobernarn la mayor
parte de los aparatos que fabriquemos y usamos los
humanos.
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.3
Controlador y microcontrolador
Recibe el nombre de controlador el dispositivo que se
emplea para el gobierno de uno o varios procesos. Por
ejemplo, el controlador que regula el funcionamiento de un
horno elctrico dispone de un sensor que mide
constantemente su temperatura interna y acta sobre las
resistencias para mantener la temperatura dentro del rango
establecido.
Aunque el concepto de controlador ha permanecido
invariable a travs del tiempo, su implementacin fsica ha
variado frecuentemente. Hace tres dcadas, los controladores
electrnicos se construan exclusivamente con componentes
de lgica discreta, posteriormente se emplearon los
microprocesadores, que se rodeaban con chips de memoria y
E/S sobre una tarjeta de circuito impreso. En la actualidad,
todos los elementos del controlador se han podido incluir en
dispone
normalmente
de
los
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.4
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.5
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.6
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.7
Recursos comunes
Al estar todos los microcontroladores en un solo circuito
integrado, su estructura fundamental y sus caractersticas
bsicas son muy parecidas. Todos deben disponer de los
bloques esenciales Procesador, memoria de datos y de
instrucciones, lneas de E/S, oscilador de reloj y mdulos
controladores de perifricos. Sin embargo, cada fabricante
intenta enfatizar los recursos ms idneos para las
aplicaciones a las que se destinan preferentemente.
En este apartado se hace un recorrido de todos los
recursos que se hallan en todos los microcontroladores
describiendo las diversas alternativas y opciones que pueden
encontrarse segn el modelo seleccionado.
Arquitectura bsica
Aunque
inicialmente
todos
los
microcontroladores
adoptaron la arquitectura clsica de von Neumann, en el
momento presente se impone la arquitectura Harvard.
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.9
SISC: En
los
microcontroladores
destinados
a
aplicaciones muy concretas, el juego de instrucciones,
adems de ser reducido, es "especfico", o sea, las
instrucciones se adaptan a las necesidades de la
aplicacin prevista. Esta filosofa se ha bautizado con el
nombre de SISC (Computadores de Juego de
Instrucciones Especfico).
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.10
Memoria
En los microcontroladores la memoria de instrucciones y
datos est integrada en el propio circuito integrado. Una parte
debe ser no voltil, tipo ROM, y se destina a contener el
programa de instrucciones que gobierna la aplicacin. Otra
parte de memoria ser tipo RAM, voltil, y se destina a
guardar las variables y los datos.
Hay
dos
peculiaridades
microcontroladores de los PC's:
que
diferencian
los
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.11
3 EPROM
Los microcontroladores que disponen de memoria EPROM
(Erasable Programmable Read OnIy Memory) pueden
borrarse y grabarse muchas veces. La grabacin se realiza,
como en el caso de los OTP, con un grabador gobernado
desde un PC. Si, posteriormente, se desea borrar el
contenido, disponen de una ventana de cristal en su superficie
por la que se somete a la EPROM a rayos ultravioleta durante
varios minutos. Las cpsulas son de material cermico y son
ms caros que los microcontroladores con memoria OTP que
estn hechos con material plstico. Hoy da se utilizan poco,
siendo sustituidas por memorias EEPROM o Flash.
4 EEPROM
Se trata de memorias de slo lectura, programables y
borrables elctricamente EEPROM (Electrical Erasable
Programmable Read OnIy Memory). Tanto la programacin
como el borrado, se realizan elctricamente desde el propio
grabador y bajo el control programado de un PC. Es muy
la
de
de
la
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.12
Recursos especiales
Cada fabricante oferta numerosas versiones de una
arquitectura bsica de microcontrolador. En algunas ampla
las capacidades de las memorias, en otras incorpora nuevos
recursos, en otras reduce las prestaciones al mnimo para
aplicaciones muy simples, etc. La labor del diseador es
encontrar el modelo mnimo que satisfaga todos los
requerimientos de su aplicacin. De esta forma, minimizar el
coste, el hardware y el software.
Los principales recursos especficos que incorporan los
microcontroladores son:
Temporizadores o "Timers".
Perro guardin o "Watchdog".
Proteccin ante fallo de alimentacin o "Brownout".
Estado de reposo o de bajo consumo.
Conversor A/D.
Conversor D/A.
Comparador analgico.
Modulador de anchura de impulsos o PWM.
Puertos de comunicacin.
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.13
Temporizadores o "Timers"
Se emplean para controlar periodos de tiempo
(temporizadores) y para llevar la cuenta de acontecimientos
que suceden en el exterior (contadores).
Para la medida de tiempos se carga un registro con el valor
adecuado y a continuacin dicho valor se va incrementando o
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.14
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.15
Herramientas de desarrollo
Las herramientas de desarrollo estn formadas por un
conjunto de programas e interfaces que permiten realizar los
proyectos de la forma ms eficiente posible.
Las principales herramientas de ayuda al desarrollo de
sistemas basados en microcontroladores se describen a
continuacin
Ensamblador. La programacin en lenguaje ensamblador
puede resultar un tanto ardua para el principiante, pero
permite desarrollar programas muy eficientes, ya que otorga
al programador el dominio absoluto del sistema. Los
fabricantes suelen proporcionar el programa ensamblador de
forma gratuita y en cualquier caso siempre se puede
encontrar una versin gratuita para los microcontroladores
ms populares.
Compilador. La programacin en un lenguaje de alto nivel
(como C o Basic) permite disminuir el tiempo de desarrollo de
un producto y si adems est familiarizado con C o Basic es
una buena opcin. No obstante, cuando el compilador
convierta el cdigo del programa a un lenguaje ensamblado,
cada lnea de cdigo del programa en lenguaje de alto nivel
habr generado bastantes ms lneas de cdigo en lenguaje
ensamblador, normalmente en una relacin de uno a tres.
Esto significa que para utilizar un lenguaje de alto nivel
necesitaremos un microcontrolador con una capacidad de
memoria relativamente grande.
Si el programa que estamos desarrollando necesita utilizar
nmeros con decimales, o con notacin cientfica o se utilizan
operaciones complejas, como pueden ser las trigonomtricas,
es casi obligado utilizar un lenguaje de alto nivel. Pero si lo
que se va a hacer es manipular bits en registros, entradas,
tiene
que
cumplir
el
Paquetes IDE
Actualmente existen paquetes de software denominados
"Entornos de Desarrollo Integrado", IDE, que suelen funcionar
bajo Windows y que incluyen editores de texto para el
ensamblador o el compilador, permiten la simulacin del
programa y tambin pueden integrar el control de emuladores
y programadores de dispositivos. Ejemplos de estos entornos
de desarrollo son MPLAB de Microchip (ver MPLAB-IDE v6.60)
que permite programar en lenguaje ensamblado y PCWH de
la casa CCS que incluye un compilador C para los
microcontroladores PIC de Microchip. MPLAB es gratuito y
muy bueno, incluye un editor, un ensamblador y un simulador
y tambin puede trabajar con compiladores y emuladores de
otros fabricantes.
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.16
Qu microcontrolador emplear?
Elegir un tipo o familia de microcontroladores
A la hora de decidirse en terminos generales sobre que tipo
o familia de microcontroladores emplear hay que tener en
cuenta varios factores, como por ejemplo:
Experiencia previa
Documentacin existente
Herramientas de desarrollo disponibles y su precio
Precio del microcontrolador
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.8
Velocidad
y
consumo: Actualmente
pueden
encontrarse modelos de microcontroladores que pueden
utilizar velocidades de reloj de hasta 100 MHz, pero
adems de eso, en la velocidad de ejecucin del
programa repercute la arquitectura del microcontrolador,
siendo ms rpido uno con arquitectura RISC que otro
con CISC. Las velocidades altas incrementan las
interferencias electromagnticas radiadas y el consumo
de los microcontroladores al estar la mayora realizados
con tecnologas CMOS, por lo que habr que tener en
cuenta la velocidad si el consumo es importante en la
aplicacin. Por todo esto el uso de velocidades altas
debe reservarse para cuando sea necesario que el
microcontrolador realice clculos crticos en un tiempo
limitado. En ese caso debemos asegurarnos de
seleccionar un dispositivo suficientemente rpido para
ello.
Hay que tener en cuenta que algunos productos que
incorporan microcontroladores estn alimentados con
bateras y su funcionamiento puede ser tan vital como
activar una alarma antirrobo. Lo ms conveniente en un
caso como ste puede ser que el microcontrolador est
en estado de bajo consumo pero que despierte ante la
activacin de una seal (una interrupcin) y ejecute el
programa adecuado para procesarla. En las situaciones
donde un dispositivo se relaciona con el entorno humano
suele utilizarse el modo de bajo consumo, como por
ejemplo en un mando a distancia de un televisor, que la
mayor parte del tiempo no est haciendo nada, de
manera que cuando el usuario pulsa una tecla el
microcontrolador pasa al modo normal y ejecuta las
operaciones necesarias. De esta manera la duracin de
la batera puede llegar casi a la vida de la misma puesto
FAMILIA
ARQUITECTU
IDE
RA
ADUC8xx
CISC 8 bits
8051
ADUC7xx
RISC 32 bits
ARM7
AT89xxx
CISC 8 bits
8051
prog.
independien
Atmel www.atmel.com
tes
TS87xxx
CISC 8 bits
prog.
independien
tes
AVR
RISC 8 bits
AVR studio
AT91xxx
RISC 16 bits
ARM7/9
EP73xxx
RISC 32 bits
ARM7
EP93xxx
RISC 32 bits
ARM9
C8051F
CISC 8 bits
8051
HC05
CISC 8 bits
6800
HC08
CISC 8 bits
6809
Code
Warrior
HC11
CISC 8 bits
6809
HC12
CISC 16 bits
HCS12
CISC 16 bits
Code
Warrior
HC16
CISC 16 bits
56800
CISC 16 bits
68K
CISC 32 bits
68000
ColdFire
CISC 32 bits
MAC7100
RISC 32 bits
ARM7
F2MC-8
CISC 8 bits
F2MC-16
CISC 16 bits
FR
RISC 32 bits
C5xxx
CISC 8 bits
8051
C8xxx
CISC 8 bits
8051
C16xxx
CISC 16 bits
Cygnal www.silabs.com
Freescale
(Motorola) www.freescale.com
Fujitsu www.fujitsu.com
Infineon www.infineon.com
Intel www.intel.com
XC16xxx
CISC 16 bits
TCxxx
CISC 32 bits
MCS251
CISC 8 bits
8051
MCS96/296
CISC 16 bits
DS80Cxxx
CISC 8 bits
8051
DS83Cxxx
CISC 8 bits
8051
DS89Cxxx
CISC 8 bits
8051
MAXQ
RISC 16 bits
PIC
10,12,14,16,17 RISC 8 bits
,18
MPLAB
dsPIC
RISC 16 bits
MPLAB
CISC 8 bits
Webench
CISC 16 bits
RISC 16 bits
P8xxx
CISC 8 bits
8051
Philips www.semiconductors.philips.c
Xaxxx
om
CISC 16 bits
RISC 32 bits
ARM7
CISC 8 bits
CISC 8 bits
740
CISC 8 bits
H8
CISC 16 bits
HEW
H8S
CISC 16 bits
HEW
M16C
CISC 16 bits
7700
CISC 16 bits
H8SX
CISC 32 bits
Super H
CISC 32 bits
HEW
ST5
CISC 8 bits
Visual
FIVE
Microchip www.microchip.com
COP8xxx
NS (NATIONAL
SEMICONDUCTOR) www.national.c CR16Cxxx
om
CP3000
LPC2xxx
Rabbit
Rabbit2000
Semiconductor www.rabbitsemicondu
Rabbit3000
ctor.com
Renesas www.renesas.com
ST (SGS-THOMSON) www.stm.com
Toshiba chips.toshiba.com
Zilog www.zilog.com
ST6
CISC 8 bits
ST7
CISC 8 bits
STVD 7
ST9
CISC 8 bits
STVD 9
ST9
CISC 16 bits
STVD 9
ST10
CISC 16 bits
ARM7
RISC 32 bits
ARM7
MSC12xxx
CISC 8 bits
8051
MSP430
CISC 16 bits
Eclipse
TMS470
RISC 32 bits
ARM7
870
CISC 8 bits
900/900H
CISC 16 bits
900/900H
CISC 32 bits
SXxx
RISC 8 bits
Z8xxx
Z8Encore!
eZ80Aclaim
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.17
Facilidad de uso.
Gran cantidad de informacin disponible en libros,
revistas e Internet.
Herramientas de desarrollo muy asequibles.
Bajo precio y fcil disponibilidad.
DISPOSITIVOS LGICOS
MICROPROGRAMABLES
Microcontroladores 2.18
Oscilador RC
C1 de 20pF como mnimo
5K R1 100K