9
Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale 1 Resumen—En esta sección, se pretende contemplar una descripción general del micro controlador; se especifican características físicas tales como la presentación del circuito integrado, también se establecen las características fundamentales que se requieren para evaluar si el dispositivo es de utilidad para el proyecto en mira. I. INTRODUCCIÓN L micro controlador MCH08AP16 posee diferentes módulos y características que brindan herramientas para el desarrollo de un proyecto; en el presente documento, se espera cubrir los siguientes temas básicos sobre el AP16 en el siguiente orden: Tamaño de la memoria RAM y FLASH, características principales, descripción general de la estructura, descripción específica 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. Introducción ......................................................................................................................................................................1 II. Índice ................................................................................................................................................................................1 III. Memoria RAM y FLASH ..............................................................................................................................................1 A. RAM .............................................................................................................................................................................1 B. FLASH .........................................................................................................................................................................2 IV. Características Principales .............................................................................................................................................2 A. Generales ......................................................................................................................................................................2 B. Lista de módulos ...........................................................................................................................................................3 V. Estructura Física ................................................................................................................................................................3 A. Diagrama general de bloques .........................................................................................................................................3 B. Descripción de pines......................................................................................................................................................4 VI. 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 código 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. Descripción General – Micro Controladores HC08 Santiago Cárdenas Valderrama, Ingeniero Electrónico E

Descripcion General Micro Controladores HC08

  • Upload
    vvander

  • View
    248

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

1

Resumen—En esta sección, se pretende contemplar una descripción general del micro controlador; se especifican características

físicas tales como la presentación del circuito integrado, también se establecen las características fundamentales que se requieren para evaluar si el dispositivo es de utilidad para el proyecto en mira.

I. INTRODUCCIÓN

L micro controlador MCH08AP16 posee diferentes módulos y características que brindan herramientas para el desarrollo de un proyecto; en el presente documento, se espera cubrir los siguientes temas básicos sobre el AP16 en el siguiente orden:

Tamaño de la memoria RAM y FLASH, características principales, descripción general de la estructura, descripción específica 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. Introducción ......................................................................................................................................................................1

II. Índice ................................................................................................................................................................................1

III. Memoria RAM y FLASH ..............................................................................................................................................1

A. RAM .............................................................................................................................................................................1

B. FLASH .........................................................................................................................................................................2

IV. Características Principales .............................................................................................................................................2

A. Generales ......................................................................................................................................................................2

B. Lista de módulos ...........................................................................................................................................................3

V. Estructura Física ................................................................................................................................................................3

A. Diagrama general de bloques .........................................................................................................................................3

B. Descripción de pines......................................................................................................................................................4

VI. 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 código 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.

Descripción General – Micro Controladores HC08

Santiago Cárdenas Valderrama, Ingeniero Electrónico

E

Page 2: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

2

Dispositivo Tamaño RAM

(Bytes) Tamaño FLASH

(Bytes) Rango de Registros

Usados en la FLASH

MC68HC908AP64 2,048 62,368 $0860—$FBFF MC68HC908AP32 2,048 32,768 $0860—$885F MC68HC908AP16 1,024 16,384 $0860—$485F MC68HC908AP8 1,024 8,192 $0860—$285F

Tabla 1. Comparación del tamaño 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 comparación de distintos micro controladores en la tabla 1) y en esta sección, 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 máscara. La forma de proteger los registros de memoria se ilustra en la tabla 2; téngase en cuenta la representación del registro según la imagen 1, donde cada recuadro representa un bit y se determina tanto como su dirección de registro como si se puede leer y/o escribir este registro, también 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 características.

Imagen 1. Representación de registros; registro de bloqueo protector de memoria FLASH (FLBPR).

BPR[7:0] Rango Protegido

$00 a $09 Protege toda la memoria FLASH $0A ó $0B $0A00 a $FFFF $0C ó $0D $0C00 a $FFFF

Así sucesivamente $FA ó $FB $FA00 a $FFFF $FC ó $FD ó $FE $FFCF a $FFFF $FF No se protege nada de la memoria FLASH

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

IV. CARACTERÍSTICAS PRINCIPALES

A continuación, se listan las características principales del micro controlador AP16 que incluyen, módulos primordiales, tipo de CPU entre toras.

A. Generales

• Compatible con las familias M6805, M146805 y M68HC05. • Frecuencia máxima del bus interno: 8 MHz con alimentación 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 (Modulación por Ancho de Pulso).

• Modulo de temporizador. • Interfaz de comunicación serial (salida serial a 5V – TTL).

Page 3: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

3

• Interfaz de codificación/decodificación de infra rojo. • Modulo de interface serial de comunicación con periféricos. • Sistema de administración del bus. • Convertidor análogo a digital (ADC) de 10 bits y 8 canales. • Pin físico de interrupción 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.

• Diseño de bajo consumo con modos de parada y espera (antiestática). • Pin de reinicio con resistencia hacia la alimentación integrada. • Presentación en circuitos integrados de 42 pines en dos líneas 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 Instrucción rápida de multiplicación de 8 x 8. o Instrucción rápida de división de 16/8.

B. Lista de módulos

A continuación se listan los módulos disponibles en el micro controlador y se desarrolla una breve descripción de cada una.

• CGM (Clock Generator Module): Módulo Generador de Reloj; es el encargado de escoger el reloj del sistema, ya sea externo, interno; también puede dividirse la velocidad de los osciladores.

• SIM (System Integration Module): Módulo de Integración del Sistema; este módulo se encarga de coordinar la CPU y las excepciones tales como el control para periféricos, control en las interrupciones y generación del reloj del bus de datos.

• TIM (Timer Interface Module): Módulo de Interfaz de Tiempo; Este es el módulo 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, comparación de salida y funciones PWM.

• TBM (Time Base Module): Módulo de Base de Tiempo; este módulo utiliza un contador para generar interrupciones periódicas dentro del programa del micro controlador.

• SCI (Serial Communications Interface Module): Módulo de Interfaz de Comunicaciones Seriales; este módulo se encarga de recibir y enviar datos en forma serial y asíncrona fuera de otros micro controladores (RS232 por ejemplo).

• IRSCI (Infrared Serial Communications Interface Module): Módulo de Interfaz Infra Roja de Comunicaciones Seriales; es el módulo implementado para comunicaciones vía serial pero por medio de transmisión infra roja (dispositivos ópticos).

• SPI (Serial Peripheral Interface Module): Módulo de Interface Serial de Periféricos; este módulo permite la comunicación serial síncrona full dúplex con dispositivos periféricos.

• MMIIC (Multi-Master IIC Interface): Interface IIC de Múltiples Maestros; esta interface se encarga de comunicar de forma sencilla y vía serial entre varios dispositivos a una velocidad máxima de 100 Kbps

• ADC (Analog to Digital Converter): Convertidor Análogo a Digital; este módulo como su nombre lo indica, contiene el convertidor análogo a digital de 8 puertos y conversión por aproximación sucesiva lineal de 10 bit.

• KBI (Keyboard Interrupt Module): Módulo de Interrupción por Teclado; el módulo habilita al puerto D como 8 interrupciones externas independientes.

• Entre otras, en el presente documento se listan las más implementadas.

V. ESTRUCTURA FÍSICA

A. Diagrama general de bloques

A continuación (Imagen 2), se ilustra la estructura de comunicación 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).

Page 4: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

4

B. Descripción de pines

La funcionalidad de los pines y su ubicación en el dispositivo físico es de vital importancia y por tanto se trata a continuación, donde la imagen 3 representa el número físico del pin en el dispositivo y la tabla 3 contiene un resumen de la función principal del pin designado.

DDRA

Puerto A

DDRB

Puerto B

DDRC

Puerto C

DDRD

Puerto D

Pines configurados como

sumideros directos

Para su correcto

funcionamiento poner

resistencia hacia la fuente

(PULLUP)

Estos pines no existen en

la presentación SDIP de

42 pines

Resistencia hacia fuente

(PULLUP) integrado en

modo KBI

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

Page 5: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

5

Imagen 3. Estructura física del dispositivo AP16, numeración de pines y su correspondiente función.

PIN Descripción

Entrada/Salida Nivel de Voltaje

VDD (9) Pin de alimentación 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).

Solo entrada 4.5 a 5.5

ó 2.7 a 3.3

VSS (12) Tierra del circuito o cero voltios. Salida 0 voltios

VDDA (42) Voltaje de alimentación para los módulos análogos dentro del micro controlador.

Entrada VDD

VSSA (41) Tierra para los circuitos análogos dentro del micro controlador. Salida VSS VREFH (35) Voltaje máximo de referencia del convertidor análogo a digital. Entrada VDDA VREFL (34) Voltaje mínimo de referencia del convertidor análogo a digital. Entrada VSSA

VREG (7) Voltaje del regulador interno del micro controlador. El voltaje es el mismo para 5 voltios o 3 voltios de alimentación. Valor típico = 2.5V.

Salida 2.25 a 2.75 V

RST (16) 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.

Entrada VDD

IRQ1 (14)

Pin de interrupción externa, posee PULLUP y disparador de Schmitt integrado.

Entrada VDD

También se usa para seleccionar el modo de operación del micro controlador.

VDD a VTST

OSC1 (10) Entrada del oscilador RC o de cristal. Entrada VREG

OSC2 (11) Al usar oscilador de cristal, este pin es la salida del oscilador en el sistema.

Salida VREG Al usar oscilador RC, este pin es la salida del reloj interno al igual que la opción de oscilador interno.

Page 6: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

6

PIN Descripción Entrada/Salida

Nivel de Voltaje

CGMXFC (5) Conexión externa para el condensador del filtro del micro controlador. Entrada/Salida Análogo PTA0/ADC0 (33)

: PTA7/ADC7 (26)

Puerto de 8 bit de entrada o salida de uso general. Entrada/Salida VDD Pines como puertos de entrada para el convertidor análogo a digital. Entrada VREFH Como salida tienen un límite de corriente mayor. Salida VDD

PTB0/SDA (19) PTB1/SCL (18) PTB2/TxD (17) PTB3/RxD (15)

PTB4/T1CH0 (13) PTB5/T1CH1 (8) PTB6/T2CH0 (6) PTB7/T2CH1 (4)

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.

Entrada/Salida

VDD

Al PTB0 ser configurado como SDA, este pin se usa para la comunicación entre dos dispositivos de forma sencilla (dos micro controladores por ejemplo) mediante el módulo MMIIC.

Entrada/Salida

Al PTB1 ser configurado como SCL, se usa como pin de comunicación para el módulo MMIIC.

Entrada/Salida

La configuración del PTB2 como TxD se usa para transmitir por este pin los datos vía comunicación serial (para un posterior uso de RS232 por ejemplo).

Salida

PTB3 puede configurarse como RxD, este es el pin de recepción de comunicación serial.

Entrada

El pin PTB4 puede configurarse como el canal 0 de la salida de comparación o entrada de captura del temporizador o contador 1 (T1CH0).

Entrada/Salida

El pin PTB5 puede configurarse como el canal 1 de la salida de comparación o entrada de captura del temporizador o contador 1 (T1CH1).

Entrada/Salida

El pin PTB6 puede configurarse como el canal 0 de la salida de comparación o entrada de captura del temporizador o contador 2 (T2CH0).

Entrada/Salida

El pin PTB7 puede configurarse como el canal 1 de la salida de comparación o entrada de captura del temporizador o contador 2 (T2CH1).

Entrada/Salida

PTC0/IRQ2 (NO) PTC1 (NO)

PTC2/MISO (25) PTC3/MOSI (24)

PTC4/SS (23) PTC5/SPSCK (22) PTC6/SCTxD (21) PTC7/SCRxD (20)

Puerto de 8 bit de entrada o salida de uso general. PTC6 y PTC7 son de sumidero abierto al ser salidas.

Entrada/Salida

VDD

PTC0 puede ser un pin para interrupción externa, pero no se encuentra cableado en el AP16 tipo SDIP.

Entrada

PTC2 puede usarse como pin de entrada de comunicación serial con dispositivos periféricos externos (MISO para el módulo SPI).

Entrada

PTC3 puede configurarse como pin de salida de comunicación serial con dispositivos periféricos externos (MOSI para el módulo SPI).

Salida

PTC4 puede ser configurado como el selector de esclavo en la comunicación serial full dúplex del módulo SPI.

Entrada

PTC5 puede ser configurado como el reloj serial de la comunicación serial del módulo SPI.

Entrada/Salida

La configuración del puerto PTC6 como SCTxD, permite el uso del transmisor del módulo de comunicación serial por infra rojo (IRSCI).

Salida

La configuración del puerto PTC7 como SCRxD, permite el uso del receptor del módulo de comunicación serial por infra rojo (IRSCI).

Entrada

PTD0/KBI0 (3) :

PTD7/KBI7(36)

Puerto de 8 bit de entrada o salida de uso general, como entradas tienen un disparador de Schmitt integrado.

Entrada/Salida

VDD Pueden ser configurados como el set de pines usados para la interrupción por teclado que poseen resistencias de PULLUP integradas (KBI0 a KBI7).

Entrada

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

VI. MAPAS DE MEMORIA

A continuación, se describe cómo se ordena la memoria en el micro controlador AP16, esto se hace con propósitos 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; gráficamente 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 módulos, también contiene la dirección del vector de reinicio, que indica en donde debe reiniciarse el sistema.

Page 7: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

7

Prioridad Dirección Vector

La más baja $FFD0 Reservado

$FFD1 $FFD2 Vector TBM (alto) $FFD3 Vector TBM (bajo) $FFD4 Vector de transmisión SCI2 (IRSCI) (alto) $FFD5 Vector de transmisión SCI2 (IRSCI) (bajo) $FFD6 Vector de recepción SCI2 (IRSCI) (alto) $FFD7 Vector de recepción SCI2 (IRSCI) (bajo) $FFD8 Vector de error SCI2 (IRSCI) (alto) $FFD9 Vector de error SCI2 (IRSCI) (bajo) $FFDA Vector SPI de transmisión (alto) $FFDB Vector SPI de transmisión (bajo) $FFDC Vector SPI de recepción (alto) $FFDD Vector SPI de recepción (bajo) $FFDE Vector de conversión completa del ADC (alto) $FFDF Vector de conversión completa del ADC (bajo) $FFE0 Vector de teclado (alto) $FFE1 Vector de teclado (bajo) $FFE2 Vector de transmisión SCI (alto) $FFE3 Vector de transmisión SCI (bajo) $FFE4 Vector de recepción SCI (alto) $FFE5 Vector de recepción SCI (alto) $FFE6 Vector de error SCI (alto) $FFE7 Vector de error SCI (bajo) $FFE8 Vector de interrupción del MMIIC (alto) $FFE9 Vector de interrupción del MMIIC (bajo) $FFEA Vector de sobrepaso del temporizador o contador 2 (alto) $FFEB Vector de sobrepaso del temporizador o contador 2 (bajo) $FFEC Vector del canal 1 del temporizador o contador 2 (alto) $FFED Vector del canal 1 del temporizador o contador 2 (bajo) $FFEE Vector del canal 0 del temporizador o contador 2 (alto) $FFEF Vector del canal 0 del temporizador o contador 2 (bajo) $FFF0 Vector de sobrepaso del temporizador o contador 1 (alto) $FFF1 Vector de sobrepaso del temporizador o contador 1 (bajo) $FFF2 Vector del canal 1 del temporizador o contador 1 (alto) $FFF3 Vector del canal 1 del temporizador o contador 1 (bajo) $FFF4 Vector del canal 0 del temporizador o contador 1 (alto) $FFF5 Vector del canal 0 del temporizador o contador 1 (bajo) $FFF6 Vector del PLL (alto) $FFF7 Vector del PLL (bajo) $FFF8 Vector de la interrupción externa IRQ2 (alto) $FFF9 Vector de la interrupción externa IRQ2 (bajo) $FFFA Vector de la interrupción externa IRQ1 (alto) $FFFB Vector de la interrupción externa IRQ1 (bajo) $FFFC Vector del SWI (alto) $FFFD Vector del SWI (bajo) $FFFE Vector de reinicio (alto)

La más alta $FFFF Vector de reinicio (bajo) Tabla 4. Direcciones de los vectores de operación del micro controlador.

Page 8: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

8

Registros de entrada/salida96 Bytes

$0000

$005F

RAM1,024 Bytes

No implementados1,024 Bytes

$0060

$085F

Memoria FLASH16,384 Bytes

No implementados45,984 Bytes

$0860

$FBFF

$045F

$485F

ROM 2 de monitoreo512 Bytes

$FC00

$FDFF

Registro de estado de parada del SIM SIM = Módulo Integrado de Sistema

Registro de estado de reinicio del SIM

Reservado

Registro de bandera de control de parada del SIM

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 protección de la FLASH

Reservado

Reservado

Parte alta del registro de la dirección de parada

Parte baja del registro de la dirección de parada

Registro de estado y control de parada

Registro de estado del LVI LVI = inhibición de bajo voltaje

ROM 1 de monitoreo447 Bytes

Registro de opciones de máscara

Vectores de la FLASH48 Bytes

$FE00

$FE01

$FE02

$FE03

$FE04

$FE05

$FE06

$FE07

$FE08

$FE09

$FE0A

$FE0B

$FE0C

$FE0D

$FE0E

$FE0F

$FE10

$FFCE

$FFCF

$FFD0

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

Page 9: Descripcion General Micro Controladores HC08

Electrónica e Ingeniería [electroeing.php.us] – Micro Controladores Freescale

9

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