Está en la página 1de 45

Microcomputadores 2002-03

17/02/2004

INTRODUCCIN
DISEO DE SISTEMAS CON MICROCONTROLADORES

NDICE
1. INTRODUCCIN 1.1 Qu es un microcontrolador? 1.2 Estructura de un microcontrolador 1.3 Ventajas e inconvenientes 1.4 Las aplicaciones 1.5 Tipos de microcontroladores 1.6 Eleccin de un microcontrolador 1.7 Mercado 1.8 Fabricantes

Introduccin

Microcomputadores 2002-03

17/02/2004

NDICE
2. CARACTERSTICAS DE LOS MICROCONTROLADORES 2.1 Tcnicas de fabricacin 2.2 Tipos de arquitectura 2.3 Opciones avanzadas de memoria Memorias externas 2.4 La alimentacin y bajo consumo 2.5 Entradas y salidas 2.6 Polling e interrupciones 2.7 Reset y reloj 2.8 Caractersticas especiales de los C 2.9 Los pines y funciones no utilizadas

Introduccin

NDICE
3. LENGUAJES DE PROGRAMACIN PARA MICROCONTROLADORES 3.1 Lenguaje ensamblador 3.2 Interpretes 3.3 Compiladores 4. HERRAMIENTAS DE DESARROLLO 4.1 Simuladores 4.2 Debuggers Residentes 4.3 Emuladores 4.4 Generadores de cdigo 5. LAS FAMILIAS DE MICROCONTROLADORES

Introduccin

Microcomputadores 2002-03

17/02/2004

1. INTRODUCCIN
I 1.1 Qu es un microcontrolador?
Evolucin de los sistemas de control
9 Al principio los sistemas de control se hacan exclusivamente con componentes discretos lgicos 9 Despus se utilizaron microprocesadores. El sistema de control completo poda encajar dentro de una tarjeta de circuito impreso 9 Posteriormente todos los componentes que se requieren para un sistema de control completo se construyeron dentro de un chip, naci el microcontrolador

Ventajas de los microcontroladores:


9 La mayor capacidad de integracin 9 La necesidad de sistemas inteligentes o al menos programables
Introduccin 5

I 1.2 Estructura de un microcontrolador


9 Estructura de un sistema programable

Unidad Central

Memoria ROM

Memoria RAM

Bus (direcciones, datos, control)

Interfaz de E/S

Exterior

Introduccin

Microcomputadores 2002-03

17/02/2004

9Estructura de un microcontrolador
Controlador de Interrupciones
ROM UVPROM OTPROM Temporizador 1 Temporizador 0

RAM

EPROM

Unidad Central

Bus (direcciones, datos, control)

Interfaz especfica

Osc

Controlador de bus

Puertos de entrada/salida

Puerto serie

P0 P2 P1 P3
Direcciones/datos
Introduccin 7

Los microcontroladores son la solucin en onchip. Habitualmente incluyen:


9 CPU 9 RAM 9 EPROM/PROM/ROM/OTPROM 9 I/O (input/output) - serie y paralelo 9 Temporizadores/Contadores 9 Sistema de interrupciones 9 Adems de sistemas auxiliares como :
A/D D/A DSP ...

Introduccin

Microcomputadores 2002-03

17/02/2004

I 1.3 Ventajas e inconvenientes

Ventajas de los microcontroladores:


9 Reunen en un slo circuito integrado varios elementos
Disminucin del hardware Menor complejidad de los circuitos impresos

9 Mayor fiabilidad del sistema


Al haber menor nmero de componentes disminuyen las conexiones y las fuentes de error

9 Tecnologa MOS, CMOS o HCMOS


Disminucin del consumo

9 Disminucin de los costes


Ms barato que los componentes que reemplaza Simplificacin en la fabricacin (mano de obra)

9 Vlido para mayor nmero de aplicaciones (reduccin de coste y volumen)

Introduccin

Inconvenientes de los microcontroladores:


9 Programacin mediante mscaras
Fabricacin de grandes series No rentable para pequeas series Utilizacin de OTPROM

9 Herramientas y sistemas de desarrollo


Incrementan el precio final

Introduccin

10

Microcomputadores 2002-03

17/02/2004

I 1.4 Las aplicaciones


9 Los microcontroladores se usan cuando la potencia de procesamiento no es importante 9 Robtica:
Los sistemas basados en microprocesador y los microcontroladores se usan extensivamente en robtica

9 Captura de datos: temperatura, lluvia, ...


Es una de las aplicaciones especiales de los microcontroladores

9 Sistemas porttiles y autnomos


Debido a su pequeo tamao y bajo consumo

9 El sector del automvil


Es uno de los mayores mercados de microcontroladores Desarrollo de microcontroladores especficos: Deben responder a condiciones extremas Deben ser muy fiables

9 Sector domstico (de 35 a 240 microcontroladores)


Introduccin 11

Se pueden encontrar microcontroladores en:


9 Aparatos electrodomsticos:
microondas, hornos, frigorficos televisin ,vdeo, equipos de sonido

9 Equipos informticos y electrnicos


impresoras, mdems, copiadoras lser, ...

9 Automviles
Mando de sistemas del automvil: ABS, Inyeccin Encendido, ... Sistemas de diagnstico Climatizador

9 Mando medioambiental
Invernadero, Fbrica, Casa

9 Instrumentacin, sistemas aerospaciales, ...


Introduccin 12

Microcomputadores 2002-03

17/02/2004

I 1.5 Tipos de microcontroladores


Segn el ancho de palabra:
9 Los hay de 4, 8, 16, y 32 bits

Existen Microcontroladores/Procesadores especializados para:


9 Comunicaciones 9 Manejo del teclado 9 Procesamiento de la seal 9 Proceso vdeo 9 ...

Introduccin

13

I 1.6 Eleccin de un microcontrolador

Para elegir el dispositivo ms apropiado para un proyecto, se ha de considerar lo siguiente:


9 Puedo obtener ayuda cuando tenga problemas? 9 Qu herramientas de desarrollo estn disponibles y cunto cuestan? 9 Qu clase de documentacin tengo disponible? (manuales de referencia, notas de aplicacin, libros) 9 Tiene el fabricante disponibles para ese microcontrolador dispositivos perifricos? (conversores A/D, memoria, reguladores de tensin) 9 Disponen de microcontroladores OTM, grabables por mscara, EPROM, de esa misma familia?

Introduccin

14

Microcomputadores 2002-03

17/02/2004

Otras cuestiones a considerar son las siguientes:


9 No existen buenos y malos fabricantes de microcontroladores
Posibilidades de integracin y competencias tcnicas casi idnticas

9 Entre los criterios de eleccin, el ms importante:


Adaptacin de la arquitectura a las necesidades de la aplicacin Disponer o no del sistema de desarrollo

9 Considerar las familias de microcontroladores


Microcontroladores compatibles a nivel de arquitectura, programacin y herramientas de desarrollo

Introduccin

15

I 1.7 Mercado
9 Venta mundial de microcontroladores (en kmillones de dlares)
4bits 8-bit 16-bit '93 1,6 3,7 0,4 '94 1,7 4,6 0,8 '95 1,8 5,6 1,1 '96 1,8 6,5 1,6 '97 1,8 7,5 2,1 '98 1,8 8,4 2,9 '99 1,8 9,2 3,6 '00 1,7 9,7 4,4

9 A la vista de estas cifras podemos observar que los microcontroladores son un gran negocio, estamos hablando de billones!!. 9 Esta es la razn de que los fabricantes de circuitos integrados estn potenciando los microcontroladores de 8 bits.

Introduccin

16

Microcomputadores 2002-03

17/02/2004

I 1.8 Los Fabricantes de uP y uC


MICROPROCESADORES
9 Posicin 1995 1994
1 1 Intel $10,800 2 3 AMD 881 992 3 2 Motorola 781 827 4 11 IBM 468 297 5 6 TI 219 202 6 4 Cyrix 210 240 7 5 Hitachi 188 66 8 7 NEC 100 82 9 8 LSI Lgica 58 51 10 10 IDT 45 25

MICROCONTROLADORES
9 Posicin 1995 1994
1 1 Motorola $1,781 $1,511 2 2 NEC 1,421 1,208 3 4 Mitsibishi 945 708 4 3 Hitachi 899 782 5 5 Intel 835 605 6 6 TI 807 534 7 8 Philips 524 345 8 7 Matsushita 500 413 9 10 AT&T 492 275 10 9 Toshiba 400 328

Introduccin

17

2. CARACTERSTICAS DE LOS MICROCONTROLADORES


I 2.1 Tcnicas de fabricacin
CMOS (Complementary Metal Oxide Semiconductor)
9 Este es el nombre de la tcnica con que se fabrican la mayora (sino todos) los microcontroladores. 9 Caractersticas:
Bajo consumo Pueden ser alimentados por bateras durante mucho tiempo. Modo sleep El reloj del sistema puede detenerse para reducir an ms su consumo Alta inmunidad al ruido elctrico

Introduccin

18

Microcomputadores 2002-03

17/02/2004

PMP - (National Semiconductor)


9 PMP es un proceso de implantacin de alta-energa que permite que el microcontrolador ROM pueda ser programado despus de la metalizacin final (slo las capas del pasivacin necesita ser agregada) 9 El microcontrolador ROM puede estar programado en slo dos semanas

Introduccin

19

I 2.2 Tipo de arquitectura

Arquitectura Von-Neuman
9 Un nico bus de datos para instrucciones y datos 9 Las instrucciones del programa y los datos se guardan conjuntamente en una memoria comn 9 Cuando la CPU se dirige a la memoria principal, primero accede a la instruccin y despus a los datos necesarios para ejecutarla, esto retarda el funcionamiento

Arquitectura Harvard
9 El bus de datos y el bus de instruccin estn separados 9 Acceso en paralelo:
Cuando se est leyendo una instruccin, la instruccin actual est utilizando el bus de datos Una vez finalizada la instruccin actual, la siguiente ya est disponible en la CPU. Permite una ejecucin ms rpida Mayor segmentacin
Introduccin 20

10

Microcomputadores 2002-03

17/02/2004

CISC
9 Complex Instruction Set Computer 9 Casi todos los microcontroladores actuales tienen un juego de instrucciones complejo y amplio 9 El conjunto de instrucciones tpico de un microcontrolador es de ms de 80 9 El conjunto de instrucciones es bastante heterogneo
Instrucciones son muy potentes. En algunos casos equivalen a muchas instrucciones simples Instrucciones especializadas para una tarea concreta

Introduccin

21

RISC
9 Reduced Instruction Set Computers 9 Al tener un conjunto de instrucciones reducido:
el controlador es ms sencillo y el chip es ms pequeo es ms rpido tiene un consumo menor

9 Principales caractersticas:
El juego de instrucciones es ortogonal Pueden usar cualquier modo de direccionamiento Banco de registros comn a todas las instrucciones Simplifica la programacin Mayor segmentacin

SISC
9 Specific Instruction Set Computer 9 Incluyen instrucciones especficas para control
Instrucciones de entrada/salida eficaces y sencillas Instrucciones especficas para operar a nivel de bit Instrucciones para operaciones con tablas de datos
Introduccin 22

11

Microcomputadores 2002-03

17/02/2004

I 2.3 Opciones avanzadas de Memoria


EEPROM
9 Electrically Erasable PROM 9 Muchos microcontroladores incorporan una pequea memoria EEPROM dentro del chip:
Contiene parmetros que pueden cambiarse si la aplicacin lo necesita

9 Es lenta 9 El nmero de veces que se puede borrar/grabar est limitado

FLASH (EPROM)
9 Las memorias FLASH son mejores que las EEPROM
Son ms rpidas que las memoria EEPROM Permiten ms ciclos de borrado/grabacin.
Introduccin 23

Memoria RAM
9 tilies para programas de gran tamao 9 Ms rpida que las memorias no voltilies 9 Nmero ilimitado de veces que puede grabarse 9 Apropiada para aplicaciones con grandes cantidades de datos que cambian contnuamente

Memoria Field programming/reprogramming


9 Memoria no voltil 9 Puede reprogramase sin desconectar el microcontrolador 9 Apropiada para aplicaciones en el sector del automvil
Se puede reprogramar el microcontrolador "in situ Por ejemplo, cambiando los parmetros de la inyeccin electrnica para adaptar el motor a normas de emisin de humos, o ponerlo a punto despus de un periodo de desgaste.

9 Permite actualizaciones remotas


Introduccin 24

12

Microcomputadores 2002-03

17/02/2004

Memoria OTP
9 One Time Programmable 9 Un OTP es una memoria PROM que slo puede grabarse una vez 9 Se utiliza para pequeas series
Para probar el programa antes de fabricar grandes cantidades de microcontroladores con memorias ROM de mscara

9 Como los ciclos de desarrollo de productos son cada vez ms cortos, es interesante para los fabricantes de microcontroladores ofrecer OTPs como una opcin

ROM de mscara
9 Son interesantes para un gran nmero de unidades cuando el programa va a ser el definitivo 9 El tiempo de entrega es de 8 a 44 semanas

Introduccin

25

Proteccin del software


9 El software est protegido
Por encriptacin Proteccin del fusible

9 Es una opcin en OTPs y EPROM 9 En microcontroladores ROM de mscara no es necesiria


Los fabricante de ROM de mscara prueban el microcontrolador para asegurarse que se programa correctamente En modo de prueba se puede leer cualquier dispositivo Se lee el cdigo de la ROM y se compara con el original

Introduccin

26

13

Microcomputadores 2002-03

17/02/2004

Memorias externas
9 Se pueden aadir RAM externas 9 Se necesita que el microprocesador posea un modo expandido o extendido (acceso al bus interno) 9 Se utiliza el multiplexado de datos/direcciones
Se redefinen ciertas lneas de entrada/salida paralelo como bus de datos y direcciones Para el demultiplexado se utiliza: la lnea AS (Address Strobe) o ALE (Address Latch Enable) registro de 8 bits tipo 74373

Introduccin

27

Memorias externas (esquema)


MC68HC11A8 PB0-7 PA0-7 AS 8 D0-7 LE 8 R/W E 8 8 A8-15 A0-7

Q0-7 373 OE

D0-7 WE

Ciclo de Escritura

CLK PB0-7 PA0-7 AS WE


Introduccin 28

A8 - A15 A0 - A7 D0 - D7

14

Microcomputadores 2002-03

17/02/2004

I 2.4 La alimentacin y bajo voltaje


Ahora, por qu estn bajando los voltajes REALMENTE en circuitos integrados CCI? Paul K. Johnson (de Hewlett-Packard) explica:
9 Hay unas reglas interesantes de dedo pulgar con respecto a los transistores:
La cantidad de potencia que disipan es proporcional a su tamao. Su retraso de propagacin es proporcional a su tamao. Su costo es proporcional al cuadrado de su tamao.

9 Si se hace un transistor ms pequeo, usted mejora el consumo, velocidad, y el costo. El nico inconveniente es que son ms complicados y difciles de fabricar. 9 Menos calor por transistor implica menos tensin (3,3 v)
Introduccin 29

Caractersticas
9 Tipo de alimentacin a pilas o bateras y con buena autonoma:
Tecnologa PMOS (extinguida), CMOS o HCMOS Disponer de modo reposo Inhibicin de funciones internas Lnea nica para despertar

9 Tensin disponible:
Tensin necesaria segn tecnologa: PMOS de 7 a 15 voltios CMOS o HCMOS de 3 a 6 voltios NMOS (algunos CMOS y HCMOS) tensin nica de 5 voltios La eleccin de la tensin tendr repercusin sobre la arquitectura Conviene disponer de un condensador de desacoplo

9 Proteccin de Brownout
Es un circuito que protege contra sobre-tensiones de alimentacin
Introduccin 30

15

Microcomputadores 2002-03

17/02/2004

9 Idle/Halt y Wakeup
Pasar a modo de Ocioso/Parada (Idle/Halt) por software En estos modos la memoria RAM no pierde informacin Se reduce el consumo (70%) Se sale (wakeup) mediante estmulos: Interrupcin desde un temporizador Puerto serie Un contador/temporizador "ocioso" puede despertar peridicamente al microcontrolador En modo Idle, todas las actividades se detienen excepto: La circuitera del oscilador (o del reloj) La lgica del watchdog El amonestador del reloj El cronmetro Idle El modo Idle es til para captura de datos remotos El modo Halt (parada) se detienen todas las actividades sale mediante una interrupcin

Introduccin

31

I 2.5 ENTRADAS y SALIDAS


Comunicacin Serie
9 UART (Universal Asynchronous Receiver-Transmitter)
Un UART es un adaptador serie para comunicaciones asncronas

9 USART
Un USART (Unidad Universal de Transmisin Recepcin Sncrona y Asncrona) es un adaptador serie para comunicaciones asncronas o sncronas Los dispositivos que usan un USART suelen ser ms rpidos (hasta 16 veces) que un adaptador UART

9 SPI (Serial Peripheral Interface. Motorola)


El SPI permite la comunicacin serie, duplex y asncrona. Dispone de modo de bajo consumo.

9 SCI (Serial Communications Interfaces)


Un SCI es un UART reforzado Permite la comunicacin serie asncrona full-duplex Dispone de dos modos de bajo consumo: wait y stop
Introduccin 32

16

Microcomputadores 2002-03

17/02/2004

9 I2C bus
Inter-Integrated Circuit bus (Philips) Es un bus de 2 hilos para comunicacin serie desarrollado por PHILIPS Consiste en una lnea de datos y otra de reloj Es multi-maestro, multi-esclavo con deteccin de colisin Puede conectar hasta 128 dispositivos Admiten una distancia de hasta 10 metros Se desarroll para aplicaciones de 8 bits Es muy usado en el campo de la electrnica, el automvil y el industrial. Este bus puede comunicar a distintos perifricos Cada nodo puede iniciar una comunicacin para transmitir o recibir datos Cada nodo de la red tiene una nica direccin que acompaa cualquier mensaje

Introduccin

33

9 MICROWIRE/PLUS (National Semiconductor)


Es una interface de comunicacin serie sncrona bidireccional La usan los dispositivos fabricados por National Semiconductor: microcontroladores, conversores A/D, displays, EEPROMs, ...

9 CAN & J1850


CAN (Controller Area Network) Desarrollado conjuntamente por BOSH e INTEL para el cableado de automviles; es el sistema de cableado multiplexado estndar que se usa en la actualidad en la industria del automvil

9 1-WIRE
Es un interface de comunicacin serie.

Introduccin

34

17

Microcomputadores 2002-03

17/02/2004

Conversor Analgico Digital (A/D)


9 Convierte la tensin analgica a su valor digital, se utiliza para adquisicin de datos analgicos: temperatura, humedad, ... 9 Habitualmente era un componente externo 9 Existen varios tipos de conversores A/D:
Conversores A/D de aproximaciones sucesivas: Toma cada muestra en periodos de tiempo siempre iguales Es muy comn Es un sistema barato Es lento, para cada bit se necesita al menos un ciclo de reloj Conversores A/D Delta-Sigma Se encuentra en la gama alta de los DSP Tiene unas excelentes prestaciones a un precio relativamente barato

Introduccin

35

Conversores A/D FLASH Estructura bsica de los conversores A/D ms rpidos, realizan la conversin en un ciclo de reloj Se necesitan gran cantidad de comparadores (por encima de 10 bits, el nmero de comparadores no es manejable Se necesita gran cantidad de corriente para hacer funcionar todos los circuitos

Conversores D/A (Digitales/Analgicos)


9 Obtienen una tensin analgica a partir de un valor digital 9 Conversor D/A con Modulador de anchura de Pulso
Es una tcnica usada frecuentemente en este tipo de conversores

Introduccin

36

18

Microcomputadores 2002-03

17/02/2004

Otros dispositivos
9 Contador de pulsos
Es un contador de eventos Cada pulso incrementa el registro contador, almacenando el nmero de veces que ha ocurrido un evento

9 Entrada de Captura
Sirve para medir intervalos de tiempo (o frecuencias) entre eventos Guarda el valor un temporizador cuando ocurre el evento

9 Comparadores
A veces se colocan uno o ms comparadores dentro del microcontrolador Los valores de entrada y de salida del comparador estn disponibles en el bus de datos

Introduccin

37

9 Microcontroladores con circuitos analgicos incorporados


La informacin con la que trabajan los sistemas mecnicos y electrnicos es siempre analgica (presin, temperatura, corriente, flujos de aire y de lquidos son magnitudes analgicas). Cada da aumenta la demanda de microcontroladores con electrnica analgica incorporada. Se utilizan en aplicaciones como: Telecomunicaciones de alta velocidad Procesamiento de seal en tiempo real Sistemas de control industrial Sistemas para automviles

Introduccin

38

19

Microcomputadores 2002-03

17/02/2004

Salidas en paralelo
9 Son las ms comunes y se utilizan para:
Controlar rels, triacs, LEDs, displays, ...

9 Control de leds
Se conectan directamente al puerto de alta corriente (10 mA) interponiendo una resistencia serie Si no existen puertos de alta corriente se utiliza un transistor amplificador
+5V

Motorola 6805

PB3 PB2 PB1 PB0

R=220 a 330

+5
LED

RLIM 4,7 K 2N2222A

PXy

Introduccin

39

9 Control de displays
Si hay lneas suficientes: los segmentos se controlan con un puerto de alta corriente los nodos comunes se alimentan con un puerto normal se realiza una presentacin multiplexada software (la persistencia en la retina es 25 ms mximo)
+5
2N2907A 2N2907A

PA0 PA1 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0

1 k 1 k 8 x 47 a 100

DP A g f e d c b a

DP A g f e d c b a
40

Introduccin

20

Microcomputadores 2002-03

17/02/2004

Si no hay lneas suficientes: Se utiliza un decodificador externo Tambin se realiza una presentacin multiplexada Se puede utilizar un controlador integrado externo de display, por ejemplo, el MC 14499 de Motorola que utiliza comunicacin serie
1 k 1 k 2N2907A

+5
2N2907A

PA0 PA1

PB3 PB2 PB1 PB0

BCD a DP 7 segm. g f D e d C c B b A a

DP A g f e d c b a

DP A g f e d c b a

Introduccin

41

9 Control de displays LCD. Hay diferentes alternativas para su control:


Microcontroladores con puertos especiales para LCD Controlador externo adaptado al display utilizado Controlador de propsito general para displays LCD, por ejemplo, MC 145001 de Motorola con comunicacin serie

Salidas de potencia
9 Montaje Darlington
Los parsitos pueden perturbar el funcionamiento del microcontrolador

9 Control del rel


Sencilla y segura Para controlar muchos rels existen circuitos especializados, por ejemplo ULN 200X de Sprage

9 Control de triacs
Es conveniente aislar los triacs, por ejemplo con optoacopladores u opto-triacs (MOC 3041 de Motorola)
Introduccin 42

21

Microcomputadores 2002-03

17/02/2004

Entradas en paralelo
9 Son las ms comunes y se utilizan para:
Lectura de pulsadores y conmutadores Conocer el estado de diversos elementos como conmutadores, pulsadores, .... Explorar un teclado, ... Verificar la presencia de tensin, como por ejemplo en optoacopladores de aislamiento, ... Para comprobar el estado de una lnea de entrada, basta con conectarla a una entrada y a masa Si el conmutador est abierto, la entrada est a nivel lgico alto Si el conmutador est cerrado, la entrada est a nivel +5V lgico bajo 4,7 K a Los rebotes se pueden evitar por software realizando dos 10 K lecturas sucesivas

PXy

Introduccin

43

9 Entradas optoaisladas
La mejor opcin es utilizar un optoacoplador Cuando el circuito externo est alimentado, la entrada est a nivel lgico bajo Si el circuito externo no est alimentado, la entrada est a nivel lgico alto

9 Los teclados
Codificador de teclado externo (MM74C922 de National Semiconductor) recibe N teclas de entrada suministra un cdigo de salida de M bits (N=2M) Teclado matricial Las teclas se colocan en la interseccin de las lneas y las columnas Cuando se pulsa una teclas se cortocircuita una lnea con una columna, lo que permite localizar la tecla pulsada

Introduccin

44

22

Microcomputadores 2002-03

17/02/2004

Exploracin del teclado: Se configuran las lneas 0 a 3 como salidas y se genera un nivel lgico bajo. Las columnas 4 a 7 se configuran como entradas y se leen Si todas las entradas estn a nivel lgico alto, entonces no hay ninguna tecla pulsada Si una columna est a 0, significa que se ha pulsado una tecla Para detectar la lnea a la que corresponde se invierten los papeles, es decir, las lneas 0 a 3 se configuran como entrada y las columnas 4 a 7 como salidas

Entradas/salidas combinadas
9 El tiempo de reaccin humano es inferior al del C 9 Se pueden utilizar entradas/salidas combinadas:
Control de displays Exploracin de teclado

Introduccin

45

I 2.6 Polling e Interrupciones

Transferencia de E/S por consulta de estado (Polling)


9 El polling es una tcnica software en la que el microcontrolador pregunta constantemente al perifrico si necesita ser atendido 9 Podemos controlar varios perifricos usando esta tcnica:
Se consulta a los perifricos secuencialmente El perifrico activa un flag cuando tiene un dato preparado para transferir al microcontrolador El flag es ledo por el microcontrolador en la siguiente consulta de estado El microcontrolador ejecutar diferentes rutinas de entrada/salida dependiendo del flag activado

Introduccin

46

23

Microcomputadores 2002-03

17/02/2004

Interrupciones
9 Cuando los perifricos tienen un dato disponible para hacer la transferencia, se lo comunican al microcontrolador 9 El microcontrolador puede estar ejecutando el programa principal, y slo responder a los perifricos cuando ellos lo necesiten
Cuando el microcontrolador recibe una interrupcin, abandona el programa principal Identifica al perifrico que ha provocado la interrupcin Ejecuta la rutina de atencin a la interrupcin adecuada Vuelve al programa principal

9 La ventaja de las interrupciones, comparadas con el polling, es la velocidad de respuesta a un evento externo 9 Se reduce la cantidad de software y tiempo de proceso aadido al programa principal para preguntar constantemente a los perifricos si necesitan atencin

Introduccin

47

Interrupciones (continuacin)
9 La mayora de los microcontroladores tienen al menos una interrupcin externa 9 Disparo de Interrupciones:
Interrupciones por Flanco (de subida o bajada) No depende del tiempo que est activada la seal de interrupcin Es susceptible a los glitches o picos de interferencias Interrupciones por Nivel Tienen que estar a nivel alto (o bajo) durante un tiempo determinado No son susceptibles a los picos

9 Interrupciones enmascarables
Se pueden habilitar o inhibir de forma global o particular en momentos crticos Muchos microcontroladores pueden habilitar/ deshabilitar las interrupciones de forma global

9 Interrupciones no enmascarables
No se pueden inhibir, hay que atenderlas siempre

Introduccin

48

24

Microcomputadores 2002-03

17/02/2004

Interrupciones vectorizadas
9 Cuando se recibe una interrupcin el microcontrolador debe localizar el perifrico que demanda atencin:
Preguntando uno por uno a los perifricos hasta saber cual a producido la interrupcin. Esto es muy lento, pero tiene la ventaja de que el programador decide la prioridad Utilizando las interrupciones vectorizadas El perifrico se identifica Indica al microcontrolador, a travs del bus de datos, la direccin del vector de interrupcin En ocasiones, cada interrupcin tiene asignado un vector determinado

9 Los microcontroladores de 4 bits tienen un sistema de interrupciones no vectorizado 9 Los microcontroladores de 8, 16 y 32 bits tienen un sistema de interrupciones vectorizadas, con jerarqua de prioridad

Introduccin

49

I 2.7 Reset y reloj

Circuitera de inicializacin o reset


9 La mayora de los microcontroladores utilizan una circuitera de inicializacin automtica cuando se conecta la alimentacin 9 Los microcontroladores disponen de una entrada de reset
sensible a nivel alto sensible a nivel bajo (ms comn)

9 Se puede aadir un pulsador manual de reset


+V +V
C R

RESET
R

RESET
C

Reset sensible a nivel alto


Introduccin

Reset sensible a nivel bajo


50

25

Microcomputadores 2002-03

17/02/2004

El reloj
9 Es un elemento fundamental en los microcontroladores 9 Todos los microcontroladores tienen integrado un oscilador y slo necesitan un elemento externo para fijar la frecuencia (dentro de las indicadas por el fabricante) 9 Para que funcione el reloj interno:
Cristal de cuarzo. Referencia de tiempo muy estable Resonador cermico. Ms barato pero no tan exacto Generador externo de seales En ocasiones basta con una resistencia (PIC de Microchip)

Introduccin

51

I 2.8 Caractersticas Especiales de los microcontroladores


Los microcontroladores vienen ahora con una series de caractersticas que son de una gran ayuda al ingeniero de control:
Temporizadores Watchdog Circuitos sleep/wakeup" microcontrolador Modos potentes de direccionamiento de entrada/salida. Circuitos conversores analgico/digital etc. Digital Signal Processors

9 Estas nuevas caractersticas especficas para control son cada vez ms numerosas y vienen incorporadas sin aumento de precio en los nuevos dispositivos
Introduccin 52

26

Microcomputadores 2002-03

17/02/2004

Temporizador Watchdog ("Perro guardian")


9 Un temporizador watchdog permite la recuperacin del sistema ante un problema 9 Si un programa entra en un bucle infinito, o si un fallo de hardware le impide funcionar, entonces el watchdog provocar un reset del sistema en un intervalo de tiempo predeterminado 9 El problema puede continuar existiendo, pero al menos existe una va de solucin
Se podra re-iniciar el sistema en un modo de funcionamiento mnimo o auxiliar

9 Esta caracterstica es muy til para sistemas desatendidos

Introduccin

53

Procesadores digitales de seal DSP (Digital Signal Processors)


9 Los DSPs ejecutan algoritmos matemticos-intensivos repetitivos. Hoy, muchas aplicaciones requieren microcontroladores y DSPs trabajando conjuntamente, y los fabricantes han respondido introduciendo microcontroladores con DSPs incorporados 9 La operacin bsica de un DSP son MACC (MultiplyAccumulate). El nmero de datos que un DSP puede Multiplicar y Acumular en una nica operacin, determinar el rango y por consiguiente la aplicacin 9 Bits Fixed/Floating Dynamic Range. Aplicaciones tpicas
8 Fixed 48 dB Telephone-quality voice 16Fixed 96 dB Compact disk (marginal) 24 Fixed 144 dB Compact disk

Introduccin

54

27

Microcomputadores 2002-03

17/02/2004

Monitor de reloj (Clock Monitor)


9 Un monitor de reloj puede apagar el microcontrolador (mantenindolo en reset) si la entrada de reloj es muy lenta, esto puede activarse bajo control de software

Cargador del programa residente (Resident program loader)


9 Al arrancar, el microcontrolador carga automticamente el programa a ejecutar por un puerto serie o paralelo, podemos cambiar el programa las veces que queramos y desde un lugar remoto 9 Apropiado para sistemas distribuidos y para probar nuevos programas y prototipos eliminando el ciclo de borrado/grabado tpico de las EPROMs

Introduccin

55

PROGRAMA MONITOR
9 Un monitor es un programa instalado previamente en el microcontrolador que permite desarrollos bsicos y depuracin de programas. 9 Suelen incluir:
Carga ficheros objeto en la memoria RAM Ejecucin de los programas cargados Acceso a los registros y memoria Desensamblado de cdigo mquina Puntos de ruptura y ejecucin de programas paso a paso

9 Los programas monitor pueden comunicarse con un PC, con lo que muchas funciones del programa monitor pueden ser ejecutadas en el PC
Esto simplifica el programa monitor que debe ser cargado en el microcontrolador y que en ocasiones se limita a recibir el programa (transmitido desde el PC) y ejecutarlo

Introduccin

56

28

Microcomputadores 2002-03

17/02/2004

I 2.9 Los pines y funciones no utilizadas


9 Los pines y funciones que no se utilizan deben inhabilitarse de forma expresa
Por ejemplo, si existe una funcin de puesta en marcha a travs de un suceso externo y esta funcin no se utiliza, es primordial conectar el pin correspondiente al nivel lgico que la inhibe para evitar que los impulsos parsitos externos provoquen un mal funcionamiento del temporizador o del propio programa

9 Otro pin importante a tener en cuenta es el que permite la programacin de las memorias EEPROM y UVPROM internas

Introduccin

57

3 LENGUAJES DE PROGRAMACIN PARA MICROCONTROLADORES


I 3.1 Lenguaje mquina/ensamblador
9 El lenguaje mquina (o cdigo mquina) es la representacin del programa tal como la entiende el microcontrolador 9 El lenguaje ensamblador es una representacin alfanumrica del lenguaje mquina, lo que facilita su lectura:
cada instruccin en lenguaje ensamblador se corresponde con una instruccin en cdigo mquina, por ejemplo: OR P1,#04 91 04 10 (H)

9 Un programa en lenguaje ensamblador es rpido y corto


El programador genera el cdigo ms ptimo posible, adaptado al microcontrolador.

9 Para programar en ensamblador se requiere un mayor conocimiento tanto de la arquitectura como de la estructura del microcontrolador
Introduccin

58

29

Microcomputadores 2002-03

17/02/2004

Tipos de instrucciones:
9 De transferencia de datos
De entrada/salida

9 Aritmticas 9 Lgicas 9 De tratamiento de bloques 9 De salto (condicionales/incondicionales) 9 De control de interrupciones 9 De control del microcontrolador 9 De control de contadores

Formato de las instrucciones


9 Arquitectura RISC (PIC de Microchip) 9 Arquitectura CISC (Familia 96 de Intel)

Introduccin

59

I 3.2 Intrpretes
9 Un Intrprete es un traductor de un lenguaje de alto nivel (prximo al lenguaje natural) a cdigo mquina 9 El Intrprete est residente en el microcontrolador 9 Ejecuta el programa leyendo cada sentencia en alto nivel traducindolas y ejecutndolas 9 Una cosa interesante de los Intrpretes es que se puede construir y desarrollar un programa interactivamente:
se escribe primero un trozo pequeo de programa, a continuacin se puede probar para ver inmediatamente cmo funciona. Cuando los resultados son satisfactorios, se puede agregar las partes adicionales que se necesiten y as sucesivamente

Introduccin

60

30

Microcomputadores 2002-03

17/02/2004

9 Los dos intrpretes ms populares que hay para microcontroladores son para los lenguajes BASIC y FORTH
El BASIC es conocido por su sencillez, legibilidad y popularidad. Una idea comn es que el BASIC (interpretado) es lento, esto puede ser mejorado usando diferentes tcnicas El FORTH tiene muchos fans debido a su velocidad (se aproxima al lenguaje ensamblador) y su afinidad para construir un sistema con partes reemplazables de software Muchos sistemas FORTH vienen con un programa monitor que transforma el PC en un sistema de desarrollo Puede ser difcil escribir en FORTH (sino se tiene experiencia con l) e incluso es duro de leer. Sin embargo, es muy til y productivo como lenguaje para control de sistemas y para robtica http://www.amresearch.com/

Introduccin

61

I 3.3 Los Compiladores


9 Se encargan de traducir todo el programa de alto nivel directamente a cdigo mquina
El cdigo mquina se pasa a la memoria del microcontrolador (EPROM, RAM, ... ) El microcontrolador ejecuta el programa directamente, sin interpretado

9 Los compiladores ms conocidos para microcontroladores son:


C. Permite el acceso a la estructura del microcontrolador: registros, bits, etc. BASIC compilado PL/M de Intel Mdula-2 tiene tambin un seguimiento relativo debido a su eficiente cdigo y alta productividad ADA. Para grandes chips (16 bits o ms) FORTH compilado. A pesar de que el FORTH interpretado se acerca (y a veces sobrepasa) la velocidad de muchos compiladores
Introduccin 62

31

Microcomputadores 2002-03

17/02/2004

HERRAMIENTAS DE DESARROLLO
Se puede ejecutar el programa paso a paso y ver exactamente qu pasa segn el programa se ejecuta Permiten ver y modificar el contenido de los registros, memoria, variables y ver como responde el programa No soporta interrupciones reales Ms lento que el microcontrolador simulado

I 4.1 Simuladores
9 Un simulador ejecuta el programa de un microcontrolador en un ordenador:

9 Evita el ciclo borrado/programado de la EPROM en el desarrollo de programas de microcontrolador 9 Se puede aprender experimentando con pequeos trozos de cdigo y observar en pantalla los resultados 9 Algunos fabricantes tienen un cruce entre simulador software y emulador hardware (Hardware simulator, National Semiconductor y Philips)
Introduccin 63

I 4.2 Debuggers residentes


9 Un debbuger residente corre su programa dentro del propio microcontrolador, al mismo tiempo muestra el progreso de depuracin en una mquina host (como por ejemplo un PC) 9 Tiene las mismas caractersticas que un simulador normal, con la ventaja adicional de que el programa corre en un microcontrolador real 9 Un debbuger residente, utiliza los siguientes recursos del microcontrolador:
Un puerto de comunicaciones, para comunicarse con el host Una interrupcin, para generar programas paso a paso Memoria para almacenar el programa residente

Introduccin

64

32

Microcomputadores 2002-03

17/02/2004

I 4.3 Emuladores
9 Si se dispone de dinero, este es el equipo para desarrollar su sistema. 9 Un emulador es un sofisticado dispositivo que sustituye al microcontrolador al mismo tiempo que est captando informacin 9 Hemos de retirar el microcontrolador de la placa y poner en su lugar el emulador 9 Nos da total informacin sobre lo que est pasando en la realidad, y no requiere ningn recurso de la tarjeta que est analizando 9 El emulador puede venir con su propio display o conectado a un PC

Introduccin

65

I 4.4 Generadores de cdigo


9 Ayudan a generar cdigo de forma automtica 9 Pueden generar cdigo tanto en lenguajes de alto nivel (C) como de bajo nivel (ensamblador) 9 El sistema se configura de forma visual, y el generador de cdigo proporciona el trozo de cdigo correspondiente

Introduccin

66

33

Microcomputadores 2002-03

17/02/2004

5 LAS FAMILIAS DE MICROCONTROLADORES


I 5.1 Introduccin
9 A continuacin se describen los las familias de microcontroladores ms conocidas 9 Una pregunta comn "Qu microcontrolador debo usar?".
El mejor consejo es elegir un chip del que podamos disponer todas las herramientas de desarrollo a un precio razonable, y adems buena documentacin. A nivel de experimentar en casa, el Intel 8051, Motorola 68HC11 o Microchip PIC son una buena eleccin

Introduccin

67

I 5.2 Intel

8048 (Intel)
9 Es el abuelo de los microcontroladores
el primer microcontrolador, aunque un antiguo y un poco obsoleto (para los estndar de hoy en da), es an muy popular debido a su bajo precio, disponibilidad y un enorme rango de herramientas de desarrollo. Se utilizaba como microcontrolador en los teclados de los IBM PC (1981)

9 Est diseado para bajo coste y pequeo tamao. 9 Tiene arquitectura de Harvard modificada con memoria ROM para el programa y una memoria RAM adicional de 64 a 256 bytes, ambas on-chip. 9 Las entradas/salidas tienen su propio espacio de memoria

Introduccin

68

34

Microcomputadores 2002-03

17/02/2004

8051 (Intel y otros)


9 El 8051, pertenece a la segunda generacin de microcontroladores Intel (1980), ha marcado muchas de las caractersticas que tienen los microcontroladores en la actualidad 9 Tiene un diseo un poco raro, pero es muy potente y sencillo de programar (una vez que se conoce) 9 La arquitectura es Hardvard Modificada, con espacio de direcciones separadas para la memoria de programa y la memoria de datos
CPU de 8 bits optimizada para control de eventos La memoria de programa puede llegar hasta 64k. La parte baja (4k o 8k dependiendo del modelo) est dentro del chip El 8051 puede direccionar hasta 64k de memoria de datos externa, y solo puede acceder a ella mediante direccionamiento indirecto

Introduccin

69

8051 (Intel y otros) (continuacin )


9 El 8051 tiene 128 bytes (256 bytes para el 8052) de memoria RAM dentro del chip reservada para:
Registros con funciones especiales (SFR, Special function Registers) Mapeo de las Entrada/Salidas

9 El 8051 es un "procesador booleano


Tiene instrucciones que pueden manejar bits desde cualquier sitio (RAM, acumulador, registros de E/S, etc.) Puede hacer operaciones lgicas a nivel de bits y ejecutar saltos relativos basados en dichos resultados

9 Existe infinidad de software, comercial y libre, para este microcontrolador 9 Muchos fabricantes hacen cientos de variantes diferentes del 8051 para cualquier aplicacin 9 Actualmente se ofrecen a 24 y 33MHz.

Introduccin

70

35

Microcomputadores 2002-03

17/02/2004

Introduccin

71

8xC251 (MCS 251)


9 Versin avanzada del 8051
Incrementa hasta en un 15% el rendimiento del 8051

9 Orientado a comunicaciones con el PC o dispositivos externos:


Copiadoras, escner, impresoras, CD-ROM, ..

9 Caractersticas:
Mayor rendimiento para aplicaciones embedded Mayor flexibilidad para programacin en C Mayor capacidad de memoria: 512 byte o 1 Kbyte RAM on-chip 8 or 16 Kbytes ROM/OTPROM on-chip opcin ROMless Menor tamao del cdigo y del consumo Soporte para Programmable Counter ArrayK (PCA): Real-time capture and compare High speed output PWM Hardware watchdog timer
Introduccin 72

36

Microcomputadores 2002-03

17/02/2004

9 Opciones:
8xC251SA 8K ROM/OTPROM 8xC251SB 16K ROM/OTPROM 8xC251SP 8K ROM/OTPROM 8xC251SQ 16K ROM/OTPROM 8xC251TA 8K ROM 8xC251TB 16K ROM 8xC251TP 8K ROM 8xC251TQ 16K ROM Tambin disponibles versiones ROMless 1K RAM 1K RAM 512B RAM 512B RAM 1K RAM 1K RAM 512B RAM 512B RAM

Introduccin

73

80c196 (MCS-96)
9 La tercera generacin de microcontroladores Intel 9 El 80C196 es un procesador de 16 bits
Originalmente fabricado en tecnologa NMOS (8096), ahora est disponible principalmente en CMOS. Intel Corp. Ha introducido recientemente una versin del doble de velocidad (50 MHz) del 80C196.

9 Diseado para aplicaciones de tiempo real


HSI, HSO y EPA (Event Processor Array)

9 Sus caractersticas son:


Multiplicador y divisor hardware 6 modos de direccionamiento Alta velocidad de E/S Conversor A/D Canal de comunicaciones Serie Hasta 40 puertos de E/S 8 Controladores de interrupcin programables Modulador de anchura de pulso PWM (para conversin D/A) Temporizador Watchdog
Introduccin 74

37

Microcomputadores 2002-03

17/02/2004

Producto 8x98 8x97BH 8x97JF 8xC194 8xC198 8xC196KB 8xC196TB 8xC196KC 8xC196JQ 8xC196KR 8xC196JR 8xC196KQ

Fabricacin NMOS NMOS NMOS CHMOS CHMOS CHMOS CHMOS CHMOS CHMOS CHMOS CHMOS CHMOS

FAMILIA-96 Bus ROM/ RAM Ncleo (bits) EPROM (datos) 8 BH 8K 256 8 / 16 BH 8K 256 8 / 16 BH 16 K 256 8 KX 8K 256 8 KX 8K 256 8 / 16 KX 8K 256 8 / 16 KX 8K 256 8 / 16 KX 16 K 512 8 / 16 KX 12 K 256 8 / 16 KX 16 K 512 8 / 16 KX 16 K 512 8 / 16 KX 12 K 256

RAM EPA SERIE HSIO A/D PWM (cod.) 1 8 4 CH 1 1 8 8 CH 1 256 1 8 8 CH 1 1 8 1 1 8 4 CH 1 1 8 8 CH 1 1 8 1 1 8 8 CH 3 256 6 2 6 CH 256 10 2 8 CH 256 6 2 6 CH 256 10 2 8 CH -

Introduccin

75

80186,80188 (Intel)
9 Estos chips son, fundamentalmente, la versin en microcontrolador del 8086 y del 8088 (del famoso IBM PC). 9 El chip tiene:
2 Canales de DMA (acceso directo a memoria) 2 Contadores/temporizadores. Controlador de interrupcin programable. Refresco de RAM dinmica. Hay versiones de bajo consumo, con puerto serie...

9 Una de las mayores ventajas de estos dispositivos es que se pueden utilizar herramientas de desarrollo estndar para PC (Compliladores, ensambladores, etc.). 9 Estos chips tienen la misma arquitectura bsica que el 8088 original usado en el IBM PC.

Introduccin

76

38

Microcomputadores 2002-03

17/02/2004

80386 EX de Intel
9 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.

9 Ofrecen la potencia de un 386 9 Una de las mayores ventajas de estos dispositivos es que se pueden utilizar herramientas de desarrollo estandar para PC (Compiladores, ensambladores, etc.).
El tiempo de aprendizaje ser mucho ms corto, pues estos chips tienen la misma arquitectura bsica que el 8088 original usado en el IBM PC.

Introduccin

77

I 5.3 Western Design Center


65C02/W65C816S/W65C134S
9 El Western Design Center Inc. es el dueo original y diseador del microprocesador 65C02 de 8-bit que se us en el Apple original
El W65C816S es un microcontrolador con un 65C02 dentro

9 Para el ordenador Commodore y el Atari WDC desarrollo el microprocesador 65C816 de 16 bits.


El W65C134S es un microcontrolador hecho con un 65C816

Introduccin

78

39

Microcomputadores 2002-03

17/02/2004

I 5.4 Motorola

MC14500 (Motorola)
9 Este es un chip que todo el mundo debera conocer (est fuera de produccin) 9 Caractersticas:
Encapsulado de 16 patillas Ancho de palabra de 1 bit! Procesador RISC con un juego de 16 instrucciones Un solo modo de direccionamiento Es un poco raro y limitado Sin lmite de memoria

Introduccin

79

68HC05 (Motorola)
9 Est basado en el antiguo 6800 9 Tiene arquitectura Von-Neuman:
Las instrucciones, datos, entrada/salida y temporizadores ocupan un mismo espacio de memoria

9 El puntero de pila tiene un ancho de palabra de 5 bits, lo que limita la pila a 32 posiciones 9 algunos modelos incluyen:
Conversor A/D Sintetizador PLL E/S serie

Introduccin

80

40

Microcomputadores 2002-03

17/02/2004

68HC11 (Motorola y Toshiba)


9 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

9 Dependiendo de las versiones pueden tener:


Memoria EEPROM o OTPROM Memoria RAM Entradas/Salidas digitales Temporizadores Generadores PWM (modulacin de anchura de pulso) Contadores Puerto de Comunicaciones sncronas y asncronas

Introduccin

81

M68HC11 Family
Product 68HC11D0 68HC11D3 68HC711D3 68HC11E0 68HC11E1 68HC11E9 68HC711E9 68HC11E20 68HC711E20 68HC11F1 68HC11FC0 68HC11K0 68HC11K1 68HC11K4 68HC11KS2 68HC711KS2 68HC11KW1 68HC11P1 68HC11P2 ROM (KB) 4 12 20 24 32 RAM EPROM/OTP EEPROM (Bytes) (KB) (Bytes) 192 192 192 512 512 512 512 768 768 1 1 768 768 768 1 1 768 1 1 4 12 20 32 32 512 512 512 512 512 512 640 640 640 640 640 640 640 Timer Serial A/D PWM Voltage (V) 3.0, 5.0 3.0, 5.0 5 3.0, 5.0 3.0, 5.0 5 5 5 3.0, 5.0 5 Bus Freq. (MHz)* 3 3 3 3 3 3 4 3 4 5 6 4 4 4 4 4 4 4 4 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI SPI pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI, SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI SPI pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 8-CH 8-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, SCI+ SPI 10-CH 10-Bit pulse accumulator 16-Bit, 3/4IC, 4/5OC, RTI, Triple SCI 8-CH 8-Bit pulse accumulator SPI 16-Bit, 3/4IC, 4/5OC, RTI, Triple SCI 8-CH 8-Bit pulse accumulator SPI

4-CH 8-Bit or 3.0, 5.0 2-CH 16-Bit 4-CH 8-Bit or 3.0, 5.0 2-CH 16-Bit 4-CH 8-Bit or 3.0, 5.0 2-CH 16-Bit 4-CH 8-Bit or 2-CH 16-Bit 4-CH 8-Bit or 2-CH 16-Bit 4-CH 8-Bit or 2-CH 16-Bit 5 5 5 5 5

Introduccin

82

41

Microcomputadores 2002-03

17/02/2004

I 5.5 MicroChip

PIC (MicroChip)
9 Los microcontroladores PIC son populares desde hace ms de 20 aos 9 Fueron los primeros microcontroladores RISC
El diseo RISC es ms sencillo, lo que permite aadir ms caractersticas a bajo precio

9 Tiene pocas instrucciones (33 instrucciones el 16C5X mientras que el Intel 8048 tiene ms de 90) 9 Caractersticas hardware:
Tiene arquitectura Harvard: Buses de instrucciones y datos separados 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 Cauce segmentado

Introduccin

83

PIC (MicroChip) (continuacin I )


9 Los microcontroladores PIC estn ganando popularidad debido a:
El chip es pequeo, tiene pocas patillas Muy bajo consumo Bajo costo Pueden ser usados en reas en las que antes se pensaba que eran inapropiados

9 Existen varias lneas


PIC12 PIC14 PIC16. La lnea 16C5X es la lnea descendiente del diseo original PIC, est limitada y se ha quedado obsoleta con la lnea 16CXX PIC17 PIC18

Introduccin

84

42

Microcomputadores 2002-03

17/02/2004

PIC (MicroChip) (continuacin II )


9 La lnea 16CXX:
mejoran las prestaciones de la lnea anterior, son ms flexibles, mantienen las caractersticas de velocidad y sencillez, existe una amplia gama de caractersticas y precios.

9 La lnea 17CXX es ms ambiciosa hacen cosas que las 16CXX no pueden hacer, pero el campo de aplicacin est por determinar. 9 La lnea PIC18 es la ms extendida actualmente. 9 Los databook de Microchip para microcontroladores PIC tienen una documentacin completa de la manera de programarlos que otros fabricantes solo suministran a clientes especiales.

Introduccin

85

PIC (MicroChip). Familias


9 Gama alta
PIC17C4XX 25 Mhz, 2K EPROM, 128 B RAM de datos 11 interrupciones externas 33 entradas/salidas 55 instrucciones

9 Gama Media
PIC16C6X - PIC16C7X - PIC16C8X 10 a 20 Mhz, 0 a 4K EPROM, 36 a 192 B RAM de datos 3 a 12 interrupciones externas de 13 a 33 entradas/salidas 35 instrucciones

9 Gama Baja
PIC16C5X 20 Mhz, 0 a 2K EPROM, 25 a 73 B RAM de datos Sin interrupciones externas de 12 a 20 entradas/salidas 33 instrucciones
Introduccin

86

43

Microcomputadores 2002-03

17/02/2004

I 5.6 National Semiconductor

COP400 Familia (National Semiconductor)


9 La familia C0P400 es un microcontrolador de 4 bit, P2CMOS, que ofrece desde 512 hasta 2K de ROM y desde 32x4 hasta 160x4 de memoria RAM 9 El encapsulado vara desde 20 hasta 28 patillas (DIP/SO/PLCC) 9 Incluye:
Interface de comunicaciones serie Microwire Temporizadores Contadores Tensin de funcionamiento desde 2,3 hasta 6 voltios. Soporte OTP

9 Lejos de la vieja tecnologa, los microcontroladores de 4 bits tienen un importante mercado y tienen ms aplicaciones que nunca 9 Estos dispositivos son muy verstiles, hay ms de 60 diferentes Introduccin por la familia COP800. 9 Actualmente ha sido desplazada

87

COP800 Familia (National Semiconductor)


9 La familia COP800 Basic es un microcontrolador de 8 bits totalmente esttico, fabricado usando puertas "double metal silicon" de tecnologa microCMOS 9 Este microcontrolador de bajo costo contiene:
Las Instrucciones para el manejo de bits Memoria ROM y RAM Memoria de E/S mapeada Pines de E/S con capacidad de corriente de hasta 15mA. Conversor A/D de 8 canales Entrada/Salida serie Microwire y UART Temporizadores/Contadores de 16 bits Temporizador WATCHDOG Interrupciones vectorizadas Comparadores Modo halt e Idle Monitor de reloj Proteccin Brownout Tensin de alimentacin desde 2.5 hasta 6 V
Introduccin 88

44

Microcomputadores 2002-03

17/02/2004

I 5.6 NEC
9 78K

Se centra en tres lneas bsicas


De 8 / 16 bits

9 V850
De 32 bits

9 VR
De 64 bits

78Kx
9 78K0S
Microcontrolador de 8 bits Optimizado para bajo coste

9 78K0
Microcontrolador de 8 bits Optimizado para eficiencia

9 78K4
Microcontrolador de 16 bits Optimizado para velocidad Introduccin
89

V850
9 Microcontroladores RISC de 32 bits 9 Arquitectura Harvard.
Se simplifica el core hardware y se minimiza el tamao. Mximo rendimiento con menor coste

9 Ofrece tres lneas:


K-line. Alto rendimiento y compatibilidad: 20 Mhz. Apropiado para aplicaciones tpicas de 16 bits. S-line Aplicaciones con grandes necesidades de memoria. Desde 256 Kby de ROM y 24 Kby de RAM a 640 Kby de ROM y 48 Kby de RAM. Aplicaciones de automocin e industriales. F-line Aplicaciones de control: control de ventanas, cinturones, climatizacin,.... Interfaces FCAN, UARTs, Flash,....
Introduccin 90

45