Curso sobre Microcontroladores Familia HC9S08 de Freescale

Documentos relacionados
Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Buceando en el HC908...

Buceando en el HC908...

Buceando en el HC908...

Curso sobre Microcontroladores Familia HC9S08 de Freescale

MC68HC908GP32 Diagrama en Bloques INTERNAL BUS

Microchip Tips & Tricks...

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Universidad Nacional Autónoma de México

Lanzamiento de nueva versión KIT PLUGIN_AW... Ahora aprender C es más fácil!

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale

EDUKIT08 PLUGIN_AW. Características. Aplicaciones. Descripción general. Placa de Personalización para la flia. HC9S08 FLASH de 8 Bits.

Microchip Tips & Tricks...

Diseño de Microcontroladores

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Microchip Tips & Tricks...

Microchip Tips & Tricks...

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Lanzamiento de nueva versión KIT PLUGIN_AW... Ahora aprender C es más fácil!

Buceando en el HC908...

EDUKIT08. Características. Aplicaciones. Descripción general

Buceando en el HC908...

Buceando en el HC908...

Electrónica Digital. Configuración del colector abierto. Electrónica Digital II Circuitos TTL Salidas de Colector Abierto Salidas de Drenador Abierto

PIC MICRO ESTUDIO Tres Timers ajustables de 0 a 60 Seg 3 Timer Es Clave:

MÓDULO COMPARADOR Y REFERENCIA DE TENSIÓN PARA LA COMPARACIÓN

LABORATORIO DE ELECTRÓNICA DE POTENCIA PRÁCTICA N 3

Electrónica 1. Práctico 10 Familias Lógicas

Microchip Tips & Tricks...

DRIVER IGBT 3073 DATOS DESTACABLES CARACTERISTICAS 1/6

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Microchip Tips & Tricks...

Sistemas Didácticos en el aprendizaje con MCU s.

Capítulo 2 LOS MICROCONTROLADORES MC68H(R)C908JL3/JK3/JK1. Capítulo 3 INTRODUCCIÓN A LA PROGRAMACIÓN DE LOS MICROCONTROLADORES MOTOROLA- FREESCALE

Microchip Tips & Tricks...

Electrónica 1. Práctico 10 Familias Lógicas

SISTEMAS EMPOTRADOS TRABAJO FINAL DE GRADO. Daniel Gómez García

Bus de datos Bus de direcciones Pocos bits, los suficientes para direccionar registros internos (ej: A0 y A1)

Microchip Tips & Tricks...

Como sacarle mayor provecho a las herramientas disponibles para la familia HC908

En la figura 1 puede verse el circuito eléctrico de nuestra primera aplicación.

1.1. Memoria Descriptiva Objeto Antecedentes

Microchip Tips & Tricks...

Técnicas para reducir el Ruido en sistemas con circuitos ADC.

DRIVER IGBT MTC 3066

Buceando en el HC908...

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Microchip Tips & Tricks...

RMS1-RM Manual del usuario

INSTRUMENTOS Y HERRAMIENTAS DE PROPÓSITO GENERAL

Nota Técnica / Microchip Tips & Tricks

Microchip Tips & Tricks...

Buceando en los MCUs Freescale...

PRÁCTICA 4 LOS BITS DE CONFIGURACIÓN DEL PIC16F628

S i s t e m a d e E n e r g í a I n i n t e r r u m p i d a 45

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

Elección de un microcontrolador

MICROCONTROLADORES PIC

Winide y Kit EVALQTY CDM 2011

Arquitectura y Periféricos

Descripción del proyecto

Ventajas del BUS I2C

TUTORIAL II parte A. Observemos el diagrama de pines del microcontrolador 16F877A:

CURSO DE MCUs PIC ANUAL

Contenido MICROCONTROLADORES PIC16F877A Y PIC16F887 / SALVATIERRA. Alfaomega. 3.4 Soporte Muestras... 25

DEPARTAMENTO DE CIENCIAS DE LA ENERGIA Y MECANICA Laboratorio de Automatización Industrial Mecánica. TEMA: Adquisición de datos

Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez

Microchip Tips & Tricks...

PIC 18F45XX CARACTERÍSTICAS GENERALES

MICROPROCESADORES I ELECTRONICA DIGITAL III INTERFASE PROGRAMABLE A PERIFERICOS PPI 8255

Controladora de 3 ejes con Control Manual. M-TB3DV-N

RMS1-RM Manual del usuario

Proyecto Final: Controlador de Acuarios

ESPACIO DE DIRECCIONES

Buceando en el HC908...

Curso sobre Microcontroladores Familia HC9S08 de Freescale

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

RESETS & INTERRUPCIONES

ESPino - Especificaciones

Integración de Equipos para Comunicaciones

Switch Board EB

DESCRIPCIÓN DE LOS MONTAJES Y TARJETAS DE CIRCUITO IMPRESO

JOVANNY BEDOYA GUAPACHA

Curso sobre Microcontroladores Familia HC9S08 de Freescale

PCF8574 EXPANSOR REMOTO 8-BIT I/O PARA I²C-BUS

Qué es y por qué usarlo

ÍNDICE Capítulo 1: Introducción Capítulo 2: Corrección del Factor de Potencia Capítulo 3: Convertidores y Fuentes Modulares

INTRODUCCIÓN. Comunicación Serial.

LABORATORIO DE ELECTRÓNICA DE POTENCIA PRÁCTICA N 2

Nota Técnica / Microchip Tips & Tricks

Universidad Nacional Autónoma de México

Multivibradores el CD4541 y el CD4047

Señales de interfase del Z80

Transcripción:

Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Responsable Area Educación ELKO / ARROW www.elkonet.com e-mail: ddilella@elkonet.com Capítulo 3. Entrega Nº 5 Puertos I/O, Keyboard Interrupt Module (KBI). En la familia HC9S08 se han implementado módulos de Puertos I/O y KBI (Keyboard Interrupt) muy similares a los de la familia HC908, pero con agregados muy interesantes en cuanto al control del bajo consumo, control de la emisión de radiación electromagnética (EMI), y configuración de resistencias de Pull Up / Pull Down, que hacen a esta familia muy flexible para distintas aplicaciones de bajo consumo. En este capítulo se verán con cierta profundidad las características de los módulos de puertos I/O y KBI, se explicarán algunas cuestiones comunes que surgen cuando se empieza a utilizar la familia HC9S08 y se darán trucos para aprovechar las características de bajo consumo que posee la familia. También se verán técnicas para reducir los errores producidos cuando se utiliza el conversor A/D que comparte líneas I/O del MCU.

Características de los Puertos I/O en la familia HC9S08. Configuración Típica de un Puerto I/O en la flia. HC9S08. Destacados: Los resistores de Pull Ups son programables en forma individual en cada pin. Se puede controlar por soft el slew rate (pendiente) de la señal de salida de cada pin. Corriente de manejo del pin configurable por soft. En la figura superior, se puede observar la configuración típica de un puerto I/O en la familia HC9S08. Como se puede ver, existen 4 transistores MosFET por cada pin I/O, 2 controlan los estados alto (1) y bajo (0), y los otros 2 restantes activan los resistores de Pull Up y Pull Down respectivamente. Cada pin I/O del MCU está protegido contra sobre excursiones de tensión por medio de diodos rápidos en polarización inversa. Los resistores de Pull Up / Pull - Down pueden ser activados en cualquier momento por medio de registros especialmente asignados para ello. En la realidad, los transistores MosFET que controlan los estados de alto y bajo, no son simples transistores, sino múltiples transistores configurados para poder controlar la corriente final del pin I/O. De esta forma, por medio del software se puede configurar la corriente final que puede manejar un pin I/O y la pendiente (slew rate) del mismo. Controlar el Slew Rate de un puerto es muy útil cuando el diseñador necesita que la aplicación con MCUs genere la menor cantidad de emisiones electromagnéticas (EMI) con los otros elementos involucrados en el sistema.

En el circuito de salida, pueden observarse resistores de limitación de corriente de pequeño valor (cada resistor del circuito es en realidad una pequeña fuente de corriente implementada en una estructura CMOS que oficia en la práctica como un resistor), que son muy efectivos para limitar los picos de corriente presentes en los puertos I/O en distintas circunstancias. Registros asociados con los puertos I/O. 5 registros están asociados con cada puerto I/O. Estos registros están divididos en 2 grupos. El primer grupo, denominada I/O Paralelo, incluye los registros Port Data Register (PTxD) y el Port Data Direction Register (PTxDD). El registro de Datos (PTxD) se usa para leer el valor de una entrada (Input) o escribir un valor si el puerto es configurado como salida (Output). El registro de Dirección de Datos, configura las distintas líneas del puerto como entradas o salidas. Al igual que en la familia HC908, estos dos registros son accedidos en forma muy frecuente y por ello están ubicados en la página de acceso directo del mapa de memoria de la familia HC9S08, lo que hace muy eficiente el código utilizado para acceder a los mismos. El segundo grupo de registros comprenden a los que controlan al pin. En cualquiera de las aplicaciones donde el pin es utilizado como un puerto I/O o está siendo controlado como por algún otro módulo, los registros que controlan al pin gobiernan el funcionamiento del mismo. Los registros de control del pin incluyen: Pull Up Enable Register (habilita resistores de Pull Up pin a pin del puerto por medio de cada bit del registro asociado al puerto). Slew Enable Register (habilita / deshabilita el control de pendiente del puerto pin a pin por medio de cada bit del registro asociado al puerto). Drive Strength Register (habilita / deshabilita el manejo de alta / baja corriente del puerto pin a pin por medio de cada bit del registro asociado al puerto). Después del reset, los registros de Pull Up, Slew Rate y Drive Strength, quedan configurados a sus valores por defecto, esto significa que los resistores de Pull Up, y el control de pendiente están deshabilitados, mientras que el manejo de corriente es configurado a baja corriente.

Como puede observarse en la siguiente figura, los registros de control del pin están ubicados en la página alta de memoria RAM de los MCUs de la familia HC9S08 y a ellos se accede con instrucciones de direccionamiento extendido, ya que son utilizados no tan frecuentemente como el anterior grupo. Los 5 Registros Asociados con cada Puerto I/O. Multiplexado de Funciones. Es común en los MCUs de pocos pines físicos, por ejemplo 8, 16, 20 pines, compartir funciones en un mismo pin físico. Esto se lo denomina Multiplexado de Funciones y se busca que un mismo pin comparta funciones que, en general, no se molesten unas con otras. Por ejemplo, en el diagrama en bloques de la figura, se ha elegido el pin PTA0 o Puerto A0, este comparte además las siguientes funciones KBIP0 (Keyboard Interrupt Pin 0), TPMCH0 (Timer Channel 0), ADP0 (A/D Pin 0) y finalmente ACMP+ (Analog Comparator Plus input Signal). En total, estas 5 funciones comparten el mismo pin físico del MCU, para ello, existen circuitos asociados que permiten activar y desactivar cada una de las funciones en forma individual. Si una o más habilitaciones han sido activadas para un mismo pin, tendrá validez solo la de mayor prioridad de las funciones activadas. La prioridad se establece desde el rótulo de la función que figura en la extrema derecha de cada pin del MCU elegido. En nuestro ejemplo, la función ACMP+ tiene la mayor prioridad y PTA0 tiene la menor prioridad. Este sistema de prioridades se establece para evitar posibles daños en los puertos cuando más de una función es activada en forma simultanea por medio del programa del usuario.

Este sistema de prioridades funciona en forma similar al de la familia HC908 y también incluye el mismo sistema de prioridades para periféricos de comunicación serial como el SPI, SCI, o I2C. En estos periféricos, pueden producirse habilitaciones parciales (SCI) o totales (SPI, I2C) de las líneas que comparten con los puertos I/O. Por ejemplo, se puede utilizar solo el pin de RX (RXD) del módulo SCI para recibir datos seriales desde el exterior y liberar el uso del pin TXD de dicho módulo para ser usado por otra de las funciones que comparten dicho pin, sin necesidad de inmovilizar todos las líneas compartidas por dicho periférico. Al igual que en la familia HC908, se sugiere al lector, consultar con los manuales técnicos del MCU elegido en cuanto a las distintas configuraciones, y recomendaciones impartidas para cada función implementada en cada uno de los pines físicos del MCU. Esquema de Multiplexado de un puerto I/O de un MCU flia. HC9S08. Características Especiales en los Puerto I/O de la Familia HC9S08. Slew Rate & Drive Strength. Como se ha mencionado en párrafos anteriores, las características de los puertos I/O de la familia HC9S08 son muy similares a las de la familia HC908 con la diferencia de algunas características especiales agregadas que permiten el control de la pendiente de la señal de salida y la corriente de manejo de un puerto I/O. Estas nuevas funcionalidades son muy útiles cuando la aplicación debe cumplir con normas de control ambiental o interferir lo menos posible con el resto del sistema, ya que tienden a mantener en niveles bajos las emisiones electromagnéticas (EMI) que generan los cambios de estado en los puertos I/O del MCU.

Slew Rate. El control de la pendiente (Slew Rate) es muy importante para la disminución de armónicos generados por la pendiente abrupta de un señal (cambio de 0 a 1 o a la inversa) de salida de un puerto I/O. En las siguientes ilustraciones se puede observar las diferentes formas de onda de las señales de un puerto I/O con y sin control de la pendiente. Con una carga de 50 pf en un puerto I/O vemos que la pendiente de la señal de salida del mismo es 10 veces más lenta cuando tiene activado el control de pendiente (3 ns vs 30 ns). En esta figura se pueden ver dos señales de salida de distintos puertos I/O. La línea PTA0 ha sido configurada sin control de pendiente, mientras que la línea PTA1 ha sido configurada con control de pendiente. Ambas líneas tienen idénticas cargas de 1K ohms y la señal cambia en forma simultánea en ambas.

Se puede observar que la línea PTA0 presenta un sobre impulso o overshoot muy pronunciado y una pendiente muy abrupta, estas dos características son las responsables principales de la generación de armónicos electromagnéticos (EMI) cuando el la placa de circuito impreso (PCB) existen pistas largas o deficiente desacople en las líneas de alimentación. La baja emisión de armónicos hace a nuestro sistema más estable ante condiciones de ruidos eléctricos, tanto internos como externos. Drive Strength. La posibilidad de controlar la corriente de manejo de un puerto I/O, es un factor muy importante cuando se quiere controlar las emisiones electromagnéticas (EMI) o bien se requiere mejorar la capacidad de manejo de corriente de un puerto en determinadas circunstancias. En las siguientes ilustraciones se puede observar las diferentes formas de onda de las señales de un puerto I/O con baja y alta corriente.

En la ilustración, se puede ver como cuando se incrementa la corriente máxima de manejo del puerto I/O, si bien se mejora la tensión correspondiente al cero lógico ( 0 ) (VoL), también se observa un excesivo sobre impulso producto del refuerzo del manejo de corriente. Mientras que si se combinan ambas acciones (refuerzo del manejo de corriente y control de la pendiente de la señal del puerto I/O) se puede observar en la próxima figura que se conserva la mejora de la tensión máxima del cero lógico VoL, sin que por ello se note un sobre impulso que pueda generar EMI en la aplicación. Por lo que se concluye que el control de pendiente es fundamental para disminuir la generación de EMI y además contribuye a disminuir el consumo general del sistema.

Cuidados a tener con los pines no conectados de un MCU. Tanto los dispositivos de la familia HC908 como de la familia HC9S08 están basados en tecnología CMOS de última generación, que permite altas prestaciones en tamaño de pastilla (Die) muy pequeños. Sin embargo, la tecnología CMOS tiene como una de sus características presentar alta impedancia de entrada cuando un puerto I/O es configurado como entrada (Input). Esta particularidad hace que se deba tener especial cuidado con los Puertos I/O no utilizados o cualquier otra entrada del MCU que no se esté utilizando, ya que constituyen verdaderas fuentes de ingreso de ruido eléctrico al microcontrolador y además se genera actividad en dichas líneas que provocan consumos y drenajes de corrientes que se ven reflejadas en la corriente IDD del MCU durante el estado de STOP. Este mismo efecto también se manifiesta en los MCUs que no tienen implementados los puertos I/O en forma física hacia el exterior, pero si están implementados en el silicio (no hay conexión con pin externo alguno). Para evitar o disminuir estos efectos, se sugieren las siguientes recomendaciones: Todo Puerto I/O de propósitos generales que no sea utilizado o conectado a alguna parte del sistema (pin sin conexión) debe configurarse como Input con el resistor de Pull Up activado, o como salida (Output) a 0 o a 1 lógico según necesidad. De igual forma se debe proceder con los puertos I/O no implementados en forma física en el MCU. Tratar que las entradas no conectadas estén lejos de las líneas del MCU con mucha actividad (SPI, SCI, I2C, ICAP, PWM, etc.). Las líneas de alta corriente del MCU deben estar tan cerca como sea posible de VDD o VSS según corresponda. Continuará... Nota de Redacción: El lector puede descargar este capítulo y capítulos anteriores del curso desde la sección Artículos (Curso_HC9S08) en el sitio web de EduDevices (www.edudevices.com.ar )