• No se han encontrado resultados

TARJETA DE DESARROLLO PARA MICROCONTROLADORES PIC

N/A
N/A
Protected

Academic year: 2017

Share "TARJETA DE DESARROLLO PARA MICROCONTROLADORES PIC"

Copied!
79
0
0

Texto completo

(1)

ESCUELA SUPERIOR

DE INGENIERÍA MECÁNICA Y ELÉCTRICA

UNIDAD ZACATENCO

TARJETA DE DESARROLLO

PARA MICROCONTROLADORES PIC

TESIS

QUE ES PARA OBTENER EL TÍTULO DE INGENIERO EN ELECTRÓNICA

PRESENTA

NATANAEL MELCHOR HERNÁNDEZ

ASESOR METODOLÓGICO: ING. JULIO LARA GARCÍA ASESOR TÉCNICO: DR. FRANCISCO JAVIER GALLEGOS FUNES

ASESOR TÉCNICO: ING. JUAN MANUEL COBILT CATANA

(2)
(3)
(4)
(5)

Índice Temático

Índice Temático ... 1

Glosario Técnico... 3

Objetivo General... 4

Objetivos Específicos ... 4

Resumen de Contenido del Documento ... 5

Introducción ... 6

Antecedentes ... 6

Problema ... 7

Análisis y Alcance ... 8

Justificación ... 9

Capítulo 1. Sistemas de Microcomputadoras ... 10

1.1 Inicio ... 10

1.2 Sistemas del Microcontrolador ... 10

1.3 Características del Microcontrolador PIC ... 13

1.4 Arquitecturas Von Neumann y Harvard ... 17

1.5 Arquitecturas CISC y RISC ... 20

Capítulo 2. Desarrollo del Prototipo ... 21

2.1 Zócalos ... 21

2.2 Puertos de Entrada/Salida ... 22

2.3 Display Alfanumérico Inteligente ... 26

2.4 Teclado Matricial 4x4 ... 32

2.4.1 Técnica de Arrastre ... 33

2.4.2 Técnica de Entradas/Salidas ... 34

2.5 Display Gráfico ... 35

2.5.1 Instrucciones de Control ... 37

(6)

2.7 Encoder Incremental ... 43

2.8 LED´s en Configuración Tri-Estado ... 47

2.9 Módulo RS232 ... 50

2.10 Interface Serial para Displays de 7 Segmentos de 8 Dígitos ... 52

2.11 Módulo RFID ... 55

Capítulo 3. Justificación Económica ... 59

3.1 Cronograma de Actividades ... 59

3.2 Insumos ... 62

3.3 Equipos ... 65

3.4 Infraestructura ... 65

3.5 Factor Humano ... 66

3.6 Resumen de Costos ... 66

Conclusiones ... 67

Índice de Diagramas ... 68

Índice de Ilustraciones ... 68

Índice de Tablas ... 69

Índice de Circuitos ... 70

(7)

Glosario Técnico

A/D Analógico-Digital

CAN Red de Área Controlada

CISC Computadora con Conjunto de Instrucciones Complejo

CPU Unidad Central de Procesamiento

CU Unidad de Control

E/S Terminales de Entrada/Salida

EEPROM Memoria Borrable y Programable Eléctricamente de Solo Lectura

EPROM Memoria Borrable y Programable de Solo Lectura

I2C Interconexión Integrada

ICSP Programación Dentro del Circuito

ISR Rutina de Servicio de Interrupción

NIBBLE Conjunto de 4 bits consecutivo

OTP Programación Única

PIC Controlador de Interfaz Periférico

PLL Lazo de Enganche de Fase

PROM Memoria Programable de Solo Lectura

RAM Memoria de Acceso Aleatorio

ROM Memoria de Solo Lectura

RISC Computadora con Reducido Conjunto de Instrucciones

SPI Interface Serial Periférica

(8)

Objetivo General

Diseñar y construir una Tarjeta de Desarrollo para Microcontroladores PIC para el diseño de aplicaciones de control, con fines didácticos.

Objetivos Específicos

 Diseñar la Placa de Circuito Impreso con el menor tamaño posible, organizando de la mejor manera los conectores de los puertos del Microcontrolador.

 Encontrar un diseño atractivo integrando en la Tarjeta un Display Alfanumérico y un Teclado Matricial 4x4.

(9)

Resumen de Contenido del Documento

En este texto se publica la estructura general de la Tarjeta de Desarrollo. Las características más importantes de los Microcontroladores PIC (Controlador de Interfaz Periférico).

Dentro de la introducción encontramos la historia de los Microcontroladores PIC, el análisis y alcance del proyecto, así como los problemas que pueden presentarse durante el diseño y fabricación de la Tarjeta a desarrollar así como la Justificación correspondiente.

Capítulo 1.- En este capítulo se aborda la estructura interna de los Microcontroladores PIC y sus principales características. Se define la integración de los buses de comunicación entre los datos y la memoria propia del Microcontrolador.

Capítulo 2.- Se describen los módulos internos y externos de la Tarjeta Principal de Desarrollo. Desde los puertos internos de control de entrada/salida hasta los módulos externos. Conoceremos los resultados obtenidos las pruebas de funcionamiento del proyecto.

Capítulo 3.- Se refiere a la Justificación Económica, punto importante dentro de la realización de un proyecto, con el cual se establece la factibilidad y nos permite asegurar la viabilidad ante el cliente.

Respecto a las conclusiones y recomendaciones que se obtuvieron durante el desarrollo del proyecto.

(10)

Introducción

Antecedentes

Los Microcontroladores PIC (Controlador de Interfaz Periférico) son una familia de Microcontroladores de tipo RISC (Computadora con un Reducido Conjunto de Instrucciones), fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división de microelectrónica de General Instrument.

El Microcontrolador PIC original, se diseñó para ser usado con la nueva CPU (Unidad Central de Procesamiento) de 16 bits CP16000. Siendo en general una buena CPU, ésta tenía malas prestaciones de

E/S (Entrada/Salida), y el PIC de 8 bits se desarrolló en 1975 para mejorar el rendimiento del sistema quitando peso de E/S a la CPU. El PIC utilizaba micro-código simple almacenado en ROM (Memoria de Solo Lectura) para realizar estas tareas; y aunque el término no se usaba por aquel entonces, se trata de un diseño RISC que ejecuta una instrucción cada 4 ciclos del oscilador.

(11)

Problema

Cuando se realiza un diseño de cierto circuito y se comprueba su correcto desempeño en Tarjetas de Prototipos (protoboard), existe el problema que las conexiones no son lo suficientemente seguras para mantenerse en buen estado y se requiere invertir demasiado tiempo para ello. Además, las Tarjetas de Prototipos presentan capacitancias alrededor de los 10pF las cuales alteran el óptimo desempeño del oscilador externo que necesita el Microcontrolador en aplicaciones a altas frecuencias.

Cuando se trata de conseguir alguna Tarjeta de Desarrollo en el mercado, la mayoría de éstas son deficientes en cuanto a las facilidades que se quieren obtener. Uno de los problemas principales de estas Tarjetas es la disposición de los conectores de los puertos del Microcontrolador, éstos solo pueden ser conectados a otros dispositivos a través de cables individuales lo que hace difícil su manipulación, no conforme con esto, los puertos se acomodan exactamente como se obtienen del dispositivo sin ser correctamente ordenados, es por ello que no encontramos todos los bits de cada puerto en conjunto. Otra desventajada es la falta de un conector que nos permita programar al Microcontrolador directamente en la Tarjeta de Desarrollo, en las aplicaciones modernas no se extrae al Microcontrolador del circuito en el que se encuentra para poder actualizar el software.

(12)

Análisis y Alcance

Con los problemas anteriormente planteados se diseñará una Tarjeta de Desarrollo para Microcontroladores PIC, que incluya conectores dispuestos por orden alfabético, cada puerto tendrá un conector único y exclusivo al que se accederá mediante cable plano de 10 hilos con conectores Jack 5x2. La Tarjeta también contará con un conector simple de 16 terminales diseñado para colocar un Display Alfanumérico Inteligente de 16x2 líneas. Cómo extra se añadirá un Teclado Matricial 4x4 conectado al puerto B del Microcontrolador PIC.

La idea central de la Tarjeta de Desarrollo es la de una estructura modular, esto nos permitirá trabajar en un espacio reducido y con los módulos que en el momento se requieran.

Se tiene contemplado la fabricación de la Tarjeta Principal que cuente con el Microcontrolador PIC, los conectores Jack 5x2 de los puertos, el conector de 16 terminales del Display Alfanumérico Inteligente, el Teclado Matricial 4x4 y el conector para la Programación Dentro del Circuito.

Además del módulo principal, se fabricarán varios módulos como:

 Módulo de Display Gráfico con Pantalla Táctil

 Módulo de LEDs en configuración Tri-Estado

 Módulo serie de Displays de 7 Segmentos de 8 Dígitos

 Módulo de conexión rápida a un protoboard

(13)

Justificación

[image:13.612.82.564.225.565.2]

Este proyecto tiene ventajas con respecto a otras Tarjetas para Microcontroladores PIC, e cuanto al precio, el tamaño reducido al ser modular y su gran variedad de aplicaciones debido a que cuenta con módulos externos con los que se robustece el prototipo.

Tabla 1 Comparación de características y precios

Comparación de Tarjetas de Desarrollo

No. Precio

(M.N.)

Tamaño

(cm) Características Ilustración

1 $200.00 5 x 5

 Conector USB Hembra Tipo B

 Conector DB9

 Conector ICSP

 Zócalo de 28 terminales

 Área para soldar componentes externos

2 $150.00 7 X 5

 Zócalo de 8 terminales

 Conector DB9

 Fuente de voltaje integrada

 Área para soldar componentes

3 $500.00 7 x 15

 Conectores para Puertos

 Conector USB Hembra Tipo B

 Conector para LCD Alfanumérico

 Zócalo de 28 terminales

 Pulsadores con resistores de Pull para puerto C

4 $250.00 5 x 10

 Zócalo de 28 terminales

 Conector Header sencillo para puertos

 LED de encendido

 Conector ICSP

(14)

Capítulo 1.

Sistemas de Microcomputadoras

1.1

Inicio

El término microcomputadora se usa para describir un sistema que incluya como mínimo un microprocesador, memoria de programa, datos de memoria y dispositivos de Entrada/Salida. Algunos sistemas de microcomputadoras adicionalmente incluyen componentes tales como temporizadores, contadores y convertidor analógico-digital. Así, un sistema de microcomputadora puede ser cualquiera desde una gran computadora teniendo disco duro, disco flexible, e impresoras a un simple chip controlador embebido (dentro del circuito).

1.2

Sistemas del Microcontrolador

Un Microcontrolador es una computadora de un solo chip. Micro se refiere a que el dispositivo es pequeño y controlador se refiere a que es empleado en sistemas de control. Otro término de Microcontrolador es controlador embebido, desde que la mayoría de los Microcontroladores son fabricados dentro (o embebidos en) de los dispositivos que controlan.

Un Microprocesador difiere de un Microcontrolador en muchos aspectos. La principal distinción es que un microprocesador requiere severos componentes externos para su operación, como memoria de programa y memoria de datos, dispositivos de Entrada/Salida, y un circuito de reloj externo. Un Microcontrolador, tiene todos los chips de soporte incorporados dentro del único chip. Todos los Microcontroladores operan en un conjunto de instrucciones (o el programa de usuario) almacenada en la memoria. Un Microcontrolador obtiene las instrucciones de su memoria de programa una por una, decodifica estas instrucciones y luego lleva a cabo las operaciones requeridas.

(15)

generalmente numérico (binario, octal, hexadecimal) de una forma más sencilla que su numeración original), lo cual hace que su aprendizaje y mantenimiento de programa escrito sea difícil. También, los fabricantes de Microcontroladores de diferentes firmas tienen diferentes lenguajes de ensamblador, así el usuario debe de aprender un nuevo lenguaje de programación por cada nuevo Microcontrolador que use.

Los Microcontroladores también pueden ser programados usando un lenguaje de alto nivel, como BASIC, PASCAL, o C. Los lenguajes de alto nivel son mucho más fáciles de aprender que los lenguajes de ensamblador. Estos también facilitan el desarrollo de programas largos y complejos. Para los ejemplos en este trabajo, emplearemos el popular lenguaje C con el compilador C18 de MPLAB de Microchip Technology Inc. mostrado en la Ilustración 1.2.1.

Ilustración 1 MPLAB de Microchip Technology

(16)

Básicamente, una microcomputadora ejecuta el programa de usuario que ha sido cargado en su memoria de programa. Bajo el control de este programa, la información es recibida de dispositivos externos (entradas), manipuladas y luego enviadas a dispositivos externos (salidas).

Un Microcontrolador, es una herramienta muy poderosa que permite al diseñador crear sofisticada manipulación de datos de Entrada/Salida bajo un programa de control. Los Microcontroladores se clasifican por el número de bits que procesan. Los Microcontroladores de 8 bits son los más populares y son empleados en la mayoría de las aplicaciones. Los Microcontroladores de 16 y 32 bits son mucho más poderosos, pero son usualmente más caros y no se requieren en la mayoría de las aplicaciones de mediano y pequeño tamaño.

La arquitectura más simple de un Microcontrolador consiste en un Microprocesador, memoria y puertos de Entrada/Salida. El Microprocesador consiste en una unidad central de procesamiento (CPU) y una unidad de control (CU). La CPU es el cerebro del Microcontrolador, aquí es donde todas las operaciones aritméticas y lógicas son efectuadas. La CU controla las operaciones internas del microprocesador y envía señales a otras partes para llevar a cabo las instrucciones requeridas.

La memoria, una parte importante del sistema del Microcontrolador, puede ser clasificada en dos tipos: memoria de programa y memoria de datos. La memoria de programa almacena el programa escrito por el programador y usualmente es no volátil (esto es, los datos no se pierden después de apagar el dispositivo). La memoria de datos almacena temporalmente datos usados en el programa y usualmente es volátil (esto es, los datos se pierden después de apagar el dispositivo).

(17)

Flash EEPROM una versión de la memoria EEPROM, se ha vuelto popular en aplicaciones de Microcontroladores y se emplean para almacenar el programa de usuario. La memoria Flash EEPROM no es volátil y es usualmente muy rápida. La información puede ser borrada y posteriormente reprogramada con un dispositivo adecuado de programación. Algunos Microcontroladores tienen sólo 1K de memoria Flash EEPROM mientras que otros tienen 32K o más. El Microcontrolador PIC18F452 tiene 32K bytes de memoria flash.

1.3

Características del Microcontrolador PIC

Los Microcontroladores de distintos fabricantes tienen distintas arquitecturas y capacidades. Algunos se pueden enfocar en aplicaciones particulares mientras que otros pueden ser totalmente inservibles para la misma aplicación. Las características de hardware común a la mayoría de los Microcontroladores se describen en esta sección.

Fuente de Voltaje.- Muchos Microcontroladores operan con el voltaje estándar lógico de +5V. Algunos pueden operar a niveles bajos como +2.7 V y algunos toleran +6V sin ningún problema. La hoja de datos del fabricante contiene la información de los límites de alimentación de la fuente de voltaje. El Microcontrolador PIC18F452 puede operar con un rango de +2V a +5.5V.

El Reloj.- Todos los Microcontroladores necesitan un reloj (o un oscilador) para operar, usualmente provisto por un dispositivo externo. En muchos casos, este dispositivo de sincronización externo es un

cristal mas dos pequeños capacitores. En algunos casos son resonadores o un arreglo

resistor/capacitor. Algunos Microcontroladores se fabricaron en circuitos de conteo y no requieren componentes de conteo externo. Si una aplicación no es sensible a la temporización, componentes de conteo a base de un capacitor y una resistencia son la mejor opción por su simplicidad y su bajo costo.

(18)

Temporizadores.- Los temporizadores son parte importante de cualquier Microcontrolador. Un temporizador es básicamente un contador que es conducido por un pulso de reloj externo o el oscilador interno del Microcontrolador. Un temporizador puede ser de 8 bits o 16 bits de ancho. La información puede ser cargada en un temporizador por el programa de control y también puede detenerlo o puede ponerlo en marcha. Muchos temporizadores pueden configurarse para generar una interrupción cuando alcancen un cierto valor de conteo (usualmente cuando se desbordan). El programa de usuario puede emplear una interrupción para obtener tiempos de conteo exactos relacionados con la operación del Microcontrolador. Los Microcontroladores de la serie PIC18F tienen al menos tres temporizadores.

Algunos Microcontroladores ofrecen facilidades de captura y comparación, donde un valor del temporizador puede ser leído cuando un evento externo ocurra, o el valor del temporizador puede ser comparado con un valor establecido y una interrupción se genera cuando este valor es alcanzado. Muchos Microcontroladores de la seria 18F tienen al menos dos módulos de captura y comparación.

Perro Guardián.- Muchos Microcontroladores tienen al menos un perro guardián. El perro guardián es básicamente un temporizador que se refresca por el programa de usuario. Siempre que el programa no refresca al perro guardián, un reinicio ocurre. El temporizador de perro guardián se usa para detectar problemas en el sistema, como un lazo infinito en el que el programa se ah metido. Esta propiedad de seguridad previene que el programa se pierda y detiene el Microcontrolador de ejecutar código sin sentido y no deseado. Las facilidades del perro guardián son comúnmente usadas en sistemas de tiempo real donde la terminación exitosa de una o más actividades debe checarse con regularidad.

Entrada de Reinicio.- La entrada de reinicio se usa para reiniciar el Microcontrolador externamente. Reiniciando al Microcontrolador lo coloca en un estado conocido tal que el programa en ejecución comienza por la dirección 0 de la memoria de programa. Una acción de reinicio externo se logra conectando un pulsador a la entrada de reinicio.

(19)

La Rutina de servicio de Interrupción comienza desde una dirección fija de la memoria de programa, algunas veces nombrado como la dirección del vector de interrupción. Algunos Microcontroladores con múltiples características de interrupción tienen sólo una dirección de vector de interrupción, mientras que otros tienen direcciones de vectores únicos por cada fuente de interrupción. Otra importante característica de la capacidad de múltiples interrupciones es que se le pueden asignar diferentes niveles de prioridad. Por ejemplo, la serie de Microcontroladores PIC18F tienen ambos niveles de prioridad de interrupción, baja prioridad y alta prioridad. Las interrupciones pueden ser anidadas tal que una interrupción de alta prioridad puede suspender la rutina asociada a una interrupción de baja prioridad.

Detector de bajo nivel.- Los detectores der bajo nivel, los cuales son comunes en los Microcontroladores, reinician al Microcontrolador si la fuente de voltaje cae por debajo del valor nominal. Esta característica de seguridad puede ser empleada para prevenir operaciones impredecibles a bajos voltajes, especialmente para proteger el contenido de las memorias de tipo EEPROM.

Convertidor Analógico-Digital.- Un convertidor Analógico-Digital (A/D) se emplea para convertir una señal analógica, tal como voltaje, a formato digital de tal manera que un Microcontrolador pueda leerlo y procesarlo. Convertidores A/D externos pueden también conectarse a un Microcontrolador. Los convertidores A/D son usualmente de 8 a 10 bits, teniendo de 256 a 1024 niveles de cuantización. Muchos Microcontroladores PIC con características A/D tienen convertidores multiplexados los cuales proveen más de un canal de entrada analógico. Por ejemplo, el Microcontrolador PIC18F452 cuenta con 8 canales de convertidores A/D de 10 bits.

La conversión A/D debe comenzar por el programa de usuario y puede tomar cientos de microsegundos para ser completada. Los convertidores A/D usualmente generan interrupciones cuando una conversión se ah completado, entonces el programa de usuario puede leer rápidamente la información procesada.

(20)

Entrada/Salida Serial.- La comunicación serial permite al Microcontrolador conectarse a otro Microcontrolador o a una PC. Algunos Microcontroladores tienen un hardware llamado USART (transmisor receptor síncrono asíncrono) para implementar una interface de comunicación serial. El programa de usuario puede seleccionar la tasa de transmisión y el formato de la información. Si el Microcontrolador no tiene hardware serial de entrada-salida, es fácil desarrollar software para implementar comunicación serial usando cualquier terminal de Entrada/Salida del Microcontrolador. La serie de Microcontroladores PIC18F tienen módulos USART.

Algunos Microcontroladores (así como la serie 18F) incorporan interfaces SPI (interface serial periférica) o

I2C (interconexión integrada). Esto permite al Microcontrolador conectarse con otros dispositivos

compatibles fácilmente, una desventaja importante de este protocolo de comunicación, es que no está internacionalmente estandarizado lo que provoca discrepancias entre módulos con la misma interface.

Memoria EEPROM.- La memoria de datos tipo EEPROM es muy común en muchos Microcontroladores. La ventaja de una memoria EEPROM es que el programador puede almacenar información que no es volátil y modificarla cuando sea requerido. Por ejemplo, en una aplicación de monitoreo de temperatura, las lecturas máximas y mínimas de temperatura pueden ser almacenadas en una memoria EEPROM. El Microcontrolador PIC18F452 tiene 256 bytes de memoria EEPROM. Otros miembros de la familia PIC18F tienen más memoria EEPROM (así como el PIC18F6680 que tiene 1024 bytes).

Controlador LCD.- El controlador de LCD permite al Microcontrolador conectarse a una LCD (pantalla de cristal líquido) externo directamente. Estos controladores no son comunes desde que muchas de las funciones que ejecutan pueden ser implementadas por software. Por ejemplo, el Microcontrolador PIC18F6490 tiene un módulo de controlador para LCD.

(21)

Reinicio de Encendido.- Algunos Microcontroladores tienen incorporados circuitos de reinicio de encendido que mantienen al Microcontrolador en estado de reinicio mientras que la circuitería se ah inicializado por completo.

El reinicio por encendido ocurre si se conecta el terminal MCLR del Microcontrolador a la terminal de alimentación. El Microcontrolador detecta la aparición de tensión de alimentación provocando un reinicio que garantiza el correcto inicio de trabajo del Microcontrolador.

Modo de Bajo Consumo.- En el modo o estado de bajo consumo es especialmente importante en aplicaciones portátiles cuando equipos son operados por baterías. Algunos Microcontroladores pueden operar con menos de 2mA con una fuente de 5V, y alrededor de 15uA con 3V. Otros Microcontroladores, especialmente los que se basan en Microprocesadores con muchos chips, pueden consumir cientos de miliampers o incluso más.

1.4

Arquitecturas Von Neumann y Harvard

En la memoria de un ordenador, un microcomputador o un Microcontrolador se almacenan instrucciones y datos. Las instrucciones deben pasar secuencialmente a la CPU para su decodificación y ejecución, en tanto que algunos datos en memoria son leídos por la CPU y otros son escritos en la memoria desde la CPU. Puede intuirse que la organización de la memoria y su comunicación con la CPU son dos aspectos que influyen en el nivel de prestaciones del ordenador.

Las arquitecturas von Neumann y Harvard son modelos generales del hardware de los ordenadores que representan dos soluciones diferentes al problema de la conexión de la CPU con la memoria y la organización de la memoria como almacén de instrucciones y datos.

(22)

Los primeros ordenadores que utilizaron memorias separadas para instrucciones y datos, una idea diferente al ordenador de programa almacenado, fueron los ordenadores Mark I, II, III y IV. Estos ordenadores fueron diseñados en Harvard, es por ello que a la arquitectura de estos ordenadores se nombra de la misma forma.

El Diagrama 1.4.1 muestra estos dos modelos de ordenadores. Con una memoria única para instrucciones y datos tenemos la arquitectura von Newmann. Esto implica que con un solo bus de direcciones se localizan (direccionan) tanto las instrucciones como los datos en el ordenador.

Para leer un dato y una instrucción se tiene la misma señal de control que emite la CPU, las señales de control en ambos casos son las mismas. En este tipo de arquitectura la memoria ROM y la memoria RAM forman un solo conjunto (memoria de lectura y escritura) para el cual es CPU emite señales de control, de dirección y datos.

Como mencionamos anteriormente, la arquitectura Harvard maneja por separado la memoria para datos y la memoria de instrucciones. Esto lleva a pensar que la memoria de programa (memoria de instrucciones) tiene un bus de direcciones (de instrucciones), su bus de instrucciones y su bus de control. De la misma forma, la memoria de datos tiene sus propios buses, el de direcciones, el de datos y el de control, independientes de los buses de la memoria de programa. La memoria de programa es de solo lectura, mientras que la de datos es de escritura y lectura.

(23)

CPU Memoria de programa y datos BDIR

BDAT

BCON

CPU Memoria de

programa y datos Memoria de

programa y datos

BDIR-I

BDIR-D

BINS T

BDAT

BCON-I

BCON-D a)

b)

En los microcomputadores, la CPU es un circuito integrado: el Microprocesador. Es obvio que la arquitectura von Neumann requiere de menos terminales en el Microprocesador que la arquitectura Harvard. Esta fue una de la razón decisiva para que desde sus inicios los microcomputadores basados en un Microprocesador se hayan diseñado utilizando exclusivamente la arquitectura von Neumann. En los Microcontroladores la situación es diferente.

Al estar todos los componentes del sistema dentro del circuito integrado, desaparece la necesidad de minimizar el número de terminales de la CPU, de modo de que en ellos ha predominado la arquitectura Harvard. Los Microcontroladores PIC son un ejemplo de sistemas con arquitectura Harvard.

(24)

1.5

Arquitecturas CISC y RISC

CISC (computadora con conjunto de instrucciones complejo) y RISC (computadora con reducido conjunto de instrucciones) son dos modelos generalmente de ordenadores, desde el punto de vista de la concepción de su repertorio de instrucciones, lo cual repercute directamente sobre la arquitectura de la CPU.

Al aparecer los Microprocesadores y los Microcontroladores, la tendencia inicial fue proveerlos de un repertorio de instrucciones lo más potente posible, dando por hecho de que su modelo fuera el de tipo

CISC. La complejidad de las instrucciones fue en aumento; en un mismo repertorio había instrucciones tan simples como mover un dato desde la memoria la acumulador, al lado de otras que eran más complejas como mover una cadena de dato de un lugar a otro en la memoria. La longitud de las instrucciones eran diferentes una con respecto a otra haciendo que los modos de direccionamiento fuesen siendo más elaborados. Toda esta dificultad en las instrucciones se reflejó directamente en la dificultad en el hardware de la CPU, ya que era necesario un espacio considerable dentro del circuito para la descodificación y ejecución de las instrucciones.

(25)

Capítulo 2.

Desarrollo del Prototipo

2.1

Zócalos

La Tarjeta cuenta con un zócalo de 40 terminales tipo DIP mostrado en la Ilustración 2.1.1, en él pueden conectarse Microcontroladores con un número distinto de terminales menor a 40 (24, 16, 12, 8 y 6 terminales). La razón de esto es la reducción de tamaño de la Tarjeta, ya que es posible colocar un zócalo para cada Microcontrolador con distinto número de terminales. En este proyecto solo se trabaja con el PIC18F452 de 40 terminales.

(26)

2.2

Puertos de Entrada/Salida

Los Microcontroladores PIC de 40 terminales alcanzan un número máximo de 5 puertos de Entrada/Salida. Los puertos en la tarjeta están dispuestos a un costado ordenados alfabéticamente, desde el Puerto A al puerto E como se muestra en la Ilustración 2.2.1. El usuario accede a los puertos a través de un conector Jack 5x2 para conectar algún módulo externo o para trabajar en un tablero para prototipos (protoboard). Esto presenta grandes ventajas con respecto a otras Tarjetas de Desarrollo, ya que con esta configuración, la conexión entre módulos y la Tarjeta es rápida y segura.

Ilustración 3 Conectores Header 5x2 para los puertos de E/S

(27)

selecciona la dirección de los resistores Pull, y el interruptor nombrado SE (Dipswitch de 8 interruptores) habilita o deshabilita individualmente cada resistor para todos los bits del puerto en servicio.

Circuito 2.2.1 Circuito del módulo de los resistores Pull con Pulsadores y LEDs

En este módulo también se encuentran disponibles LED´s para cada bit del puerto en uso. La Ilustración 2.2.2 muestra el módulo.

Para el empleo de los LED´s tenemos un interruptor que habilita su operación, estando todos comunes a tierra, lo que nos indica que debemos encenderlos con un estado alto en el bit de control elejido. Los LED´s tienen un resistor limitador de corriente de 330 , esto obliga a una corriente circulante de aproximadamente 20 mA.

(28)

Ilustración 4 Módulo de Resistores de Pull y LEDs

Este sistema de puertos de Entrada/Salida provee a la Tarjeta de Desarrollo de una versatilidad enorme, ya que no se limita al uso compartido de módulos diseños específicamente para ella, si no que mediante sus conectores Jack 5x2 es posible interactuar con módulos ajenos.

(29)
(30)

2.3

Display Alfanumérico Inteligente

La habilidad de los Displays Alfanuméricos Inteligentes no es solo la de mostrar números, sino también letras, palabras y todo tipo de símbolos, los hacen más versátiles que los Displays de 7 Segmentos.

El Display Alfanumérico Inteligente se controla a través de un código introducido en paralelo a sus terminales para datos. En la Tarjeta de Desarrollo se emplea el LCD Modelo LMB162AFC de la marca Topway mostrado en la Ilustración. Para otros modelos el código puede variar.

Ilustración 5 Display Alfanumérico Inteligente modelo LMB162AFC

(31)

El Display Alfanumérico Inteligente dispone de terminales para controlar la luz de fondo (BLA, BLK), una terminal para controlar el contraste de los caracteres (V0), de 8 entradas de datos (DB0-DB7) y de tres terminales de control (RS, R/W, E).

[image:31.612.172.470.221.477.2]

La Tabla 2.3.1 nos muestra las terminales para el Display LMB162AFC de Topway y sus conexiones dentro de la Tarjeta de Desarrollo para Microcontroladores PIC.

Tabla 2.3.1 Terminales del Display Alfanumérico Inteligente LMB162AFC de Topway

Número de Terminal Nombre de Terminal Bit de puerto D

1 GND -

2 VDD -

3 V0 -

4 RS PD.0

5 R/W PD.1

6 E PD.2

7 DB0 -

8 DB1 -

9 DB2 -

10 DB3 -

11 DB4 PD.4

12 DB5 PD.5

13 DB6 PD.6

14 DB7 PD.7

15 BLA -

(32)

Ilustración 6 Conector de 16 terminales para conectar el Display Alfanumérico

Las entradas de datos o canal de datos se pueden configurar para recibir instrucciones en 8 o 4 bits, para el último caso, solo se usan las líneas de datos superiores o más significativas (DB4-DB7). Este modo de 4-bits es útil cuando se requiere utilizar un reducido número de líneas.

La terminal RS (selección de registro) selecciona entre una entrada de comando (cero lógico) o una entrada de carácter (uno lógico). La terminal R/W (lectura/escritura) tiene la función de seleccionar entre escritura de comandos (cero lógico) y la lectura de caracteres o información del estado de sus registros (uno lógico). La terminal E (habilitación) ejecuta la instrucción tanto de comando como de carácter en la transición de estado alto a bajo.

(33)

Ilustración 7 Montaje del Display sobre el Microcontrolador

[image:33.612.170.477.114.416.2]

Para inicializar el Teclado Alfanumérico Inteligente LMB162AFC de la marca Topway, se realiza la secuencia de código de la Tabla 2.3.2.

Tabla 2.3.2 Código de Inicialización del Display Alfanumérico Inteligente

Función Valor Descripción

Comando 0x28 Inicializa en 4 bits

Comando 0x0F Reinicia el sistema

Comando 0x01 Habilita el sistema

Comando 0x84 Coloca el cursor en 1,1

(34)

El conector Header sencillo de 16 terminales está conectado directamente al Puerto D del Microcontrolador PIC, el modo de ingreso de datos será de 4 bits o nibbles. Si observamos la Tabla 2.3.3 nos daremos cuenta que el código por instrucción o comando está formado por dos nibbles u 8 bits. Para ingresar el código de 8 bits a través de un canal de 4 bits se introduce primero el nibble más significativo o el de mayor peso y en seguida el nibble menos significativo o el de menor peso.

Cuando colocamos el nibble más significativo en las entradas de datos del Display debemos aplicar un estado alto a la terminal E y regresarla posteriormente a su estado bajo normal, recordemos que la terminal

E (habilitación) ejecuta la instrucción tanto de comando como de carácter en la transición de estado alto a bajo. Cuando esto sucede habremos ingresado el primer nibble a la memoria del Display, ahora debemos de colocar el nibble menos significativo y ejecutarlo a través de la terminal E.

Lo anterior se efectúa para el ingreso de instrucciones y de datos de igual manera. Para obtener más información de los códigos de manejo del Display Alfanumérico Inteligente diríjase al Anexo 3.1.

Como se mencionó con anterioridad, dentro de la Tarjeta de Desarrollo para Microcontroladores, el conector par ale Display Alfanumérico 16x2 está ligado al Puerto D del Microcontrolador PIC.

(35)

Circuito 2.3.1 Circuito de la Conexión del Display Alfanumérico en modo de 4bits

(36)

2.4

Teclado Matricial 4x4

En la actualidad, la mayoría de las aplicaciones requieren de la interacción con el operador o usuario.

Existen interfaces sencillas, como pueden ser pulsadores conectados directamente a las terminales de entrada de un Microcontrolador, esto requiere de un número considerable de terminales.

Esta configuración resulta inadecuada en aplicaciones con Microcontroladores con un reducido número de terminales.

Lo anterior se resuelve con una configuración matricial de los pulsadores. Esto es interconectando en coordenadas X-Y los pulsadores como se muestra en el Circuito 2.4.1.

Circuito 2.4.1 Circuito del Teclado Matricial de 16 Pulsadores

(37)

2.4.1 Técnica de Arrastre

Esta técnica consiste en configurar las filas como salidas y las columnas como entradas o viceversa.

[image:37.612.210.431.263.341.2]

En el nibble de salida se tiene que arrastrar un nivel lógico alto o bajo (esto a la elección del programador) como se muestra en la Tabla 2.4.1, para este ejemplo se decidió recorrer un 0 lógico, y colocar el nibble alto del puerto B como salida y el nibble bajo del puerto B como entrada.

Tabla 2.4.1.1 Recorrido del 0 lógico

Nibble de salida P.B4 P.B5 P.B6 P.B7

T1 0 1 1 1

T2 1 0 1 1

T3 1 1 0 1

T4 1 1 1 0

En la Tabla 2.4.1 se recorre un 0 lógico, esto ocasiona que cuando se presione algún pulsador el 0 lógico se vea reflejado en alguna terminal de entrada del puerto en el nibble bajo. Para obtener las coordenadas del pulsador ocupado, se procede a lo siguiente:

Efectuamos la acción T1 de la Tabla 2.4.1, en donde el bit PB4 es el que transmite el nivel bajo, hecho esto mantenemos el nivel bajo en el bit mientras escaneamos las terminales de entrada en busca de un nivel bajo.

Si no se encuentra el nivel bajo en ningún bit de entrada se prosigue a recorrer el nivel bajo a P.B5, y realizamos en escaneo correspondiente. Lo anterior se repite hasta encontrar el nivel bajo buscado.

Note que con este método es necesario escanear todas las entradas haciendo un arrastre en todo el nibble hasta encontrar en alguna entrada un nivel bajo. Lo anterior se necesita efectuarlo durante todo el funcionamiento del Microcontrolador si no se cuenta con algún tipo de interrupción o función que mande llamar este proceso cuando se requiera utilizar el Teclado Matricial.

(38)

2.4.2 Técnica de Entradas/Salidas

Esta técnica consta únicamente de dos pasos fundamentales, el primero es configurar el nibble bajo como salidas y el alto como entradas, colocar ceros lógico en la salida y detectar en que bit de la entrada se refleja. Posterior a esto se intercambian las entradas por salidas y las salidas por entradas, para nuestro caso ahora el nibble bajo se configura como entrada y el nibble alto como salida y se busca que bit de entrada refleja el nivel bajo de la salida.

El Teclado Matricial está incorporado dentro de la Tarjeta Central a un costado del Zócalo de 40 terminales como se muestra en la Ilustración.

(39)
(40)

2.5

Display Gráfico

En aplicaciones donde es necesario mostrar el comportamiento de alguna variable, por ejemplo, en el monitoreo de la temperatura y no se cuenta con una PC, es necesario mostrar la gráfica dentro del instrumento o de la Tarjeta de Desarrollo. Con un Display Alfanumérico Inteligente, esto resulta imposible.

Para esto se emplean Displays Gráficos, capaces de reproducir imágenes, limitados únicamente por el número de pixeles que están en función del tamaño del Display. Tome nota que la resolución de las imágenes depende del modelo de Display Gráfico que se adquiera, por lo general se encuentran de 128x64, 240x64 y 240x128 pixeles

La ilustración 2.5.1 muestra el Display Gráfico utilizado en el proyecto con la Pantalla Táctil Resistiva integrada.

(41)

El Bus de Control y de Datos del GLCD están conectados al puerto B y D de la Tarjeta de Desarrollo respectivamente.

2.5.1 Instrucciones de Control

[image:41.612.85.562.273.567.2]

La inicialización del Display Gráfico se ejecuta con el conjunto de instrucciones mostrado en la Tabla 4. En ella podemos encontrar el código para la operación del Display Gráfico modelo GDM12864B.

Tabla 2.5.1.1 Instrucciones de control para el GLCD GDM12864B

Instrucción RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 Función

Lectura 1 1 Lectura de Datos Lee datos (DB[7:0]) de la memoria RAM al

bus de datos.

Escritura 1 0 Escritura de Datos

Escribe datos (DB[7:0]) a la DDRAM. Después de escribir instrucciones, la dirección Y se acusa automáticamente con 1.

Lectura de

Estado 0 1 Busy 0

ON/

OFF Reset 0 0 0 0

Lee el estado interno BUSY

0: Listo 1: En operación ON/OFF 0: Display ON 1: Display OFF RESET 0: Normal 1: Reset Coordenada

Y 0 0 0 1 Coordenada Y (0 - 63)

Establece la dirección Y en el contador de dirección de columna

Línea de

partida 0 0 0 1 Despliegue de la línea de partida (0 - 63) Indica el dato de RAM desplegado

Coordenada

X 0 0 1 0 1 1 1 Página (0 - 7)

Establece la dirección de X en el registro de direcciones de X

Display

On/Off 0 0 0 0 1 1 1 1 1 0/1

Controla el encendido y apagado del Display. El estado interno y los datos en la DDRAM no se ven afectados.

(42)

Circuito 2.5.1Circuito de conexión para el Módulo del Display Gráfico

En el Circuito 2.5.1 se muestran las conexiones del Display Gráfico. El Bus de control está conectado al conector Header 5x2 correspondiente al Puerto B del Microcontrolador. El Bus de Datos está conectado a un conector Header 5x2 correspondiente al Puerto D del Microcontrolador.

El Display Gráfico tiene luz de fondo, controlada por un LED conectado a las terminales 19 y 20. Para su correcto funcionamiento se le coloca un resistor de 200 para limitar la corriente a 25 mA.

2.6

Controlador para Pantalla Táctil Resistiva

Una pantalla táctil resistiva funciona al aplicar un voltaje a través de una red de resistores y midiendo el cambio en resistencia en un punto dado en la matriz donde la pantalla es tocada. El cambio en el intervalo resistivo señala la posición en la pantalla táctil.

(43)

Circuito 2.6.1 Circuito de 4 y 5 hilos para pantallas táctiles

La pantalla táctil que se emplea para este proyecto es de 4-hilos. El Controlador para Pantalla Táctil se encarga de obtener las coordenadas X-Y del punto de contacto.

Para el funcionamiento del Controlador para Pantalla Táctil se emplean medios puentes H con transistores BJT 2N3904. Como se mencionó anteriormente es necesario energizar una red de resistores y medir en cambio de resistencia indirectamente a través de un voltaje.

(44)

Circuito 2.6.2 Circuito de control para pantalla táctil de 4 hilos

Para obtener la primera coordenada en “X”, tomando como referencia el Circuito 2.6.2, aplicamos un 1

lógico al punto de control “A” y un 0 lógico al punto de control “B”, hecho esto los transistores Q1 y Q2

permanecen en estado de saturación, mientras que Q3 y Q4 permanecen en estado de corte.

Lo anterior origina una red como la mostrada en el Diagrama 7, en donde se aprecia que la red horizontal de transistores está energizada. Al momento de presionar la Pantalla Táctil el arreglo resistivo se modifica

(red de resistencias horizontal), entonces el punto “x.a” tiene un valor de voltaje diferente al original, que está en relación de la posición del punto de contacto. En distintos puntos de contacto el voltaje tendrá

distintos valores. Ahora tenemos nuestro primer dato, la coordenada “X” del punto de contacto.

(45)

Circuito 2.6.3 Circuito equivalente para la obtención de la coordenada en el eje “X”

Para obtener la segunda coordenada, en “Y”, invertimos los niveles lógicos de voltaje aplicados a las

terminales de control. Ahora el segundo medio puente H energiza a la red resistiva vertical, aplicando en

mismo procedimiento, ahora medimos el nivel de voltaje para el punto “y.a”.

Circuito 2.6.4 Circuito equivalente para la obtención de la coordenada en el eje “Y”

Recuerde que para que el Microcontrolador pueda obtener los valores de voltaje en los puntos “x.a” y “y.a”,

(46)

En la Ilustración 2.6.1 se muestra el módulo para el Display Gráfico y la Pantalla Táctil Resistiva.

Ilustración 10 Módulo del Display Gráfico y de la Pantalla Táctil Resistiva

Para poder conectar el Módulo a la Tarjeta Principal se necesitan tres Buses (o cables) de 8 bits. Éstos están colocados en la parte superior de dicho módulo, incluye un potenciómetro para el ajuste del contraste del Display Gráfico.

(47)

2.7

Encoder Incremental

Al Encoder Incremental se le podría definir como un interruptor rotatorio sin fin. Dicho Encoder tiene 3 terminales, una de ellas es común a las laterales, A y B. También tiene integrado en algunos casos un pulsador independiente a las tres terminales anteriores.

Ilustración 11 Encoder Incremental

(48)

Gráfica 2.7.1 Salida del Encoder Incremental

Como podemos observar en la Figura dos la señal de salida en las terminales A y B del Encoder Incremental corresponden al código Gray, el cual es un código en el cual los cambios se hacen una sola vez por transición en cualquier bit.

Para obtener la respuesta de la Gráfica 2.7.1 es necesaria la conexión del Circuito 2.7.1.

Circuito 2.7.1 Circuito equivalente de un Encoder Incremental

(49)

rotación del Encoder es en sentido anti-horario, la señal de salida tendrá un recorrido de derecha a izquierda, ambos casos anteriores obedecerán las señales mostradas en la Gráfica 2.7.1.

La manera más fácil de hacer interactuar al Microcontrolador PIC con el Encoder Incremental es mediante interrupciones. Tomando como referencia una terminal de salida y un flanco para la interrupción.

Tomemos como referencia la terminal A del Encoder, y un flanco descendente para la interrupción. Para que el Microcontrolador sepa cuál es el sentido de rotación, debemos de observar las señales antes y después del flanco descendente de la terminal A.

Cuando el giro es en sentido horario, se observa que la señal en la terminal B en seguida del flanco descendente de la terminal A corresponde a un nivel lógico alto, Gráfica 2.7.2.

Gráfica 2.7.2 Señal en la Terminal B después del flanco descendente en la terminal A en sentido horario de rotación

Cuando el giro es en sentido anti-horario, se observa que la señal en la terminal B en seguida del flanco descendente de la terminal A corresponde a un nivel lógico bajo, Gráfica 2.7.3.

Con los datos anteriores podemos hacer la rutina que le permita al Microcontrolador conocer el sentido de rotación del Encoder Incremental.

(50)

si el nivel presente en la terminal B es un nivel bajo, el sentido de rotación del Encoder Incremental será anti-horario. Lo anterior se dedujo de las Gráficas 2.7.2 y 7 2.7.3.

Gráfica 2.7.3 Señal en la Terminal B después del flanco ascendente en la terminal A en sentido antihorario de rotación

Es necesario colocar en la rutina condiciones que eliminen cualquier mal funcionamiento del sistema debido a rebotes en las señales. La primera recomendación es colocar un retardo antes de hacer la lectura en la terminal B. La segundo recomendación elimina cualquier falla en el sistema, es colocar una condición que involucre que la terminal A debe de tener un nivel lógico bajo; esto es, la terminal A debe de tener un nivel bajo para que el Microcontrolador lea el nivel en la terminal B y pueda realizar la tarea que se le asigne al sentido de rotación, cualquiera que éste sea.

(51)

2.8

LED´s en Configuración Tri-Estado

Esta configuración nos permite emplear el tercer estado que pueden tener las salidas de un Microcontrolador PIC, el estado de alta-impedancia.

La configuración TRI-Estado para LED´s se muestra en el Circuito 2.8.1.

Circuito 2.8.1 Circuito para la configuración TRI-Estado de LED´s

(52)

Por ejemplo, si se requiere encender el LED 0, primeramente debemos de configurar el PB7 y PB6 como salidas y los bits restantes como entradas o lo que es equivalente al tercer estado disponible en las terminales de un Microcontrolador, los dos primeros dos estados son el nivel alto y el nivel bajo que se emplean cuando las terminales del Microcontrolador se configuran como salidas. Después de haber hecho lo anterior, note que si a PB7 le aplicamos un nivel alto y a PB6 un nivel bajo, encenderá el LED 1 del circuito; si la polaridad de estas dos terminales se intercambia, entonces el LED que se encenderá será el LED 2.. Lo anterior aplica para encender individualmente cualquier LED. Si el usuario requiere de programar una animación, esto se logra encendiendo los LED´s uno por uno, pero a una frecuencia alta para que el ojo humano perciba que el conjunto de LED´s están encendidos en el mismo instante.

La cantidad de LED´s se puede incrementar con el aumento de terminales de control. Si se emplea el doble de terminales de control a 16 bits, el número de LED´s que se pueden controlar asciende a 240.

El módulo de LED´s en Configuración Tri-Estado se muestra en la Ilustración 2.8.1.

(53)

Como la forma de encender los LED´s es individualmente, la corriente circulante a través de ellos se define en relación a PWM. La corriente máxima que podemos obtener por cada bit de los puertos de salida es de 25 mA. Teniendo en cuenta que son 56 LED´s como máximo dentro de nuestro arreglo, cuando queramos encender todos, la corriente a través de cada uno será:

Para mantener la misma intensidad de brillo cuando encendamos menor cantidad de LED´s, debemos de tener una relación de tiempo de apago a tiempo de encendido de 56:1 por cada LED.

Con todo lo anterior planteado, se puede concluir que la corriente máxima que consume el Módulo de LED´s en configuración Tri-Estado es de 446 uA. Para aplicaciones portátiles este consumo de corriente resulta muy adecuado.

(54)

2.9

Módulo RS232

La comunicación Serial se realiza a través de un conector SUD-D de 9 terminales (DB-9) y el módulo

USART del Microcontrolador PIC. Para estables dicha comunicación, es necesario establecer una conexión entre las líneas RX y TX y las terminales del Microcontrolador provistas con el módulo USART. Las terminales del Microcontrolador que se emplean para este propósito están marcadas como a continuación: TX– datos recibidos, TX - datos transmitidos, CTS– listo para enviar y RTS – solicitud de envío. La velocidad de transmisión alcanza los 115 kbps.

(55)

El módulo USART es una de las formas más comunes para intercambiar datos entre la PC y componentes periféricos. Para poder habilitar la recepción de datos del módulo USART del Microcontrolador con distintos niveles de voltaje, es necesario proveer un convertidor de nivel de voltaje tal como el MAX-202C.

Circuito 2.9.2 Conector DB-9 para comunicación Serial con una PC

En el Diagrama 2.9.1 se encuentra conectado un circuito integrado MAX202, puede apreciarse la existencia de capacitores de menor valor a los comúnmente empleados con el MAX232. Esto lo permite el circuito integrado MAX202 ya que posee capacitores internos que facilitan la instalación de capacitores de reducido valor y tamaño, con esto se puede reducir el espacio necesario para su colocación dentro de la

(56)

2.10

Interface Serial para Displays de 7 Segmentos de 8 Dígitos

La interfaz serial para controlar Displays de 7 segmentos tiene como cerebro el chip MAX7219 de la compañía MAXIM. El MAX7219 es un controlador serial compacto de entrada-salida para Display de Cátodo-Común, que enlaza Microcontroladores con Displays numéricos de LED´s de 7 segmentos hasta de 8 dígitos, Displays de barras, o 64 LED´s individuales. Incluidos en el chip están un decodificador BCD, circuitería de escaneo multiplexado, controladores de segmentos o dígitos, y una memoria RAM estática de 8x8 que almacena cada dígito. Solo se requiere de una resistencia externa para establecer la corriente de segmento para todos los LED´s. Una interface conveniente es el serial de 4-hilos la cual conecta a todos los Microcontroladores más comúnmente usados. Dígitos individuales pueden ser direccionados y actualizados sin tener que reescribir el Display por completo. El MAX7219 también permite al usuario seleccionar o habilitar la función de decodificación BCD para cada dígito. El dispositivo incluye un modo de cierre de baja potencia de 15μA, control digital y analógico de brillo, un registro de escaneo que permite al usuario desplegar de 1 a 8 dígitos, y un modo de prueba que enciende todos los LED´s.

(57)

La Ilustración 2.10.1 muestra el Módulo de la Interface Serial para Displays de 7 Segmentos. Este módulo debe de conectarse al Puerto C del Microcontrolador dentro de la Tarjeta de Desarrollo. En este puerto se encuentra el Módulo interno I2C.

El circuito completo del Módulo de la Interface Serial para Displays de 7 Segmentos se muestra en el Circuito 2.10.2. En él se encuentran los 8 Displays, el Circuito Integrado MAS7219 y el conector Header 5x2 para acceder a la Tarjeta principal.

(58)

A continuación se muestra el Diagrama a Bloques del Circuito Integrado MAX7219.

Diagrama 2.10.1Diagrama a Bloques del Circuito Integrado MAX7219

(59)

2.11

Módulo RFID

El circuito integrado empleado para la estación de lectura/escritura de RFID (Identificación por Radiofrecuencia) es el chip de tecnología CMOS EM4095 de la compañía EM MICROELECTRONIC.

El EM4095 está destino para ser utilizado con un circuito de antena y un Microcontrolador. Se necesitan pocos componentes externos para lograr el filtrado de DC y de RF, sensar la corriente y desacoplar la fuente de voltaje.

La operación del circuito se controla por las entradas lógicas SHD y MOD. Cuando SHD se encuentra en un nivel lógico alto, el chip EM4095 se encuentra en modo sleep, con ello el consumo de corriente se minimiza. Al encender el módulo la entrada SHD debe de estar en alto para habilitar una correcta inicialización. Cuando la entrada SHD se encuentra en bajo el circuito se habilita para emitir campo de RF, comienza a demodular cualquier señal modulada en amplitud (AM) captada por la antena. Esta señal digital proveniente del bloque de demodulación es provista a través de la terminal DEMOD_OUT al Microcontrolador para su decodificación y procesamiento.

Un alto nivel en la terminal MOD forza a los controladores de la antena principal en tres estados de forma síncrona con la portadora de RF. Mientras la terminal MOD se encuentre en alto VCO y la cadena de demodulación en AM se mantienen en estado antes de que MOD estuviese en alto. Esto asegura una recuperación rápida después de liberar a la terminal MOD. La conmutación de encendido de VCO y la demodulación de AM es retrasada por 41 relojes de RF después del flanco de bajada en la terminal MOD. De esta manera los puntos de operación de VCO y de la demodulación de AM no son perturbados por la puesta en marcha del circuito resonante de la antena.

(60)

La recepción involucra la demodulación de AM de la modulación de la señal de la antena inducida por el tag. Esto se logra al sensar la absorción de modulación aplicado por el tag.

Refiriéndonos al diagrama a bloques, la transmisión se logra gracias a un PLL (Lazo de Enganche de Fase) y a los controladores de la antena.

Los controladores de la antena alimentan a la antena de la estación base de lectura con la energía apropiada. Estos controladores suministran corriente a la frecuencia de resonancia que típicamente es de 125kHz. La corriente suministrada por los controladores depende del factor de calidad (Q) del circuito resonante externo.

Se recomienda fuertemente que el diseño de la antena se efectúe de tal manera que no se sobrepase la corriente pico máximo que es de 250 mA. Otro factor limitante para la corriente de la antena es la convección térmica del encapsulado. La corriente pico máxima debe de ser diseñado de tal manera que la temperatura de la unión interna no exceda la temperatura máxima en una aplicación con una temperatura ambiente máxima. 100% de modulación (campo detenido) se logra desconectando los controladores de la antena. Los controladores de la antena están protegidos contra corto circuito de DC de la antena a las fuentes de voltaje. Cuando es detectado un corto circuito la terminal RDY/CLK es orillada a un nivel bajo mientras que el controlador principal es forzado en tres estados. El circuito puede ser reiniciado activando la terminal SHD. El PLL está conformado por los bloques del filtro de bucle, los cuales son: el oscilador controlado por voltaje, y del comparador de fase. Usando un divisor capacitivo, la terminal DEMOD_IN obtiene información acerca de la señal actual de alto voltaje en la antena.

(61)

en amplitud (AM) se basa en la técnica de “Demodulación Síncrona de AM”. La cadena recibida se compone de muestra, de cancelación de nivel de CD, de un filtro pasa-banda y de un comparador. El voltaje de DC de la señal en la terminal DEMOD_IN se aplica a AGND a través de un resistor interno. La señal de AM es muestreada. El muestreo está sincronizado por un reloj de VCO. Cualquier componente de DC es suprimida de esta señal por el capacitor CDEC. Un filtrado adicional para remover la señal portadora remanente, ruido de baja y alta frecuencia se efectúa por un filtro pasa-banda de segundo orden y CDC2. La señal recibida filtrada y amplificada alimenta a un comparador asíncrono. La salida del comparador es amortiguado a la salida de la terminal DEMOD_OUT.

Circuito 2.11.1 Circuito del módulo de RFID

(62)

también está presente durante el tiempo en que los controladores de la antena están apagados debido al alto nivel en la terminal MOD. Durante el tiempo TSET de la transición de un nivel alto a bajo en la terminal SHD la terminal RDY/CLK es arrastrada a un nivel bajo por un resistor de 10k . La razón para esto está en una función adicional de la terminal RDY/CLK en el caso de la modulación de AM con índice menor al 100%. En ese caso se emplea como un controlador auxiliar el cual mantiene una amplitud menor en la bobina durante el proceso de modulación. El circuito de la tarjeta de RFID empleada en la Tarjeta de Desarrollo para Microcontroladores PIC es el que el fabricante propone en su hoja de especificaciones y se muestra en el circuito del Circuito 2.11.1.

En la Ilustración se muestra el Módulo de RFID usado en el proyecto.

(63)

Capítulo 3.

Justificación Económica

El desarrollo de cualquier proyecto implica el gasto y/o la inversión de capital que deben de llevar un seguimiento para que se pueda tener un adecuado control. Esto se hace con el fin de evaluar la viabilidad y factibilidad del proyecto.

3.1

Cronograma de Actividades

[image:63.612.80.564.379.617.2]

En el cronograma se establecieron las actividades que se realizaron para el desarrollo del proyecto durante el periodo enero 2009 a diciembre 2009.

Tabla 3.1.1 Cronograma de Actividades

Instituto Politécnico Nacional

Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Zacatenco

Jefatura: Ingeniería en Comunicaciones y Electrónica

Especialidad: Ingeniería en Electrónica Periodo: enero 2006- diciembre2009

Proyecto: Tarjeta de Desarrollo para Microcontroladores PIC

Unidad 1: Introducción

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H.

1.1 Investigación de Antecedentes

de los Microcontroladores PIC 27/01/09 6/02/09 10

1.2

Detectar problemas presentes en el diseño de Aplicaciones con Microcontroladores y de otras Tarjetas de Desarrollo existentes en el mercado

9/0209 20/02/09 5

1.3 Definir el alcance del Proyecto 23/02/09 2/03/09 5

1.4 Desarrollar la Justificación del

porqué del Proyecto 9/03/09 20/03/09 10

1.5

Consultar la información obtenida con los Asesores Técnicos

23/03/09 3/03/09 4 5 10

1.6

Consultar el formato para la documentación con el Asesor Metodológico

6/03/09 17/03/09 7 5

1.7 Documentación de los primeros

cuatro puntos anteriores 20/03/09 1/04/09 10

1.8

Consultar con el Asesor Metodológico el documento elaborado

(64)

Unidad 2: Capítulo 1.- Sistemas de Microcomputadoras

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H.

2.1

Consultar en el libro “The PIC Microcontroller Your Personal Introductory Course” los Sistemas del Microcontrolador

18/04/09 22/04/09 5

2.2 Investigar las Características de los Microcontroladores 25/04/09 29/04/09 15

2.3 Analizar las Arquitecturas von Newmann y Harvard 1/05/09 5/05/09 5

2.4 Definir las Arquitecturas CISC y RISC 8/05/09 12/05/09 5

2.5

Consultar la información obtenida con los Asesores Técnicos

15/05/09 19/05/09 4 10 10

2.6

Consultar el formato para la documentación con el Asesor Metodológico

22/05/09 26/05/09 5 5

2.7 Documenta toda la información recopilada en la Unidad 2. 29/05/09 3/06/09 15

2.8

Consultar con el Asesor Metodológico el documento elaborado

6/06/09 10/06/09 13 15

Unidad 3: Capítulo 2.- Desarrollo del Prototipo

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H. 3.1 Diseñar de la estructura de la Tarjeta de Desarrollo 13/06/09 24/06/09 30

3.2 Consultar el diseño con los Asesores Técnicos 27/06/09 31/06/09 2 10 15

3.3

Diseñar la Placa de Circuito Impreso para la Tarjeta de Desarrollo

1/07/09 21/08/09 40

3.4 Fabricación de la Tarjeta de Desarrollo 24/08/09 28/08/09 25

3.5

Comprobar el buen funcionamiento de la Placa de Circuito Impreso

28/08/09 28/08/09 5

3.6

Determinar los módulos externos más importantes quede deben formar parte de la Tarjeta de Desarrollo

31/08/09 4/09/09 15

3.7

Consultar con los Asesores Técnicos los módulos tomados en cuenta

7/09/09 7/09/09 2 15 15

3.8

Diseño de las Placas de Circuito Impreso de los módulos que formarán parte de la Tarjeta de Desarrollo

8/09/09 18/09/09 40

3.9 Fabricar los Módulos externos 21/09/09 25/09/09 25

3.10

Comprobar el buen funcionamiento de las Placas de Circuito Impreso de los módulos externos

25/09/09 25/09/09 5

3.11

Consultar con los Asesores Técnicos el acabado final y el funcionamiento de la Tarjeta de Desarrollo y de sus módulos externos

26/09/09 26/09/09 1 5 5

3.12

Consultar el formato para la documentación con el Asesor Metodológico

27/09/09 27/09/09 4 5

3.13

Documentación de los diseños de la Tarjeta principal y de los módulos externos

28/09/09 30/09/09 30

3.14

Consultar con el Asesor

(65)

Unidad 4: Capítulo 3.- Justificación Económica

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H.

4.1

Investigar los costos de los diferentes materiales empleados para la fabricación de la Tarjeta de Desarrollo

1/10/09 4/10/09 10

4.2 Documentar los costos obtenidos 4/10/09 4/10/09 5

4.3

Investigar los costos de los diferentes equipos utilizados para la fabricación de la Tarjeta de Desarrollo

5/10/09 7/10/09 15

4.4 Documentar los costos obtenidos 7/10/09 7/10/09 5

4.5

Investigar los costos de la infraestructura utilizada para la fabricación de la Tarjeta de Desarrollo

11/10/09 14/10/09 10

4.6 Documentar los costos

obtenidos 14/10/09 14/10/09 5

4.7

Investigar los costos del factor humano que intervino en el diseño y la fabricación de la Tarjeta de Desarrollo

15/10/09 18/10/09 5

4.8 Documentar los costos obtenidos 18/10/09 18/10/09 5

4.9

Consultar el formato para la documentación con el Asesor Metodológico

19/10/09 23/10/09 4 5

4.10

Documentación de todos los costos presentes en la fabricación de la Tarjeta principal y de los módulos externos

24/10/09 30/10/09 25

4.11

Consultar con el Asesor Metodológico el documento elaborado

30/10/09 30/10/09 20 20

Unidad 5: Capítulo 3.- Justificación Económica

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H.

5.1

Documentar las Conclusiones obtenidas durante la elaboración del Proyecto

2/11/09 6/11/09 5

5.2

Documentar las

recomendaciones que deben de tomarse en cuenta para el manejo de la Tarjeta de Desarrollo para Microcontroladores

7/11/09 10/11/09 10

5.3

Consultar con el Asesor Metodológico el documento elaborado

11/11/09 11/11/09 8 10

Unidad 6: Terminación del Proyecto y Presentación ante Jurado

No. Actividad Inicio Término Responsable E F M A M J J A S O N D

F.J.G.F. J.M.C.C. J.L.G. N.M.H.

6.1

Revisar a fondo todo el documento elaborado y corregir errores

12/11/09 20/11/09 5 5 30 50

6.2 Presentar el Proyecto ante el Jurado asignado 7/12/09 7/12/09 2 2 2 5

Figure

Tabla 1 Comparación de características y precios
Tabla 2.3.1 Terminales del Display Alfanumérico Inteligente LMB162AFC de Topway
Tabla 2.3.2 Código de Inicialización del Display Alfanumérico Inteligente
Tabla 2.4.1.1 Recorrido del 0 lógico
+7

Referencias

Documento similar

The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the

quiero también a Liseo porque en mi alma hay lugar para amar a cuantos veo... tiene mi gusto sujeto, 320 sin que pueda la razón,.. ni mande

Para ello, trabajaremos con una colección de cartas redactadas desde allí, impresa en Évora en 1598 y otros documentos jesuitas: el Sumario de las cosas de Japón (1583),

Sanz (Universidad Carlos III-IUNE): "El papel de las fuentes de datos en los ranking nacionales de universidades".. Reuniones científicas 75 Los días 12 y 13 de noviembre

(Banco de España) Mancebo, Pascual (U. de Alicante) Marco, Mariluz (U. de València) Marhuenda, Francisco (U. de Alicante) Marhuenda, Joaquín (U. de Alicante) Marquerie,

 Tejidos de origen humano o sus derivados que sean inviables o hayan sido transformados en inviables con una función accesoria..  Células de origen humano o sus derivados que

d) que haya «identidad de órgano» (con identidad de Sala y Sección); e) que haya alteridad, es decir, que las sentencias aportadas sean de persona distinta a la recurrente, e) que

En este sentido, puede defenderse que, si la Administración está habilitada normativamente para actuar en una determinada materia mediante actuaciones formales, ejerciendo