Logo Studenta

Tarjeta de Desenvolvimento para Microcontroladores PIC

¡Este material tiene más páginas!

Vista previa del material en texto

INSTITUTO POLITÉCNICO NACIONAL 
 
 
 
 
 
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 
 
 
 
MÉXICO, D.F. 2009 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
1 
 Í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 
2.6 Controlador para Pantalla Táctil Resistiva .................................................................................... 38 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
2 
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 
Fuentes de Información ............................................................................................................................... 71 
 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
3 
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 
 
RAMMemoria de Acceso Aleatorio 
ROM Memoria de Solo Lectura 
RISC Computadora con Reducido Conjunto de Instrucciones 
 
SPI Interface Serial Periférica 
 
USART Transmisor-Receptor Síncrono-Asíncrono 
 
http://es.wikipedia.org/wiki/RISC
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
4 
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. 
 Desarrollar los módulos del Display Gráfico con la pantalla Táctil, los LEDs en Configuración Tri-
Estado, la Interface Serial para Displays de 7 Segmentos, el módulo de Resistencias Pull con 
Pulsadores. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
5 
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. 
 
Al final del documento, encontramos los enlaces de las fuentes de información de donde se recopilaron los 
datos más transcendentes, además de las hojas de especificaciones de los circuitos integrados que se 
emplean. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
6 
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. 
 
En 1985, la división de microelectrónica de General Instrument se separa como compañía independiente 
que es incorporada como filial (el 14 de diciembre de 1987 cambia el nombre a Microchip Technology y 
en 1989 es adquirida por un grupo de inversionistas) y el nuevo propietario canceló casi todos los 
desarrollos, que para esas fechas la mayoría estaban obsoletos. El Microcontrolador PIC sin embargo, se 
mejoró con EPROM (Memoria Borrable y Programable Electrónicamente de Solo Lectura) para conseguir 
un controlador de canal programable. Hoy en día, multitud de Microcontroladores PIC vienen con varios 
periféricos incluidos (módulos de comunicación serie, núcleos de control de motores, etc.) y con capacidad 
en memoria de programa que va desde 512 a 32,000 palabras (una palabra corresponde a una instrucción 
en ensamblador, y puede ser 12, 14 ó 16 bits, dependiendo de la familia específica de PICmicro). 
 
 
http://es.wikipedia.org/wiki/Microcontrolador
http://es.wikipedia.org/wiki/RISC
http://es.wikipedia.org/wiki/Microchip_Technology_Inc.
http://es.wikipedia.org/wiki/Microchip_Technology_Inc.
http://es.wikipedia.org/wiki/Microelectr%C3%B3nica
http://es.wikipedia.org/w/index.php?title=General_Instrument&action=edit&redlink=1
http://es.wikipedia.org/wiki/CPU
http://es.wikipedia.org/wiki/Bit
http://es.wikipedia.org/wiki/Dispositivo_de_entrada/salida
http://es.wikipedia.org/wiki/1975
http://es.wikipedia.org/wiki/Microc%C3%B3digo
http://es.wikipedia.org/wiki/ROM
http://es.wikipedia.org/wiki/RISC
http://es.wikipedia.org/wiki/Instrucci%C3%B3n
http://es.wikipedia.org/wiki/Ciclo
http://es.wikipedia.org/wiki/Oscilador
http://es.wikipedia.org/wiki/1985
http://es.wikipedia.org/wiki/Microelectr%C3%B3nica
http://es.wikipedia.org/wiki/14_de_diciembre
http://es.wikipedia.org/wiki/1987
http://es.wikipedia.org/w/index.php?title=Microchip_Technology&action=edit&redlink=1
http://es.wikipedia.org/wiki/1989
http://es.wikipedia.org/wiki/EPROM
http://es.wikipedia.org/w/index.php?title=Controlador_de_canal&action=edit&redlink=1
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
7 
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. 
 
En ocasiones es necesario presentar algún trabajo con la Tarjeta y para poder trabajar en conjunto con 
otros dispositivos como un Display Alfanumérico Inteligente para visualizar los datos y un Teclado Matricial 
para introducirlos, éstos deben de conectarse por separado a través de los conectores de los puertos con 
las desventajas previamente planteadas. 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
8 
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 simplede 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 
 Módulo de resistencias de Empuje, Pulsadores y LEDs 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
9 
Justificación 
 
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 
 
Las característica propias de la Tarjeta, como la de incluir un conector Header sencillo de 16 terminales 
para un Display Alfanumérico Inteligente de 16x2 líneas además de un Teclado Matricial 4x4, un conector 
para la Programación Dentro del Circuito (ICSP), la agrupación y ordenamiento de los puertos dispuestos 
en conectores Jack 5x2, y el diseño de módulos externos que se conectan fácil y rápidamente a la Tarjeta 
principal, hacen que el proyecto sea versátil, económico y de fácil empleo en diferentes aplicaciones. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
10 
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. 
 
Los Microcontroladores han sido tradicionalmente programados usando el lenguaje de ensamblador del 
dispositivo de destino. A pesar de que el lenguaje ensamblador es rápido, tiene severas desventajas. Un 
programa en ensamblador consiste en nemónicos (dato simbólico que identifica a un comando 
http://es.wikipedia.org/wiki/Dato
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
11 
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 
 
En teoría, un único chip es suficiente para tener un sistema de Microcontrolador operando. En 
aplicaciones prácticas, componentes adicionales pueden ser requeridos para que la microcomputadora 
pueda interactuar con su ambiente. Con la llegada de la familia de Microcontroladores PIC el tiempo de 
desarrollo de un proyecto de electrónica se ha reducido a horas. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
12 
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). 
 
EEPROM (memoria borrable y programable eléctricamente de solo lectura),es una memoria no volátil que 
puede borrarse y reprogramarse usando un adecuado dispositivo de programación. Las memorias 
EEPROM se usan para guardar información de configuración, valores máximos y mínimos, información de 
identificación, etc. Algunos Microcontroladores se han armado en memorias EEPROM. Por ejemplo, el 
Microcontrolador PIC18F452 contiene una memoria EEPROM de 256 bytes donde cada byte puede ser 
programado y borrado directamente por aplicaciones de software. Las memorias EEPROM son muy lentas 
a menudo. Un chip EEPROM es más costeable que un chip EPROM. 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
13 
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. 
 
Una instrucción se ejecuta al buscarla en la memoria y luego decodificarla. Esto usualmente toma algunos 
ciclos de reloj y se conoce como ciclo de instrucción. En los Microcontroladores PIC, un ciclo de instrucción 
toma cuatro periodos de reloj. Esto es, el Microcontrolador opera a un ritmo de reloj que es un cuarto de la 
frecuencia actual de oscilación. La serie 18F de Microcontroladores pueden operar con frecuencias de reloj 
por encima de los 40MHz. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
14 
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. 
 
Interrupciones.- Las interrupciones son un concepto importante en Microcontroladores. Una interrupción 
causa que el Microcontrolador responda a un evento externo o interno de forma muy rápida. Cuando una 
interrupción ocurre, el Microcontrolador deja la tarea que estaba realizando y brinca a una parte especial 
del programa conocida como Rutina de Servicio de Interrupción (ISR). El código de programa dentro de 
la Rutina se ejecuta, y a su regreso el programa retoma su flujo normal de ejecución. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
15 
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 deusuario puede leer rápidamente la información procesada. 
 
Los convertidores A/D son especialmente útiles en el control y monitoreo de aplicaciones, desde que 
muchos sensores (así como, sensores de temperatura, sensores de presión, sensores de fuerza, etc.) 
producen voltajes analógicos a su terminal salida. 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
16 
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. 
 
Modo de Reposo.- Algunos Microcontroladores ofrecen modo de reposo incorporado, que al ejecutarse 
detiene el oscilador interno y reduce el consumo de energía a un nivel extremadamente bajo. El principal 
objetivo del modo de reposo es el de conservar la batería cuando el Microcontrolador no esté haciendo 
nada útil. El Microcontrolador se despierta del modo de reposo por un reinicio externo o por el 
desbordamiento del perro guardián o alguna interrupción. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
17 
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. 
 
La arquitectura von Newmann toma el nombre de John von Newman, matemático que propuso la idea de 
un ordenador con el programa almacenado. J. von Newmann trabajó en el equipo de diseñadores de la 
computadora ENIAC (Calculador e Integrador Numérico Electrónico) diseñada en la Universidad de 
Pennsylvania durante la Segunda Guerra Mundial. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
18 
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. 
 
Con menos líneas la conexión von Newmann es más sencilla, sin embargo, esto se refleja en una 
velocidad de ejecución más lenta que en la arquitectura Harvard, ya que las instrucciones y los datos 
deben manipularse alternadamente por sólo existir un bus. La velocidad de ejecución aumenta en la 
estructura Harvard al manipularse instrucciones y datos simultáneamente. 
 
 
 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
19 
 
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.Diagrama 1.4.1 Esquemas de las Arquitecturas a) von Newmann y b) Harvard 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
20 
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. 
 
En la arquitectura RISC, la CPU dispone de un repertorio corto de instrucciones sencillas. Cada instrucción 
puede realizar operaciones simples, tales como mover un dato entre la CPU a la memoria a alta velocidad. 
Se puede lograr que todas las instrucciones tengan la misma longitud. Hay pocos modos de 
direccionamiento de los datos y son aplicables a todas las celdas de la memoria de datos. Con esto, 
disminuye sustancialmente la complejidad de la CPU, de modo que se puede aumentar la frecuencia del 
oscilar sin el riesgo de la pérdida de información, con esto aumentamos la velocidad de las instrucciones. 
Los Microcontroladores PIC son un ejemplo de dispositivos con arquitectura RISC. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
21 
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. 
 
Ilustración 2 Zócalo de 40 terminales de la Tarjeta de Desarrollo 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
22 
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 
 
 
Para comprobar el buen funcionamiento de los puertos y realizar experimentos con pulsadores, se diseñó y 
fabricó un módulo con el diseño del Circuito 2.2.1. En él podemos encontrar resistores que pueden 
configurarse en modo de Pull-Up o en modo de Pull-Down. En el módulo, estas configuraciones sirven para 
establecer niveles lógicos de voltaje, y por medio de pulsadores se obliga a un nivel contrario que es 
detectado por el Microcontrolador. Tomando como referencia el Circuito 2.2.1, el interruptor nombrado SR 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
23 
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. 
 
El usuario debe de tomar la precaución de no encender los LED´s en todos los puertos del 
Microcontrolador, ya que éste puede suministrar solamente 300 mA para todo el sistema. En aplicaciones 
donde se requiere mayor corriente es necesario el acondicionamiento de señal con base en transistores o 
algún otro dispositivo que nos permita relevar la fase de control a una fase de potencia sin exigir al 
Microcontrolador mayor demanda de corriente a la que éste puede proveer. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
24 
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. 
 
El Circuito 2.2.2 corresponde a los conectores de los Puertos de Entrada/Salida de la Tarjeta de Desarrollo 
para Microcontroladores. 
 
 
 
 
 
 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
25 
 
 
Circuito 2.2.2 Puertos de Entrada/Salida de la Tarjeta de Desarrollo 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
26 
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 
 
 
 
En el mercado podemos hallar Displays Alfanuméricos Inteligentes con diferentes longitudes de espacio 
para caracteres, las hay de 8, 16, 20, 24, 32 y 40 caracteres, en versiones de 1, 2 y 4 líneas. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
27 
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). 
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 - 
16 BLK - 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
28 
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, parael ú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. 
 
Dentro de la tarjeta de Desarrollo para Microcontroladores el módulo del Display Alfanumérico Inteligente 
se encuentra conectado al puerto D del Microcontrolador, con las terminales asignadas a los bits de puerto 
mostrados en la Tabla 2.3.1. El conector de 16 terminales destinado para el Display, está situado a un 
costado del Microcontrolador, el diseño permite colocar al Display sobre el Microcontrolador, con esto se 
gana espacio y se mejora la estética de la Tarjeta como se muestra en la Ilustración 2.3.2. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
29 
 
Ilustración 7 Montaje del Display sobre el Microcontrolador 
 
 
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 
 
Para mandarle una instrucción o un dato al Display Alfanumérico Inteligente debemos introducir códigos en 
sus entradas de datos. Cada instrucción tiene un código distinto que en la mayoría de los Displays son los 
mismos. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
30 
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. 
 
El Display es controlado en modo de 4 bits, el circuito correspondiente se muestra en el Circuito 2.3.1. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
31 
Circuito 2.3.1 Circuito de la Conexión del Display Alfanumérico en modo de 4bits 
 
 
Las terminales 15 y 16 son del LED de iluminación del Display Alfanumérico, es por ello que la corriente 
que circule a través de éste debe de ser de 25mA. 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
32 
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 
 
 
En el Circuito 2.4.1 se observa que se tienen 4 columnas que en la Tarjeta de Desarrollo para 
Microcontroladores se encuentran conectadas al nibble (conjunto de 4-bits) bajo del puerto B y 4 filas 
conectadas al nibble alto del puerto B, al presionar un pulsador dos terminales del teclado serán comunes, 
coincidiendo con la fila y la columna en la que se encuentre el pulsador utilizado. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
33 
2.4.1 Técnica de Arrastre 
 
Esta técnica consiste en configurar las filas como salidas y las columnas como entradas o viceversa. 
 
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. 
 
Para evitar esto, podemos aprovechar el uso de la interrupción al cambio presente en algunos 
Microcontroladores de la familia 18F en su puerto B. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
34 
 
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. 
 
Ilustración 8 Teclado Matricial de 16 pulsadores integrado en la Tarjeta de Desarrollo 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
35 
 
Circuito 2.4.2 Circuito de Conexión del Teclado Matricial 4x4 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
36 
2.5 Display Gráfico 
 
En aplicaciones donde es necesario mostrar el comportamientode 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. 
 
Ilustración 9 Display de Cristal Líquido Gráfico modelo GDM12864B 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
37 
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 
 
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. 
0: Apagado 
1:Encendido 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
38 
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. 
 
Las 2 arquitecturas resistivas más populares emplean 4 o 5 hilos (como se muestra en el Circuito 2.6.1). 
Los circuitos determinan la posición en dos coordenadas, de igual manera puede añadirse una tercer 
coordenada para medir la presión aplicada a la pantalla táctil en la configuración de 4-hilos. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
39 
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. 
 
El Circuito 2.6.2 está formado por dos medios Puentes H. Los transistores que conforman a los medios 
Puentes H trabajan en la región de corte y en la región de saturación. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
40 
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. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
41 
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”, 
primero es necesario tener una referencia para poder hacer la comparación y poder determinar el punto 
exacto de contacto. Es decir, debemos de caracterizar la Pantalla Táctil, hacer una tabla con las 
coordenadas para diferentes puntos de contacto e introducirla al Microcontrolador PIC. 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
42 
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. 
 
El Bus para la Pantalla Táctil Resistiva debe de ser conectado al Puerto A de la Tarjeta Principal, ya que 
ese Puerto está provisto del Convertidor Analógico/Digital necesario para su manipulación. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
43 
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 
 
 
La función del Encoder incremental es el de conmutar las terminales laterales con la central, de tal manera 
que a la salida de las terminales laterales se obtengan las señales de la Gráfica 2.7.1. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
44 
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óndel Circuito 2.7.1. 
 
 
Circuito 2.7.1 Circuito equivalente de un Encoder Incremental 
 
 
El Circuito 2.7.1 es un circuito equivalente del Encoder Incremental a excepción de las resistencias de Pull-
Up, nótese que hay dos pulsadores, que se van accionando uno a la vez, y dependiendo del sentido de 
rotación es el orden en que se accionan los pulsadores. En la Gráfica 2.7.2 puede notar que si el Encoder 
se rota en sentido horario, la señal de salida será de izquierda a derecha, en cambio, si el sentido de 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
45 
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. 
 
La rutina es simple, la interrupción se efectuará en el flanco descendente de la terminal A del Encoder, 
cuando esto suceda, en la terminal B del Encoder sólo puede haber dos niveles lógicos presentes; si el 
nivel presente es un nivel alto, entonces el sentido de giro del Encoder Incremental es horario; en cambio, 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
46 
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. 
 
El Encoder incremental puede utilizarse para aumentar o disminuir alguna variable dentro del programa, 
con esto se aumenta o disminuye la velocidad de rotación de algún motor por ejemplo, o el usuario puede 
emplearlo para la aplicación que crea más conveniente. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
47 
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 
 
 
Del Circuito 2.8.1 podemos observar que el circuito en configuración TRI-Estado de LED´s está controlado 
por 8 bits que nos permite controlar hasta 56 LED´s. Esto es permutando el número de bits de control por 
el número de LED´s que se pueden conectar a cada bit. La manera más sencilla de controlar esta 
configuración es encendiendo individualmente los LED´s. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
48 
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. 
 
Ilustración 12 Módulo de LED´s en Configuración Tri-Estado 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
49 
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. 
 
Para que el ojo humano no perciba el parpadeo, la frecuencia de operación debe de ser mayor a 30 Hz, 
esto debido a que el ojo humano captura 30 imágenes por segundo. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
50 
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. 
 
Circuito 2.9.1 Circuito para el módulo de Comunicación RS232 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
51 
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 empleadoscon 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 
Tarjeta de Desarrollo para Microcontroladores PIC. 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
52 
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. 
 
Ilustración 12.10.1 Módulo de la Interface Serial para Displays de 7 Segmentos 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
53 
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. 
 
Circuito 2.10.1 Circuito de conexiones para el Módulo de la Interface Serial para Displays de 7 Segmentos 
 
 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
54 
A continuación se muestra el Diagrama a Bloques del Circuito Integrado MAX7219. 
 
Diagrama 2.10.1Diagrama a Bloques del Circuito Integrado MAX7219 
 
 
En el Diagrama 2.10.1 observamos que el Circuito Integrado MAX7219 está integrado por bloques que 
ejecutan funciones específicas. Todo el funcionamiento del sistema comienza con la entrada serial con 
protocolo SPI, en donde se requieren de tres terminales para establecer la comunicación. La dirección de 
las direcciones se guardan en el registro de direcciones y los datos se guardan en el puerto dual. 
Dependiendo de la dirección y de los datos ingresados se configura el modo de codificación de los 
Displays, el registro de intensidad luminosa, el registro de escaneo, el registro de modo de prueba y el 
registro de modo de bajo consumo. Cuando se configura el registro de codificación de los Displays, el 
registro de código BCD (Binary-coded decimal) controla a los Displays por medio de software. Cuando 
configuramos el registro de intensidad luminosa, éste controla un modulador de ancho de pulso, que va 
desde 1/32 para el mínimo brillo hasta un 31/32 para un máximo. Cuando configuramos el registro de 
escaneo, éste controla un multiplexor que establece el número de dígitos habilitados por software, el 
programador puede elegir entre 1 a 8 dígitos para visualizar. El registro de modo de bajo consumo 
deshabilita todo el sistema, en este modo no se visualiza ningún dígito. 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
55 
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. 
 
El circuito desarrolla las dos funciones de una estación base de RFID, llamadas: transmisión y recepción. 
La transmisión involucra el manejo de la antena y la modulación en amplitud (AM) del campo de RF. Los 
controladores de la antena suministran una corriente a la antena externa para generar un campo 
magnético. 
 
Tarjeta de Desarrollo para Microcontroladores PIC 2009 
 
 
56 
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

Continuar navegando