You are on page 1of 9

Electrnica e Ingeniera [electroeing.php.

us] Micro Controladores Freescale

Descripcin General Micro Controladores HC08


Santiago Crdenas Valderrama, Ingeniero Electrnico

ResumenEn esta seccin, se pretende contemplar una descripcin general del micro controlador; se especifican caractersticas fsicas tales como la presentacin del circuito integrado, tambin se establecen las caractersticas fundamentales que se requieren para evaluar si el dispositivo es de utilidad para el proyecto en mira.

I. INTRODUCCIN

L micro controlador MCH08AP16 posee diferentes mdulos y caractersticas que brindan herramientas para el desarrollo de un proyecto; en el presente documento, se espera cubrir los siguientes temas bsicos sobre el AP16 en el siguiente orden: Tamao de la memoria RAM y FLASH, caractersticas principales, descripcin general de la estructura, descripcin especfica de pines y el mapa de memoria del micro controlador (registros de memoria); los anteriores son aspectos que determinan la usabilidad del dispositivo. II. NDICE

Contents
I. II. III. A. B. IV. A. B. V. A. B. VI. Introduccin ......................................................................................................................................................................1 ndice ................................................................................................................................................................................1 Memoria RAM y FLASH ..............................................................................................................................................1 RAM .............................................................................................................................................................................1 FLASH .........................................................................................................................................................................2 Caractersticas Principales .............................................................................................................................................2 Generales ......................................................................................................................................................................2 Lista de mdulos ...........................................................................................................................................................3 Estructura Fsica ................................................................................................................................................................3 Diagrama general de bloques .........................................................................................................................................3 Descripcin de pines......................................................................................................................................................4 Mapas de Memoria ........................................................................................................................................................6

Referencias ................................................................................................................................................................................9

III. MEMORIA RAM Y FLASH A. RAM La memoria RAM del dispositivo (memoria de acceso aleatorio) consta de 1,024 bytes y se encuentran desde el registro $0060 a la $045F (en hexadecimal); en esta memoria se alberga todo el programa o cdigo que se desarrolle, datos almacenados por el usuario y las primeras posiciones de memoria RAM son ideales para variables globales. La memoria y por tanto el programa, se acceden mediante el apuntador de almacenaje (stack pointer) y por motivos de seguridad, este mismo solo apunta a la RAM.

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale

Dispositivo MC68HC908AP64 MC68HC908AP32 MC68HC908AP16 MC68HC908AP8

Tamao RAM (Bytes) 2,048 2,048 1,024 1,024

Tamao FLASH (Bytes) 62,368 32,768 16,384 8,192

Rango de Registros Usados en la FLASH $0860$FBFF $0860$885F $0860$485F $0860$285F

Tabla 1. Comparacin del tamao de la memoria para los dispositivos de la misma gama.

B. FLASH En el caso de memoria FLASH, se dispone de 16,384 bytes (ver comparacin de distintos micro controladores en la tabla 1) y en esta seccin, se puede proteger el acceso a esta mediante los registros llamados FLCR (Registro de Control de la FLASH registro $FE08) y FLBPR (Registro de Bloqueo Protector de la FLASH registro $FE09), aun que poco se cambian; esta memoria posee 48 bytes adicionales reservados para almacenar las direcciones de interrupciones y un byte para el registro de opciones de la mscara. La forma de proteger los registros de memoria se ilustra en la tabla 2; tngase en cuenta la representacin del registro segn la imagen 1, donde cada recuadro representa un bit y se determina tanto como su direccin de registro como si se puede leer y/o escribir este registro, tambin se establece el estado inicial del registro en el momento de reiniciar el micro controlador o al momento de encenderlo; esta ser la forma de presentar los registros y sus caractersticas.

Imagen 1. Representacin de registros; registro de bloqueo protector de memoria FLASH (FLBPR).

BPR[7:0] $00 a $09 $0A $0B $0C $0D $FA $FB $FC $FD $FE $FF

Rango Protegido Protege toda la memoria FLASH $0A00 a $FFFF $0C00 a $FFFF As sucesivamente $FA00 a $FFFF $FFCF a $FFFF No se protege nada de la memoria FLASH

Tabla 2. Valores del registro FLBPR y su efecto sobre la memoria FLASH.

IV. CARACTERSTICAS PRINCIPALES A continuacin, se listan las caractersticas principales del micro controlador AP16 que incluyen, mdulos primordiales, tipo de CPU entre toras. A. Generales Compatible con las familias M6805, M146805 y M68HC05. Frecuencia mxima del bus interno: 8 MHz con alimentacin de 5 3 voltios. Opciones de reloj: o Oscilador tipo RC. o Uso de osciladores a base de cristales. Dos contadores de 16 bytes y de dos canales cada uno con formatos seleccionables por cada canal: o Captura a la entrada. o Salida al comparar. o Compatibilidad de PWM (Modulacin por Ancho de Pulso). Modulo de temporizador. Interfaz de comunicacin serial (salida serial a 5V TTL).

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale Interfaz de codificacin/decodificacin de infra rojo. Modulo de interface serial de comunicacin con perifricos. Sistema de administracin del bus. Convertidor anlogo a digital (ADC) de 10 bits y 8 canales. Pin fsico de interrupcin externa. Puerto de 8 bits para teclado. 32 pines de entrada/salida de uso general: o 31 pines con funciones compartidas. o 8 pines en formato sumidero. o 6 x 25mA entradas/salidas con sumidero abierto. Diseo de bajo consumo con modos de parada y espera (antiesttica). Pin de reinicio con resistencia hacia la alimentacin integrada. Presentacin en circuitos integrados de 42 pines en dos lneas tipo SDIP Propiedades de la CPU: o Funciones extendidas. o Modos de direccionamiento de 16 bits. o Registro de ndice y apuntador de apilado de 16 bits. o Transferencia de memoria a memoria. o Instruccin rpida de multiplicacin de 8 x 8. o Instruccin rpida de divisin de 16/8.

B. Lista de mdulos A continuacin se listan los mdulos disponibles en el micro controlador y se desarrolla una breve descripcin de cada una. CGM (Clock Generator Module): Mdulo Generador de Reloj; es el encargado de escoger el reloj del sistema, ya sea externo, interno; tambin puede dividirse la velocidad de los osciladores. SIM (System Integration Module): Mdulo de Integracin del Sistema; este mdulo se encarga de coordinar la CPU y las excepciones tales como el control para perifricos, control en las interrupciones y generacin del reloj del bus de datos. TIM (Timer Interface Module): Mdulo de Interfaz de Tiempo; Este es el mdulo que contiene dos temporizadores (TIM1 y TIM2) de dos canales cada uno que proveen de una referencia temporal con funciones de captura a la entrada, comparacin de salida y funciones PWM. TBM (Time Base Module): Mdulo de Base de Tiempo; este mdulo utiliza un contador para generar interrupciones peridicas dentro del programa del micro controlador. SCI (Serial Communications Interface Module): Mdulo de Interfaz de Comunicaciones Seriales; este mdulo se encarga de recibir y enviar datos en forma serial y asncrona fuera de otros micro controladores (RS232 por ejemplo). IRSCI (Infrared Serial Communications Interface Module): Mdulo de Interfaz Infra Roja de Comunicaciones Seriales; es el mdulo implementado para comunicaciones va serial pero por medio de transmisin infra roja (dispositivos pticos). SPI (Serial Peripheral Interface Module): Mdulo de Interface Serial de Perifricos; este mdulo permite la comunicacin serial sncrona full dplex con dispositivos perifricos. MMIIC (Multi-Master IIC Interface): Interface IIC de Mltiples Maestros; esta interface se encarga de comunicar de forma sencilla y va serial entre varios dispositivos a una velocidad mxima de 100 Kbps ADC (Analog to Digital Converter): Convertidor Anlogo a Digital; este mdulo como su nombre lo indica, contiene el convertidor anlogo a digital de 8 puertos y conversin por aproximacin sucesiva lineal de 10 bit. KBI (Keyboard Interrupt Module): Mdulo de Interrupcin por Teclado; el mdulo habilita al puerto D como 8 interrupciones externas independientes. Entre otras, en el presente documento se listan las ms implementadas. V. ESTRUCTURA FSICA A. Diagrama general de bloques A continuacin (Imagen 2), se ilustra la estructura de comunicacin y orden de componentes al interior del micro controlador AP16 y su gama; un aspecto importante a tener en cuenta radica en que algunos de los pines requieren de resistencias hacia fuente para su correcto funcionamiento, estos pines son PTB0, PTB1, PTB2, PTB3, PTC6 y PTC7. Los pines propicios para usar como sumideros son los que componen al puerto A (PTA).

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale

B. Descripcin de pines La funcionalidad de los pines y su ubicacin en el dispositivo fsico es de vital importancia y por tanto se trata a continuacin, donde la imagen 3 representa el nmero fsico del pin en el dispositivo y la tabla 3 contiene un resumen de la funcin principal del pin designado.

Imagen 2. Diagrama de bloques de la estructura interna del micro controlador.

Resistencia hacia fuente (PULLUP) integrado en modo KBI

DDRD Puerto D

Estos pines no existen en la presentacin SDIP de 42 pines

DDRC Puerto C

Para su correcto funcionamiento poner resistencia hacia la fuente (PULLUP)

DDRB Puerto B

Pines configurados como sumideros directos

DDRA Puerto A

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale

Imagen 3. Estructura fsica del dispositivo AP16, numeracin de pines y su correspondiente funcin.

PIN VDD (9) VSS (12) VDDA (42) VSSA (41) VREFH (35) VREFL (34) VREG (7) RST (16)

Descripcin Pin de alimentacin del circuito integrado o micro controlador; se aconseja utilizar un regulador de 5 o 3 voltios (LM7805 para 5 voltios LM317 para 3 voltios ajustando el sistema). Tierra del circuito o cero voltios. Voltaje de alimentacin para los mdulos anlogos dentro del micro controlador. Tierra para los circuitos anlogos dentro del micro controlador. Voltaje mximo de referencia del convertidor anlogo a digital. Voltaje mnimo de referencia del convertidor anlogo a digital. Voltaje del regulador interno del micro controlador. El voltaje es el mismo para 5 voltios o 3 voltios de alimentacin. Valor tpico = 2.5V. Entrada de reinicio del micro controlador; posee PULLUP y disparador de Schmitt integrado. En este pin, si se encuentra en estado bajo (cero voltios) se reinicia el programa del micro controlador. Pin de interrupcin externa, posee PULLUP y disparador de Schmitt integrado. Tambin se usa para seleccionar el modo de operacin del micro controlador. Entrada del oscilador RC o de cristal. Al usar oscilador de cristal, este pin es la salida del oscilador en el sistema. Al usar oscilador RC, este pin es la salida del reloj interno al igual que la opcin de oscilador interno.

Entrada/Salida Solo entrada Salida Entrada Salida Entrada Entrada Salida Entrada

Nivel de Voltaje 4.5 a 5.5 2.7 a 3.3 0 voltios VDD VSS VDDA VSSA 2.25 a 2.75 V VDD VDD

IRQ1 (14) OSC1 (10) OSC2 (11)

Entrada Entrada Salida

VDD a VTST VREG VREG

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale PIN CGMXFC (5) PTA0/ADC0 (33) : PTA7/ADC7 (26) Descripcin Conexin externa para el condensador del filtro del micro controlador. Puerto de 8 bit de entrada o salida de uso general. Pines como puertos de entrada para el convertidor anlogo a digital. Como salida tienen un lmite de corriente mayor. Puerto de 8 bit de entrada o salida de uso general. PTB0 a PTB3 son de sumidero abierto al ser salidas. PTB4 a PTB7 tienen disparador de Schmitt integrado como entradas. Al PTB0 ser configurado como SDA, este pin se usa para la comunicacin entre dos dispositivos de forma sencilla (dos micro controladores por ejemplo) mediante el mdulo MMIIC. Al PTB1 ser configurado como SCL, se usa como pin de comunicacin para el mdulo MMIIC. La configuracin del PTB2 como TxD se usa para transmitir por este pin los datos va comunicacin serial (para un posterior uso de RS232 por ejemplo). PTB3 puede configurarse como RxD, este es el pin de recepcin de comunicacin serial. El pin PTB4 puede configurarse como el canal 0 de la salida de comparacin o entrada de captura del temporizador o contador 1 (T1CH0). El pin PTB5 puede configurarse como el canal 1 de la salida de comparacin o entrada de captura del temporizador o contador 1 (T1CH1). El pin PTB6 puede configurarse como el canal 0 de la salida de comparacin o entrada de captura del temporizador o contador 2 (T2CH0). El pin PTB7 puede configurarse como el canal 1 de la salida de comparacin o entrada de captura del temporizador o contador 2 (T2CH1). Puerto de 8 bit de entrada o salida de uso general. PTC6 y PTC7 son de sumidero abierto al ser salidas. PTC0 puede ser un pin para interrupcin externa, pero no se encuentra cableado en el AP16 tipo SDIP. PTC2 puede usarse como pin de entrada de comunicacin serial con dispositivos perifricos externos (MISO para el mdulo SPI). PTC3 puede configurarse como pin de salida de comunicacin serial con dispositivos perifricos externos (MOSI para el mdulo SPI). PTC4 puede ser configurado como el selector de esclavo en la comunicacin serial full dplex del mdulo SPI. PTC5 puede ser configurado como el reloj serial de la comunicacin serial del mdulo SPI. La configuracin del puerto PTC6 como SCTxD, permite el uso del transmisor del mdulo de comunicacin serial por infra rojo (IRSCI). La configuracin del puerto PTC7 como SCRxD, permite el uso del receptor del mdulo de comunicacin serial por infra rojo (IRSCI). Puerto de 8 bit de entrada o salida de uso general, como entradas tienen un disparador de Schmitt integrado. Pueden ser configurados como el set de pines usados para la interrupcin por teclado que poseen resistencias de PULLUP integradas (KBI0 a KBI7).

6 Nivel de Voltaje Anlogo VDD VREFH VDD

Entrada/Salida Entrada/Salida Entrada/Salida Entrada Salida Entrada/Salida Entrada/Salida Entrada/Salida Salida

PTB0/SDA (19) PTB1/SCL (18) PTB2/TxD (17) PTB3/RxD (15) PTB4/T1CH0 (13) PTB5/T1CH1 (8) PTB6/T2CH0 (6) PTB7/T2CH1 (4)

VDD Entrada Entrada/Salida Entrada/Salida Entrada/Salida Entrada/Salida Entrada/Salida Entrada Entrada Salida VDD Entrada Entrada/Salida Salida Entrada Entrada/Salida VDD Entrada

PTC0/IRQ2 (NO) PTC1 (NO) PTC2/MISO (25) PTC3/MOSI (24) PTC4/SS (23) PTC5/SPSCK (22) PTC6/SCTxD (21) PTC7/SCRxD (20)

PTD0/KBI0 (3) : PTD7/KBI7(36)

Tabla 3. Descripcin general de la funcionalidad de los pines del micro controlador y sus posibles configuraciones.

VI. MAPAS DE MEMORIA A continuacin, se describe cmo se ordena la memoria en el micro controlador AP16, esto se hace con propsitos de entender la estructura del sistema que comprende de 16,384 bytes de FLASH para usuario, 1,024 bytes of RAM, 48 bytes de vectores definidos por el usuario y 959 bytes de ROM para monitoreo; grficamente puede apreciarse en la imagen 4. En la tabla 4 se definen los vectores que contienen las direcciones de los vectores; esta tabla es bastante til en el momento en que se empleen mdulos, tambin contiene la direccin del vector de reinicio, que indica en donde debe reiniciarse el sistema.

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale Prioridad La ms baja Direccin $FFD0 $FFD1 $FFD2 $FFD3 $FFD4 $FFD5 $FFD6 $FFD7 $FFD8 $FFD9 $FFDA $FFDB $FFDC $FFDD $FFDE $FFDF $FFE0 $FFE1 $FFE2 $FFE3 $FFE4 $FFE5 $FFE6 $FFE7 $FFE8 $FFE9 $FFEA $FFEB $FFEC $FFED $FFEE $FFEF $FFF0 $FFF1 $FFF2 $FFF3 $FFF4 $FFF5 $FFF6 $FFF7 $FFF8 $FFF9 $FFFA $FFFB $FFFC $FFFD $FFFE $FFFF Vector Reservado Vector TBM (alto) Vector TBM (bajo) Vector de transmisin SCI2 (IRSCI) (alto) Vector de transmisin SCI2 (IRSCI) (bajo) Vector de recepcin SCI2 (IRSCI) (alto) Vector de recepcin SCI2 (IRSCI) (bajo) Vector de error SCI2 (IRSCI) (alto) Vector de error SCI2 (IRSCI) (bajo) Vector SPI de transmisin (alto) Vector SPI de transmisin (bajo) Vector SPI de recepcin (alto) Vector SPI de recepcin (bajo) Vector de conversin completa del ADC (alto) Vector de conversin completa del ADC (bajo) Vector de teclado (alto) Vector de teclado (bajo) Vector de transmisin SCI (alto) Vector de transmisin SCI (bajo) Vector de recepcin SCI (alto) Vector de recepcin SCI (alto) Vector de error SCI (alto) Vector de error SCI (bajo) Vector de interrupcin del MMIIC (alto) Vector de interrupcin del MMIIC (bajo) Vector de sobrepaso del temporizador o contador 2 (alto) Vector de sobrepaso del temporizador o contador 2 (bajo) Vector del canal 1 del temporizador o contador 2 (alto) Vector del canal 1 del temporizador o contador 2 (bajo) Vector del canal 0 del temporizador o contador 2 (alto) Vector del canal 0 del temporizador o contador 2 (bajo) Vector de sobrepaso del temporizador o contador 1 (alto) Vector de sobrepaso del temporizador o contador 1 (bajo) Vector del canal 1 del temporizador o contador 1 (alto) Vector del canal 1 del temporizador o contador 1 (bajo) Vector del canal 0 del temporizador o contador 1 (alto) Vector del canal 0 del temporizador o contador 1 (bajo) Vector del PLL (alto) Vector del PLL (bajo) Vector de la interrupcin externa IRQ2 (alto) Vector de la interrupcin externa IRQ2 (bajo) Vector de la interrupcin externa IRQ1 (alto) Vector de la interrupcin externa IRQ1 (bajo) Vector del SWI (alto) Vector del SWI (bajo) Vector de reinicio (alto) Vector de reinicio (bajo)

La ms alta

Tabla 4. Direcciones de los vectores de operacin del micro controlador.

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale


$0000 Registros de entrada/salida 96 Bytes $005F $0060 RAM 1,024 Bytes $045F No implementados 1,024 Bytes $085F $0860 Memoria FLASH 16,384 Bytes $485F

No implementados 45,984 Bytes

$FBFF $FC00 ROM 2 de monitoreo 512 Bytes $FDFF $FE00 $FE01 $FE02 Registro de estado de parada del SIM Registro de estado de reinicio del SIM Reservado SIM = Mdulo Integrado de Sistema

$FE03 Registro de bandera de control de parada del SIM $FE04 $FE05 $FE06 $FE07 $FE08 $FE09 $FE0A $FE0B $FE0C $FE0D $FE0E $FE0F $FE10 ROM 1 de monitoreo 447 Bytes $FFCE $FFCF $FFD0 Vectores de la FLASH 48 Bytes $FFFF Imagen 4. Esquema del mapa de memoria para el micro controlador AP16. La memoria no implementada se debe a que los dispositivos de mayor capacidad de esta misma gama cubren este espacio y se desea tener el mismo orden para los micro controladores de la misma gama. Registro de opciones de mscara Registro 1 del estado de interrupciones Registro 2 del estado de interrupciones Registro 3 del estado de interrupciones Reservado Registro de control de la FLASH Registro de proteccin de la FLASH Reservado Reservado Parte alta del registro de la direccin de parada Parte baja del registro de la direccin de parada Registro de estado y control de parada Registro de estado del LVI LVI = inhibicin de bajo voltaje

Electrnica e Ingeniera [electroeing.php.us] Micro Controladores Freescale REFERENCIAS


[1] Freescale Semiconductor Inc., M68HC08 Microcontrollers, Rev. 2.5, www.freescale.com, 2003, pp. 24 62.