Diseño de Sistemas Con Microcontroladores

45
Microcomputadores 2002-03 17/02/2004 1 INTRODUCCIÓN DISEÑO DE SISTEMAS CON MICROCONTROLADORES Introducción 2 ÍNDICE 1. INTRODUCCIÓN 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 Elección de un microcontrolador • 1.7 Mercado • 1.8 Fabricantes

Transcript of Diseño de Sistemas Con Microcontroladores

  • Microcomputadores 2002-03 17/02/2004

    1

    INTRODUCCIN

    DISEO DE SISTEMAS CON

    MICROCONTROLADORES

    Introduccin 2

    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

  • Microcomputadores 2002-03 17/02/2004

    2

    Introduccin 3

    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 4

    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

  • Microcomputadores 2002-03 17/02/2004

    3

    Introduccin 5

    1. INTRODUCCIN

    1.1 Qu es un microcontrolador? Evolucin de los sistemas de control9Al principio los sistemas de control se hacan

    exclusivamente con componentes discretos lgicos9Despus se utilizaron microprocesadores. El sistema de

    control completo poda encajar dentro de una tarjeta de circuito impreso9Posteriormente 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:9La mayor capacidad de integracin9La necesidad de sistemas inteligentes o al menos

    programables

    Introduccin 6

    Interfaz de E/S

    Exterior

    MemoriaROM

    MemoriaRAM

    Unidad Central

    Bus (direcciones, datos, control)

    1.2 Estructura de un microcontrolador9Estructura de un sistema programable

  • Microcomputadores 2002-03 17/02/2004

    4

    Introduccin 7

    Direcciones/datos

    Puertos deentrada/salida

    P0 P2 P3P1

    Controladorde bus

    Puertoserie

    Temporizador 0

    Temporizador 1EPROM

    ROMUVPROMOTPROM

    RAM

    Unidad Central

    Bus (direcciones, datos, control)

    Controlador deInterrupciones

    Osc

    Interfazespecfica

    9Estructura de un microcontrolador

    Introduccin 8

    Los microcontroladores son la solucin en on-chip. Habitualmente incluyen:

    9CPU9RAM 9EPROM/PROM/ROM/OTPROM9 I/O (input/output) - serie y paralelo9Temporizadores/Contadores9Sistema de interrupciones9Adems de sistemas auxiliares como :

    A/D D/A DSP ...

  • Microcomputadores 2002-03 17/02/2004

    5

    Introduccin 9

    1.3 Ventajas e inconvenientes Ventajas de los microcontroladores:9Reunen en un slo circuito integrado varios elementos

    Disminucin del hardware Menor complejidad de los circuitos impresos

    9Mayor fiabilidad del sistema Al haber menor nmero de componentes disminuyen las

    conexiones y las fuentes de error9Tecnologa MOS, CMOS o HCMOS

    Disminucin del consumo9Disminucin de los costes

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

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

    Introduccin 10

    Inconvenientes de los microcontroladores:9Programacin mediante mscaras

    Fabricacin de grandes series No rentable para pequeas series Utilizacin de OTPROM

    9Herramientas y sistemas de desarrollo Incrementan el precio final

  • Microcomputadores 2002-03 17/02/2004

    6

    Introduccin 11

    1.4 Las aplicaciones9Los microcontroladores se usan cuando la potencia de

    procesamiento no es importante9Robtica:

    Los sistemas basados en microprocesador y los microcontroladores se usan extensivamente en robtica

    9Captura de datos: temperatura, lluvia, ... Es una de las aplicaciones especiales de los

    microcontroladores9Sistemas porttiles y autnomos

    Debido a su pequeo tamao y bajo consumo9El sector del automvil

    Es uno de los mayores mercados de microcontroladores Desarrollo de microcontroladores especficos:

    Deben responder a condiciones extremas Deben ser muy fiables

    9Sector domstico (de 35 a 240 microcontroladores)

    Introduccin 12

    Se pueden encontrar microcontroladores en:9Aparatos electrodomsticos:

    microondas, hornos, frigorficos televisin ,vdeo, equipos de sonido

    9Equipos informticos y electrnicos impresoras, mdems, copiadoras lser, ...

    9Automviles Mando de sistemas del automvil:

    ABS, Inyeccin Encendido, ...

    Sistemas de diagnstico Climatizador

    9Mando medioambiental Invernadero, Fbrica, Casa

    9 Instrumentacin, sistemas aerospaciales, ...

  • Microcomputadores 2002-03 17/02/2004

    7

    Introduccin 13

    1.5 Tipos de microcontroladores

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

    Existen Microcontroladores/Procesadores especializados para:9Comunicaciones9Manejo del teclado9Procesamiento de la seal9Proceso vdeo9 ...

    Introduccin 14

    1.6 Eleccin de un microcontrolador Para elegir el dispositivo ms apropiado para un

    proyecto, se ha de considerar lo siguiente:9Puedo obtener ayuda cuando tenga problemas?9Qu herramientas de desarrollo estn disponibles y

    cunto cuestan?9Qu clase de documentacin tengo disponible?

    (manuales de referencia, notas de aplicacin, libros)9Tiene el fabricante disponibles para ese microcontrolador

    dispositivos perifricos? (conversores A/D, memoria, reguladores de tensin)9Disponen de microcontroladores OTM, grabables por

    mscara, EPROM, de esa misma familia?

  • Microcomputadores 2002-03 17/02/2004

    8

    Introduccin 15

    Otras cuestiones a considerar son las siguientes:9No existen buenos y malos fabricantes de

    microcontroladores Posibilidades de integracin y competencias tcnicas casi

    idnticas9Entre los criterios de eleccin, el ms importante:

    Adaptacin de la arquitectura a las necesidades de la aplicacin

    Disponer o no del sistema de desarrollo9Considerar las familias de microcontroladores

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

    Introduccin 16

    1.7 Mercado9 Venta mundial de microcontroladores (en kmillones de

    dlares) '93 '94 '95 '96 '97 '98 '99 '00

    4bits 1,6 1,7 1,8 1,8 1,8 1,8 1,8 1,7 8-bit 3,7 4,6 5,6 6,5 7,5 8,4 9,2 9,7 16-bit 0,4 0,8 1,1 1,6 2,1 2,9 3,6 4,4

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

    integrados estn potenciando los microcontroladores de 8 bits.

  • Microcomputadores 2002-03 17/02/2004

    9

    Introduccin 17

    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

    1.8 Los Fabricantes de uP y uC

    Introduccin 18

    2. CARACTERSTICAS DE LOS MICROCONTROLADORES

    2.1 Tcnicas de fabricacin CMOS (Complementary Metal Oxide

    Semiconductor)9Este es el nombre de la tcnica con que se fabrican la

    mayora (sino todos) los microcontroladores. 9Caractersticas:

    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

  • Microcomputadores 2002-03 17/02/2004

    10

    Introduccin 19

    PMP - (National Semiconductor) 9PMP 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)9El microcontrolador ROM puede estar programado en slo

    dos semanas

    Introduccin 20

    2.2 Tipo de arquitectura Arquitectura Von-Neuman9Un nico bus de datos para instrucciones y datos9Las instrucciones del programa y los datos se guardan

    conjuntamente en una memoria comn9Cuando 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 Harvard9 El bus de datos y el bus de instruccin estn separados9 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

  • Microcomputadores 2002-03 17/02/2004

    11

    Introduccin 21

    CISC9Complex Instruction Set Computer9Casi todos los microcontroladores actuales tienen un juego

    de instrucciones complejo y amplio9El conjunto de instrucciones tpico de un microcontrolador

    es de ms de 809El 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 22

    RISC9Reduced Instruction Set Computers9Al tener un conjunto de instrucciones reducido:

    el controlador es ms sencillo y el chip es ms pequeo es ms rpido tiene un consumo menor

    9Principales 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 9Specific Instruction Set Computer9 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

  • Microcomputadores 2002-03 17/02/2004

    12

    Introduccin 23

    2.3 Opciones avanzadas de Memoria EEPROM9Electrically Erasable PROM 9Muchos microcontroladores incorporan una pequea

    memoria EEPROM dentro del chip: Contiene parmetros que pueden cambiarse si la aplicacin lo

    necesita9Es lenta9El nmero de veces que se puede borrar/grabar est

    limitado

    FLASH (EPROM) 9Las memorias FLASH son mejores que las EEPROM

    Son ms rpidas que las memoria EEPROM Permiten ms ciclos de borrado/grabacin.

    Introduccin 24

    Memoria RAM9tilies para programas de gran tamao9Ms rpida que las memorias no voltilies9Nmero ilimitado de veces que puede grabarse9Apropiada para aplicaciones con grandes cantidades de

    datos que cambian contnuamente

    Memoria Field programming/reprogramming9Memoria no voltil9Puede reprogramase sin desconectar el microcontrolador9Apropiada 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.

    9Permite actualizaciones remotas

  • Microcomputadores 2002-03 17/02/2004

    13

    Introduccin 25

    Memoria OTP9One Time Programmable9Un OTP es una memoria PROM que slo puede grabarse

    una vez9Se utiliza para pequeas series

    Para probar el programa antes de fabricar grandes cantidades de microcontroladores con memorias ROM de mscara

    9Como 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 mscara9Son interesantes para un gran nmero de unidades cuando

    el programa va a ser el definitivo9El tiempo de entrega es de 8 a 44 semanas

    Introduccin 26

    Proteccin del software 9El software est protegido

    Por encriptacin

    Proteccin del fusible

    9Es una opcin en OTPs y EPROM9En 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

  • Microcomputadores 2002-03 17/02/2004

    14

    Introduccin 27

    Memorias externas9Se pueden aadir RAM externas9Se necesita que el microprocesador posea un modo

    expandido o extendido (acceso al bus interno)9Se 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 28

    8

    PB0-7

    PA0-7

    AS

    D0-7 Q0-7

    LE OE373

    R/WE

    A8-158

    8A0-7

    8D0-7

    WE

    MC

    68H

    C11

    A8

    CLK

    PB0-7

    PA0-7AS

    WE

    A0 - A7

    A8 - A15

    D0 - D7

    Cic

    lo d

    e E

    scri

    tura

    Memorias externas (esquema)

  • Microcomputadores 2002-03 17/02/2004

    15

    Introduccin 29

    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: 9Hay 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.

    9Si 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.

    9Menos calor por transistor implica menos tensin (3,3 v)

    Introduccin 30

    Caractersticas9Tipo 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

    9Tensin 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

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

    alimentacin

  • Microcomputadores 2002-03 17/02/2004

    16

    Introduccin 31

    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 32

    2.5 ENTRADAS y SALIDAS Comunicacin Serie9UART (Universal Asynchronous Receiver-Transmitter)

    Un UART es un adaptador serie para comunicacionesasncronas

    9USART 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

    9SPI (Serial Peripheral Interface. Motorola) El SPI permite la comunicacin serie, duplex y asncrona. Dispone de modo de bajo consumo.

    9SCI (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

  • Microcomputadores 2002-03 17/02/2004

    17

    Introduccin 33

    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 34

    9MICROWIRE/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, ...9CAN & 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

    91-WIRE Es un interface de comunicacin serie.

  • Microcomputadores 2002-03 17/02/2004

    18

    Introduccin 35

    Conversor Analgico Digital (A/D) 9Convierte la tensin analgica a su valor digital, se utiliza

    para adquisicin de datos analgicos: temperatura, humedad, ... 9Habitualmente era un componente externo9Existen 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 36

    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)9Obtienen una tensin analgica a partir de un valor digital9Conversor D/A con Modulador de anchura de Pulso

    Es una tcnica usada frecuentemente en este tipo de conversores

  • Microcomputadores 2002-03 17/02/2004

    19

    Introduccin 37

    Otros dispositivos9Contador de pulsos

    Es un contador de eventos Cada pulso incrementa el registro contador, almacenando el

    nmero de veces que ha ocurrido un evento9Entrada de Captura

    Sirve para medir intervalos de tiempo (o frecuencias) entre eventos

    Guarda el valor un temporizador cuando ocurre el evento9Comparadores

    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 38

    9Microcontroladores 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

  • Microcomputadores 2002-03 17/02/2004

    20

    Introduccin 39

    PB3

    PB2

    PB1

    PB0

    M

    otor

    ola

    6805

    + 5R=220 a 330

    PXy

    + 5 V

    4,7 K

    RLIM

    2N2222A

    LED

    Salidas en paralelo9Son las ms comunes y se utilizan para:

    Controlar rels, triacs, LEDs, displays, ...9Control 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

    Introduccin 40

    + 5

    8 x 47 a 100 PA1

    PA0

    PB7PB6PB5PB4PB3PB2PB1PB0

    DPgfedcba

    ADPgfedcba

    A

    1 k

    1 k

    2N2907A

    2N2907A

    9Control 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)

  • Microcomputadores 2002-03 17/02/2004

    21

    Introduccin 41

    PA1

    PA0

    PB3PB2PB1PB0

    + 5

    DPgfedcba

    ADPgfedcba

    A

    1 k

    1 k

    2N2907A

    2N2907A

    DCBA

    DPgfedcba

    BCD a7 segm.

    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

    Introduccin 42

    9Control 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 9Montaje Darlington

    Los parsitos pueden perturbar el funcionamiento delmicrocontrolador

    9Control del rel Sencilla y segura Para controlar muchos rels existen circuitos especializados,

    por ejemplo ULN 200X de Sprage9Control de triacs

    Es conveniente aislar los triacs, por ejemplo conoptoacopladores u opto-triacs (MOC 3041 de Motorola)

  • Microcomputadores 2002-03 17/02/2004

    22

    Introduccin 43

    PXy

    + 5 V4,7 K

    a10 K

    Entradas en paralelo9Son 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

    lgico bajo Los rebotes se pueden evitar por software realizando dos

    lecturas sucesivas

    Introduccin 44

    9Entradas 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

    9Los 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

  • Microcomputadores 2002-03 17/02/2004

    23

    Introduccin 45

    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 combinadas9El tiempo de reaccin humano es inferior al del C9Se pueden utilizar entradas/salidas combinadas:

    Control de displays Exploracin de teclado

    Introduccin 46

    2.6 Polling e Interrupciones Transferencia de E/S por consulta de estado

    (Polling) 9El polling es una tcnica software en la que el

    microcontrolador pregunta constantemente al perifrico si necesita ser atendido9Podemos 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

  • Microcomputadores 2002-03 17/02/2004

    24

    Introduccin 47

    Interrupciones9Cuando los perifricos tienen un dato disponible para hacer

    la transferencia, se lo comunican al microcontrolador9El 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

    9La ventaja de las interrupciones, comparadas con el polling, es la velocidad de respuesta a un evento externo9Se reduce la cantidad de software y tiempo de proceso

    aadido al programa principal para preguntar constantemente a los perifricos si necesitan atencin

    Introduccin 48

    Interrupciones (continuacin)9La mayora de los microcontroladores tienen al menos una

    interrupcin externa9Disparo 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 global9 Interrupciones no enmascarables

    No se pueden inhibir, hay que atenderlas siempre

  • Microcomputadores 2002-03 17/02/2004

    25

    Introduccin 49

    Interrupciones vectorizadas9Cuando 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

    determinado9Los microcontroladores de 4 bits tienen un sistema de

    interrupciones no vectorizado9Los microcontroladores de 8, 16 y 32 bits tienen un sistema

    de interrupciones vectorizadas, con jerarqua de prioridad

    Introduccin 50

    + V

    Reset sensible a nivel alto

    RESET

    R

    C

    + V

    Reset sensible a nivel bajo

    RESETR

    C

    2.7 Reset y reloj Circuitera de inicializacin o reset9La mayora de los microcontroladores utilizan una

    circuitera de inicializacin automtica cuando se conecta la alimentacin9Los microcontroladores disponen de una entrada de reset

    sensible a nivel alto sensible a nivel bajo (ms comn)

    9Se puede aadir un pulsador manual de reset

  • Microcomputadores 2002-03 17/02/2004

    26

    Introduccin 51

    El reloj9Es un elemento fundamental en los microcontroladores9Todos los microcontroladores tienen integrado un oscilador

    y slo necesitan un elemento externo para fijar la frecuencia (dentro de las indicadas por el fabricante)9Para 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 52

    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

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

  • Microcomputadores 2002-03 17/02/2004

    27

    Introduccin 53

    Temporizador Watchdog ("Perro guardian")9Un temporizador watchdog permite la recuperacin del

    sistema ante un problema9Si un programa entra en un bucle infinito, o si un fallo de

    hardware le impide funcionar, entonces el watchdogprovocar un reset del sistema en un intervalo de tiempo predeterminado9El 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 auxiliar9Esta caracterstica es muy til para sistemas desatendidos

    Introduccin 54

    Procesadores digitales de seal DSP (DigitalSignal Processors) 9Los DSPs ejecutan algoritmos matemticos-intensivos

    repetitivos. Hoy, muchas aplicaciones requieren microcontroladores y DSPs trabajando conjuntamente, y los fabricantes han respondido introduciendo microcontroladores con DSPs incorporados9La operacin bsica de un DSP son MACC (Multiply-

    Accumulate). El nmero de datos que un DSP puede Multiplicar y Acumular en una nica operacin, determinar el rango y por consiguiente la aplicacin9Bits 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

  • Microcomputadores 2002-03 17/02/2004

    28

    Introduccin 55

    Monitor de reloj (Clock Monitor) 9Un 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) 9Al 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 remoto9Apropiado para sistemas distribuidos y para probar nuevos

    programas y prototipos eliminando el ciclo de borrado/grabado tpico de las EPROMs

    Introduccin 56

    PROGRAMA MONITOR9Un monitor es un programa instalado previamente en el

    microcontrolador que permite desarrollos bsicos y depuracin de programas. 9Suelen 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

    9Los 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

  • Microcomputadores 2002-03 17/02/2004

    29

    Introduccin 57

    2.9 Los pines y funciones no utilizadas9Los 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

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

    Introduccin 58

    3 LENGUAJES DE PROGRAMACIN PARA

    MICROCONTROLADORES 3.1 Lenguaje mquina/ensamblador

    9El lenguaje mquina (o cdigo mquina) es la representacin del programa tal como la entiende el microcontrolador9El 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)

    9Un programa en lenguaje ensamblador es rpido y corto El programador genera el cdigo ms ptimo posible, adaptado

    al microcontrolador.9Para programar en ensamblador se requiere un mayor

    conocimiento tanto de la arquitectura como de la estructura del microcontrolador

  • Microcomputadores 2002-03 17/02/2004

    30

    Introduccin 59

    Tipos de instrucciones:9De transferencia de datos

    De entrada/salida9Aritmticas9Lgicas9De tratamiento de bloques9De salto (condicionales/incondicionales)9De control de interrupciones9De control del microcontrolador9De control de contadores

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

    Introduccin 60

    3.2 Intrpretes 9Un Intrprete es un traductor de un lenguaje de alto nivel

    (prximo al lenguaje natural) a cdigo mquina9El Intrprete est residente en el microcontrolador 9Ejecuta el programa leyendo cada sentencia en alto nivel

    traducindolas y ejecutndolas9Una 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

  • Microcomputadores 2002-03 17/02/2004

    31

    Introduccin 61

    9Los dos intrpretes ms populares que hay para microcontroladores son para los lenguajes BASIC yFORTH

    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 62

    3.3 Los Compiladores 9Se 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

    interpretado9Los 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

  • Microcomputadores 2002-03 17/02/2004

    32

    Introduccin 63

    4 HERRAMIENTAS DE DESARROLLO

    4.1 Simuladores 9Un simulador ejecuta el programa de un microcontrolador

    en un ordenador: 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

    9Evita el ciclo borrado/programado de la EPROM en el desarrollo de programas de microcontrolador9Se puede aprender experimentando con pequeos trozos

    de cdigo y observar en pantalla los resultados9Algunos fabricantes tienen un cruce entre simulador

    software y emulador hardware (Hardware simulator, National Semiconductor y Philips)

    Introduccin 64

    4.2 Debuggers residentes 9Un 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)9Tiene las mismas caractersticas que un simulador normal,

    con la ventaja adicional de que el programa corre en un microcontrolador real9Un 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

  • Microcomputadores 2002-03 17/02/2004

    33

    Introduccin 65

    4.3 Emuladores 9Si se dispone de dinero, este es el equipo para desarrollar

    su sistema.9Un emulador es un sofisticado dispositivo que sustituye al

    microcontrolador al mismo tiempo que est captando informacin9Hemos de retirar el microcontrolador de la placa y poner en

    su lugar el emulador9Nos da total informacin sobre lo que est pasando en la

    realidad, y no requiere ningn recurso de la tarjeta que est analizando9El emulador puede venir con su propio display o conectado

    a un PC

    Introduccin 66

    4.4 Generadores de cdigo 9Ayudan a generar cdigo de forma automtica9Pueden generar cdigo tanto en lenguajes de alto nivel (C)

    como de bajo nivel (ensamblador)9El sistema se configura de forma visual, y el generador de

    cdigo proporciona el trozo de cdigo correspondiente

  • Microcomputadores 2002-03 17/02/2004

    34

    Introduccin 67

    5 LAS FAMILIAS DE MICROCONTROLADORES

    5.1 Introduccin9A continuacin se describen los las familias de

    microcontroladores ms conocidas9Una 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, Motorola68HC11 o Microchip PIC son una buena eleccin

    Introduccin 68

    5.2 Intel 8048 (Intel) 9Es 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)

    9Est diseado para bajo coste y pequeo tamao.9Tiene arquitectura de Harvard modificada con memoria

    ROM para el programa y una memoria RAM adicional de 64 a 256 bytes, ambas on-chip.9Las entradas/salidas tienen su propio espacio de memoria

  • Microcomputadores 2002-03 17/02/2004

    35

    Introduccin 69

    8051 (Intel y otros) 9El 8051, pertenece a la segunda generacin de

    microcontroladores Intel (1980), ha marcado muchas de las caractersticas que tienen los microcontroladores en la actualidad9Tiene un diseo un poco raro, pero es muy potente y

    sencillo de programar (una vez que se conoce)9La 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 70

    8051 (Intel y otros) (continuacin )9El 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

    9El 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 resultados9Existe infinidad de software, comercial y libre, para este

    microcontrolador9Muchos fabricantes hacen cientos de variantes diferentes

    del 8051 para cualquier aplicacin9Actualmente se ofrecen a 24 y 33MHz.

  • Microcomputadores 2002-03 17/02/2004

    36

    Introduccin 71

    Introduccin 72

    8xC251 (MCS 251)9Versin avanzada del 8051

    Incrementa hasta en un 15% el rendimiento del 80519Orientado a comunicaciones con el PC o dispositivos

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

    9Caractersticas: 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

  • Microcomputadores 2002-03 17/02/2004

    37

    Introduccin 73

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

    Introduccin 74

    80c196 (MCS-96) 9La tercera generacin de microcontroladores Intel9El 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.

    9Diseado para aplicaciones de tiempo real HSI, HSO y EPA (Event Processor Array)

    9Sus 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

  • Microcomputadores 2002-03 17/02/2004

    38

    Introduccin 75

    Producto Fabricacin Bus (bits) NcleoROM/

    EPROMRAM

    (datos)RAM (cod.) EPA SERIE HSIO A/D PWM

    8x98 NMOS 8 BH 8 K 256 - - 1 8 4 CH 18x97BH NMOS 8 / 16 BH 8 K 256 - - 1 8 8 CH 18x97JF NMOS 8 / 16 BH 16 K 256 256 - 1 8 8 CH 18xC194 CHMOS 8 KX 8 K 256 - - 1 8 - 18xC198 CHMOS 8 KX 8 K 256 - - 1 8 4 CH 18xC196KB CHMOS 8 / 16 KX 8 K 256 - - 1 8 8 CH 18xC196TB CHMOS 8 / 16 KX 8 K 256 - - 1 8 - 18xC196KC CHMOS 8 / 16 KX 16 K 512 - - 1 8 8 CH 38xC196JQ CHMOS 8 / 16 KX 12 K 256 256 6 2 - 6 CH -8xC196KR CHMOS 8 / 16 KX 16 K 512 256 10 2 - 8 CH -8xC196JR CHMOS 8 / 16 KX 16 K 512 256 6 2 - 6 CH -8xC196KQ CHMOS 8 / 16 KX 12 K 256 256 10 2 - 8 CH -

    FAMILIA-96

    Introduccin 76

    80186,80188 (Intel) 9Estos chips son, fundamentalmente, la versin en

    microcontrolador del 8086 y del 8088 (del famoso IBM PC).9El 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...

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

    original usado en el IBM PC.

  • Microcomputadores 2002-03 17/02/2004

    39

    Introduccin 77

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

    9Ofrecen la potencia de un 3869Una 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 78

    5.3 Western Design Center

    65C02/W65C816S/W65C134S9El 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 dentro9Para el ordenador Commodore y el Atari WDC desarrollo el

    microprocesador 65C816 de 16 bits. El W65C134S es un microcontrolador hecho con un 65C816

  • Microcomputadores 2002-03 17/02/2004

    40

    Introduccin 79

    5.4 Motorola MC14500 (Motorola) 9Este es un chip que todo el mundo debera conocer (est

    fuera de produccin)9Caractersticas:

    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 80

    68HC05 (Motorola) 9Est basado en el antiguo 68009Tiene arquitectura Von-Neuman:

    Las instrucciones, datos, entrada/salida y temporizadores ocupan un mismo espacio de memoria

    9El puntero de pila tiene un ancho de palabra de 5 bits, lo que limita la pila a 32 posiciones9algunos modelos incluyen:

    Conversor A/D Sintetizador PLL E/S serie

  • Microcomputadores 2002-03 17/02/2004

    41

    Introduccin 81

    68HC11 (Motorola y Toshiba) 9El 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 temporizadores9Dependiendo 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 82

    M68HC11 FamilyProduct ROM(KB)

    RAM(Bytes)

    EPROM/OTP(KB)

    EEPROM(Bytes) Timer Serial A/D PWM

    Voltage(V)

    Bus Freq.(MHz)*

    68HC11D0 - 192 - - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI - - 3.0, 5.0 3

    68HC11D3 4 192 - - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI - - 3.0, 5.0 3

    68HC711D3 - 192 4 - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI SPI - - 5 3

    68HC11E0 - 512 - - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI 8-CH 8-Bit - - 3

    68HC11E1 - 512 - 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI 8-CH 8-Bit - 3.0, 5.0 3

    68HC11E9 12 512 - 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI 8-CH 8-Bit - 3.0, 5.0 3

    68HC711E9 - 512 12 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI SPI 8-CH 8-Bit - 5 4

    68HC11E20 20 768 - 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI, SPI 8-CH 8-Bit - 5 3

    68HC711E20 - 768 20 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI SPI 8-CH 8-Bit - 5 4

    68HC11F1 - 1 - 512 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI SPI 8-CH 8-Bit - 3.0, 5.0 5

    68HC11FC0 - 1 - - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI SPI - - 5 6

    68HC11K0 - 768 - - 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 8-CH 8-Bit4-CH 8-Bit or2-CH 16-Bit 3.0, 5.0 4

    68HC11K1 - 768 - 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 8-CH 8-Bit4-CH 8-Bit or2-CH 16-Bit 3.0, 5.0 4

    68HC11K4 24 768 - 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 8-CH 8-Bit4-CH 8-Bit or2-CH 16-Bit 3.0, 5.0 4

    68HC11KS2 - 1 32 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 8-CH 8-Bit - 5 4

    68HC711KS2 - 1 32 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 8-CH 8-Bit - 5 4

    68HC11KW1 - 768 - 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulator SCI+ SPI 10-CH 10-Bit4-CH 8-Bit or2-CH 16-Bit 5 4

    68HC11P1 - 1 - 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulatorTriple SCI

    SPI 8-CH 8-Bit4-CH 8-Bit or2-CH 16-Bit 5 4

    68HC11P2 32 1 - 640 16-Bit, 3/4IC, 4/5OC, RTI,pulse accumulatorTriple SCI

    SPI 8-CH 8-Bit4-CH 8-Bit or2-CH 16-Bit 5 4

  • Microcomputadores 2002-03 17/02/2004

    42

    Introduccin 83

    5.5 MicroChip PIC (MicroChip) 9Los microcontroladores PIC son populares desde hace ms

    de 20 aos9Fueron los primeros microcontroladores RISC

    El diseo RISC es ms sencillo, lo que permite aadir ms caractersticas a bajo precio

    9Tiene pocas instrucciones (33 instrucciones el 16C5X mientras que el Intel 8048 tiene ms de 90)9Caractersticas 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 84

    PIC (MicroChip) (continuacin I )9Los 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

    9Existen 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

  • Microcomputadores 2002-03 17/02/2004

    43

    Introduccin 85

    PIC (MicroChip) (continuacin II )9La 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.

    9La lnea 17CXX es ms ambiciosa hacen cosas que las 16CXX no pueden hacer, pero el campo de aplicacin est por determinar.9La lnea PIC18 es la ms extendida actualmente.9Los databook de Microchip para microcontroladores PIC

    tienen una documentacin completa de la manera de programarlos que otros fabricantes solo suministran a clientes especiales.

    Introduccin 86

    PIC (MicroChip). Familias9Gama alta

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

    9Gama 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

    9Gama 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

  • Microcomputadores 2002-03 17/02/2004

    44

    Introduccin 87

    5.6 National Semiconductor COP400 Familia (National Semiconductor) 9La familia C0P400 es un microcontrolador de 4 bit,

    P2CMOS, que ofrece desde 512 hasta 2K de ROM y desde 32x4 hasta 160x4 de memoria RAM9El 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

    9Lejos de la vieja tecnologa, los microcontroladores de 4 bits tienen un importante mercado y tienen ms aplicaciones que nunca9Estos dispositivos son muy verstiles, hay ms de 60

    diferentes9Actualmente ha sido desplazada por la familia COP800.

    Introduccin 88

    COP800 Familia (National Semiconductor) 9La familia COP800 Basic es un microcontrolador de 8 bits

    totalmente esttico, fabricado usando puertas "double metalsilicon" de tecnologa microCMOS9Este 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

  • Microcomputadores 2002-03 17/02/2004

    45

    Introduccin 89

    5.6 NEC Se centra en tres lneas bsicas978K

    De 8 / 16 bits9V850

    De 32 bits9VR

    De 64 bits 78Kx978K0S

    Microcontrolador de 8 bits Optimizado para bajo coste

    978K0 Microcontrolador de 8 bits Optimizado para eficiencia

    978K4 Microcontrolador de 16 bits Optimizado para velocidad

    Introduccin 90

    V8509Microcontroladores RISC de 32 bits9Arquitectura Harvard.

    Se simplifica el core hardware y se minimiza el tamao. Mximo rendimiento con menor coste

    9Ofrece 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,....