PIZARRA ELECTRONICA CONTROLADA POR MICROCONTROLADORES Y
ETHERNET
Por
Víctor Manuel Corona Hernández
Héctor Leonel López Santiago
Presentado a la academia de Sistemas Digitales y Comunicaciones
Del Instituto de Ingeniería y Tecnología de
La Universidad Autónoma de Ciudad Juárez
Para su evaluación
LA UNIVERSIDAD AUTÓNOMA DE CIUDAD JUÁREZ
Abril 2009
1
PIZARRA ELECTRONICA CONTROLADA POR MICROCONTROLADOR Y
ETHERNET
Dr. Víctor Hinostroza Presidente de la academia
___________________________________________
MC. Sergio Lujan Maldonado Asesor
___________________________________________
Víctor Manuel Corona Hernández Alumno
___________________________________________
Héctor Leonel López Santiago Alumno
___________________________________________
2
Introducción
Con el transcurso del tiempo ha surgido la necesidad de carteles
electrónicos que sean prácticos y llamativos para comunicar información. En
respuesta a esto nacen las pizarras electrónicas. Aunque son llamados con
diferentes nombres, el funcionamiento es el mismo.
Hoy en día somos testigos de los avances tecnológicos que han sido
desarrollados gracias a la microelectrónica, causando gran impacto debido a la
reducción en material, tamaño y costo. Una herramienta muy útil que está
conquistando el mundo de la electrónica son los ya tan conocidos
microcontroladores. Estas diminutas computadoras son utilizadas de forma
masiva en infinidad de circuitos electrónicos, debido a que permiten menor
consumo de energía, mayor precisión y una alta velocidad de respuesta.
Una de las muchas cualidades que posee el microcontrolador es la
capacidad para manipular diodos LED’s. Esta tecnología de LED’s se sigue
desarrollando en forma vertiginosa en los últimos años, convirtiéndose en la
tecnología predilecta en la aplicación de pizarras electrónicas, para visualizar
mensajes de tipo publicitarios o informativos y sus aplicaciones son diversas.
Es por eso que nuestro objetivo es diseñar e implementar una matriz de
LED’s, para desplegar mensajes, pero a diferencia de las pizarras
convencionales, pretendemos accesar a ésta a través de Ethernet, es decir, la
pizarra va a contar con una dirección IP fija y cualquier computadora que este
en red con ella, va a poder accesarla.
3
Antecedentes de la Investigación
En la actualidad las matrices de LED’s permiten representar letras,
números, signos de puntuación y caracteres especiales con un grado de
legibilidad excelente. Esta tecnología no es nueva, ya que en los años 40’s se
podían ver mostrando leyendas publicitarias. En esos tiempos eran fabricados
con lámparas de incandescencia, no eran programables, es decir, los mensajes
eran estáticos, por el hecho de que en esa época la tecnología no estaba tan
avanzada y no se conocían los pequeños dispositivos emisores de luz. Estos
visualizadores nacen a partir de la aparición de calculadoras, cajas registradoras
e instrumentos de medida electrónicos en los que era necesario emplearlos. Con
la llegada de los LED’s en la década de los 60’s y posteriormente la invención de
los microcontroladores en los 70’s formaron la pareja ideal para el desarrollo de
pizarras electrónicas. Actualmente se fabrican con LED’s y pantallas LCD.
En la actualidad hay un gran número de fabricantes de estas pizarras
inteligentes. La programación del cartel se realiza desde una PC y en algunos
modelos por medio de teclados compatibles con PC/AT. Esta programación es
posible con la PC a través de su interfaz RS-232 a una distancia no mayor de 20
metros entre la PC y el dispositivo. Pero eso no representa problema alguno. El
reto está en la forma de programar o enviarle mensajes a la pizarra electrónica,
que sea lo suficientemente versátil, confiable y entendible para que cualquier
persona tenga la facilidad de operarla desde cualquier sitio que este en red con
la pizarra, todo esto con la finalidad de mostrar información en tiempo real.
4
Fundamentos teóricos
Microcontrolador
Un microcontrolador es un circuito integrado o chip que incluye en su interior las
tres unidades funcionales de una computadora: CPU, Memoria y Unidades de
E/S, es decir, se trata de un computador completo en un solo circuito integrado.
Es un circuito programable que contiene todos los datos necesarios para
controlar el funcionamiento de una tarea determinada, como el control de una
lavadora, un sistema de alarma, un teclado de ordenador, una impresora, etc.
Son diseñados para disminuir notablemente el tamaño y número de
componentes y, en consecuencia, el costo económico y el consumo de energía
de un sistema en particular. Por eso el tamaño de la CPU, la cantidad de
memoria y los periféricos incluidos dependerán de la aplicación. [1]
Ethernet
Ethernet es el nombre de una tecnología de redes de computadoras de área
local (LAN’s) basada en tramas de datos. El protocolo Ethernet proporciona una
interfaz unificada al medio de red que permite a un sistema operativo transmitir y
recibir varios protocolos del nivel de red de forma simultánea. El protocolo
consta de tres componentes esenciales:
• Una serie de directivas del nivel físico que especifican los tipos de cable,
limitaciones de cableado y métodos de señalización para las redes
Ethernet.
5
• Un formato de trama que define el orden y las funciones de los bits
transmitidos en un paquete Ethernet.
• La propiedad más categórica de una red Ethernet es su mecanismo de
control de acceso al medio, denominado Acceso múltiple con detección
de portadora y detección de colisiones (CSMA/CD, Carrier Sense Multiple
Acces with Collision Detection). Al igual que cualquier método de MAC,
CSMA/CD permite a las computadoras de la red compartir un único
medio en banda base sin pérdida de datos. En una red Ethernet no
existen prioridades, en lo que se refiere al acceso al medio; el protocolo
está diseñado de forma que todos los nodos disponen de los mismos
derechos de acceso al medio de red. [2]
Matriz de LED’s
Una matriz es la cantidad de puntos luminosos que componen el cartel. Se la
expresa en cantidad de filas por cantidad de columnas. De la matriz dependen la
visibilidad del cartel, la calidad de su tipografía y la cantidad de caracteres
visibles. [3]
HTML
Significa lenguaje de marcado de hipertexto y es un conjunto relativamente
pequeño de símbolos, que determinan el aspecto y la sensación de una
página web. HTML permite que un solo documento contenga texto,
Imágenes en color, sonidos y películas. [4]
6
Diagrama a bloques del Proyecto
Justificación
La finalidad de este proyecto es enviar mensajes desde una computadora para
ser visualizados en una pizarra electrónica, a diferencia de las pizarras
comerciales, este proyecto consistirá en accesarlo a través de una red Ethernet,
es decir la pizarra va a contar con una dirección ip fija y cualquier computadora
que este en la red va a poder tener acceso para mandar la información a
desplegar.
Tiene la ventaja de ser aplicado en varios sectores, como puede ser en la
industria maquiladora para indicar la producción, en un banco para ver el tipo de
cambio, en una estación de gasolina para ver el precio del combustible en ese
instante, entre muchas otras aplicaciones.
7
Objetivo General
Diseñar y construir un sistema de matriz de LED’s (pizarra electrónica)
basada en microcontroladores y controlada por medio de red Ethernet.
Metodología
Etapa 1: Investigación y diseño
1. Objetivo específico: Investigar las características de diversos
microcontroladores para seleccionar el más adecuado.
1.1. Meta: Para la primera semana de agosto, investigar al menos 5
fuentes de información sobre microcontroladores.
1.1.1 Actividad: Consultar las distintas fuentes de información.
Requerimientos: Bibliotecas UACJ, acceso a Internet, asesoria
académica.
2. Objetivo específico: Investigar sobre la construcción de matriz de LED’s y
definir el tamaño que tendrá.
2.1. Meta: Para la segunda semana de agosto, investigar las diversas
formas de construcción de matriz de LED’s.
2.1.1 Actividad: Consultar las distintas fuentes de información.
Requerimientos: Bibliotecas UACJ, acceso a Internet.
3. Objetivo específico: Investigar sobre la elaboración de páginas en HTML.
3.1. Meta: Para la tercera semana de agosto, investigar acerca de
programación de páginas en HTML.
. 3.1.1 Actividad: Consultar las distintas fuentes de información.
8
Requerimientos: Bibliotecas, acceso a Internet, asesoría
académica.
4. Objetivo específico: Comprar material que se utilizara en el proyecto.
4.1. Meta: Para la cuarta semana de agosto, contar con todos los
componentes.
. 4.1.1 Actividad: Consultar las distintas tiendas del ramo electrónico
y comparar precios.
Requerimientos: Dinero, visitas a tiendas, directorio telefónico,
teléfono, Internet.
5. Objetivo específico: Diseñar, programar y simular circuito de la matriz de
LED’s.
5.1. Meta: Para la primera semana de septiembre, tener listo el circuito
simulado y funcionando.
5.1.1 Actividad: Simular en el software, asesoria académica.
Requerimientos: computadora, acceso a Internet.
Etapa 2: Construcción
6. Objetivo específico: Realizar la construcción del prototipo.
6.1. Meta: Para la tercera semana de septiembre, terminar la construcción
de la tablilla y montaje de los componentes.
6.1.1 Actividad: Elaborar el circuito impreso en tablilla y soldar
componentes.
Requerimientos: Laboratorio, computadora, componentes.
9
7. Objetivo específico: Elaborar interfaces para comunicación de los diferentes
dispositivos.
7.1. Meta: Para la primera semana de octubre, tener listas las interfaces
del sistema embebido, puerto serie y matriz de LED’s.
7.1.1 Actividad: Implementar las interfaces de los diferentes
dispositivos.
Requerimientos: Laboratorio, componentes, asesoría académica.
8. Objetivo específico: Programar página que dará acceso a la red.
8.1. Meta: Para la segunda semana de octubre, tener programada la
pagina.
8.1.1 Actividad: Programar.
Requerimientos: computadora, software.
Etapa 3: Pruebas
9. Objetivo específico: Realizar pruebas Independientes.
9.1. Meta: Para la tercera semana de octubre, realizar pruebas a cada
uno de los elementos del proyecto.
9.1.1 Actividad: Asegurar el funcionamiento correcto de cada
elemento, medir voltajes y corregir errores si se presentan.
Requerimientos: Laboratorio, multímetro, osciloscopio, asesoria
académica.
10. Objetivo especifico: Realizar pruebas al proyecto terminado.
10.1. Meta: Para la cuarta semana de octubre, realizar pruebas al
proyecto terminado.
10
10.1.1 Actividad: Realizar pruebas y corregir errores que se
presenten.
Requerimientos: Laboratorio de redes, computadora, asesoria
académica.
11. Objetivo especifico: Proyecto terminado.
11.1 Meta: Para la primera semana de noviembre tener el proyecto
funcional al cien porciento.
12. Objetivo especifico: Elaborar documento del proyecto.
12.1 Meta: Para la segunda semana de noviembre tener el proyecto
documentado.
12.1.1 Actividad: Redactar el documento.
Requerimientos: Computadora.
11
Calendarización
Agosto Septiembre Octubre Noviembre
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Diseño
1.1.1
2.1.1
3.1.1
4.1.1
5.1.1
Construcción
6.1.1
7.1.1
8.1.1
Pruebas
9.1.1
10.1.1
11.1
12.1.1
12
13
Referencias
[1] Palacios Enrique, Remiro Fernando, López Lucas J., Microcontrolador
PIC16F84, Alfaomega, 2004.
[2] Zacker Craig, Redes, McGraw-Hill, 2002.
[3] http://www.indicart.com.ar/letreros-electronicos.htm , Abril 2009.
[4] Mcfedries Paul, Creando una pagina Web con HTML, Prentice Hall, 2000.
CARTEL ELECTRONICO PARA LINEAS DE PRODUCCION
CONTROLADO VIA ETHERNET
Por
Héctor Leonel López Santiago
Víctor Manuel Corona Hernández
Presentado al comité revisor del Instituto de Ingeniería y Tecnología
Para obtener el título de
INGENIERO EN SISTEMAS DIGITALES Y COMUNICACIONES
UNIVERSIDAD AUTÓNOMA DE CIUDAD JUÁREZ
Mayo del 2010
UNIVERSIDAD AUTÓNOMA DE CIUDAD JUÁREZ Instituto de tngeniería y Tecnología
EVALUACiÓN DE EXAMEN Fecha: 26 de Mayo del 2010 PROFESIONAL INTRACURRICULAR Horario: 19:00 - 21 :00 HRS. NIVEL: LICENCIATURA
I TEMA: "Pizarra electrónica de 5 dígitos controlada por microcontroladores y Ethernet" I
La evaluación del examen profesional intracurricular consta de 4 partes: (Desarrollado en 1 hora)
1°.- Exposición por parte de los alumnos (máximo 20 minutos). 2°._ Réplica por parte del jurado. 3°._ Comentarios y/o recomendaciones. 4°._ Entrega de resultados.
Nombre del alumno: Héctor Leonel López Santiago
Calificación Maestro de la materia (30%)
Calificación Director de Trabajo (40%)
Calificación del Jurado (30%)
TOTAL
Se recomienda que el documento se deposite para consulta en la BIBLIOTECA SiD NoD
Director de Trabajo Jurado Coordinador de la Materia "Proyecto de Titulación"
FIRMADO EN ORIGINAL
Fecha: 26 de Mayo del 2010 Horario: 19:00 - 21 :00 HRS.
[ TEMA: "Pizarra electrónica de 5 dígitos controlada por microcontroladores y Ethernet" I
La evaluación del examen profesional intracurricular consta de 4 partes: (Desarrollado en 1 hora)
1°._ Exposición por parte de los alumnos (máximo 20 minutos). 2°._ Réplica por parte del jurado. 3°.- Comentarios y/o recomendaciones. 4°._ Entrega de resultados.
Nombre del alumno: Víctor Manuel Corona Hernández
2.5Calificación Maestro de la materia (30%)
Calificación Director de Trabajo (40%)
Calificación del Jurado (30%)
95'TOTAL
Se recomienda que el documento se deposite para consulta en la BIBLIOTECA SiD NolD
Director de Trabajo Jurado Coordinador de la Materia "Prcwecto e Titulación"
FIRMADO EN ORIGINAL
ii
DECLARACION DE ORIGINALIDAD
Declaramos que el material contenido en este documento es original y no ha sido
copiado de ninguna otra fuente, ni ha sido usado pata obtener otro titulo o
reconocimiento en otra institución de educación superior.
Héctor Leonel López Santiago Víctor Manuel Corona Hernández
iii
LISTA DE TABLAS
Tabla 2.1 Características de diodos LED’s ........................................................... 4
Tabla 2.2 Tamaño de memoria flash y numero de pines .................................... 12
Tabla 2.3 Características de microcontroladores PIC ......................................... 12
Tabla 3.1 Microcontroladores de Intel ................................................................ 19
Tabla 3.2 Características de memoria de programa ............................................ 20
Tabla 3.3 Modo del funcionamiento del puerto serie: ........................................ 25
Tabla 4.1 Características técnicas del cartel electrónico ..................................... 44
Tabla 4.2 Costo de inversión ............................................................................... 44
iv
LISTA DE FIGURAS
Fig. 2.1 Circuito básico ......................................................................................... 3
Fig. 2.2 Matriz de LED’s ...................................................................................... 5
Fig. 2.3 Circuito básico de un transistor NPN ...................................................... 7
Fig. 2.4 Circuito PNP ............................................................................................ 8
Fig. 2.5 Transferencia en serie del registro A al registro B .................................. 9
Fig. 2.6 Registro de desplazamiento de cuatro bits ............................................... 9
Fig. 3.1 Diagrama a bloques del cartel electrónico ............................................. 16
Fig. 3.2 Grupo de 4 Matriz de LED’s ................................................................. 18
Fig. 3.3 Diagrama a bloques de los microcontroladores basados en el 8051...... 20
Fig. 3.4 Descripción de terminales ...................................................................... 22
Fig. 3.5 Diagrama de flujo .................................................................................. 27
Fig. 3.6 Circuito del cartel electrónico ................................................................ 28
Fig. 3.7 Tablilla del microcontrolador ................................................................ 29
Fig. 3.8 Diagrama del circuito controlador de filas ............................................ 29
Fig. 3.9 Circuito controlador de filas .................................................................. 31
Fig. 3.10 Diagrama lógico del 74LS164 ............................................................... 31
Fig. 3.11 Diagrama del circuito controlador de columnas .................................... 32
Fig. 3.12 Circuito controlador de columnas .......................................................... 33
Fig. 3.13 Modulo de red SitePlayer en su versión completa ................................. 34
Fig. 3.14 Diagrama de SitePlayer versión de aplicación básica ........................... 34
Fig. 3.15 Pagina WEB de interfaz de usuario ....................................................... 35
Fig. 3.16 SerialPort Tester para obtener la dirección IP ....................................... 36
Fig. 3.17 Ejecución del comando ping .................................................................. 37
Fig. 3.18 SiteLinker .............................................................................................. 37
Fig. 4.1 Interfaz RS-232 ...................................................................................... 38
Fig. 4.2 Conexión entre el microcontrolador y la computadora ......................... 39
Fig. 4.3 Caracteres ilegibles ................................................................................ 40
Fig. 4.4 Caracteres alfanuméricos ....................................................................... 41
Fig. 4.5 Comunicación funcional entre el microcontrolador y la computadora.. 42
Fig. 4.6 Resultado final ....................................................................................... 43
v
Fig. B.1 Tablilla del Microcontrolador ................................................................ 62
Fig. B.2 Tablilla del controlador de filas ............................................................. 62
Fig. B.3 Tablilla del controlador de columnas ..................................................... 63
Fig. B.4 Tablilla de matriz de LED’s vista superior ............................................ 63
Fig. B.5 Tablilla de matriz de LED’s vista inferior ............................................. 64
Fig. B.6 Tablilla para comunicación por el puerto serie ...................................... 64
vi
CONTENIDO
DECLARACION DE ORIGINALIDAD ........................................................... II
LISTA DE TABLAS ........................................................................................... III
LISTA DE FIGURAS ......................................................................................... IV
CONTENIDO ...................................................................................................... VI
CAPITULO 1: INTRODUCCION ....................................................................... 1
CAPITULO 2: DISPOSITIVOS ELECTRÓNICOS .......................................... 3
2.1 Diodo emisor de luz ........................................................................................... 3
2.2 Matriz de LED’s ................................................................................................. 4
2.3 Dispositivos de conmutación ............................................................................. 6
2.4 Registros de desplazamiento .............................................................................. 8
2.5 Microcontrolador.............................................................................................. 10
2.6 HTML .............................................................................................................. 13
2.7 SitePlayer ......................................................................................................... 14
CAPITULO 3: CARTEL ELECTRONICO ...................................................... 16
3.1 El cartel en la industria maquiladora ................................................................ 16
3.2 Herramientas de diseño .................................................................................... 16
3.3 Descripción del Proyecto. .............................................................................. 17
3.4 Circuito Microcontrolador ............................................................................... 18
vii
3.5 Secuencia de programación.............................................................................. 26
3.6 Circuito controlador de filas ............................................................................ 29
3.7 Circuito controlador de columnas .................................................................... 31
3.8 Interfaz de usuario ............................................................................................ 33
CAPITULO 4: RESULTADOS .......................................................................... 38
CAPITULO 5: CONCLUSIONES Y RECOMENDACIONES ...................... 45
REFERENCIAS ................................................................................................... 47
APÉNDICE A PROGRAMAS ............................................................................ 48
APENDICE B CIRCUITOS IMPRESOS .......................................................... 62
1
CAPITULO 1: INTRODUCCION
Los carteles electrónicos con matriz de LED’s se han convertido actualmente en
una de las principales herramientas como medio de transmisión de información
para la gente en general, pues además de ser llamativo es una opción confiable y
económica. Este tipo de tecnología, hoy día está teniendo un gran auge, pues es
común que en la vida cotidiana se encuentren en los supermercados mostrando la
oferta del día, tiendas departamentales anunciando algún descuento, bancos
publicando el cambio de moneda, escuelas como medio de información para los
alumnos y en la industria para mostrar la cantidad de producción.
Actualmente la industria maquiladora tiene grandes retos en cuanto a
mejorar la eficiencia de los conteos a tiempo de su producción actual y llevar a
cabo un inventario de las piezas elaboradas en las líneas de producción; pues este
último es un factor determinante que podría medir la capacidad de la planta
productiva dentro del rol que forma parte como proveedor de productos y/o
servicios.
Como se menciono anteriormente, en el sector industrial se ha visto que es
de suma importancia llevar un conteo de los productos que se fabrican en las
líneas de producción; por lo general la mayoría de las empresas no cuentan con
un sistema de monitoreo de información instantáneo, que muestre a toda la
plantilla laboral los resultados de sus actividades elaboradas en sus estaciones de
trabajo. En la mayoría de los casos si un gerente baja al área de producción y
quiere saber la cantidad de piezas producidas hasta ese momento, tendría que ir y
preguntar directamente al encargado sobre las piezas terminadas en cada área de
trabajo. Es por esa razón que la implementación de un cartel electrónico seria un
medio de información eficaz y económico.
El cartel electrónico es un sistema que está desarrollado para contribuir
como informante para el conteo de las piezas fabricadas en una empresa
maquiladora y de esta manera establecer o cambiar las estrategias necesarias que
se requieran para cumplir con las metas establecidas por sus clientes.
2
El objetivo de este proyecto es desarrollar un visualizador para desplegar
mensajes, pero a diferencia de los carteles convencionales, el acceso será vía
Ethernet, con la finalidad de controlar en forma remota y segura, una cadena de
caracteres alfanuméricos a mostrar en tiempo real.
La información a desplegar en el cartel electrónico es a través de una
computadora conectada a una red Ethernet la cual funciona como interfaz de
usuario mediante una página Web programada en HTML para enviar los mensajes
a visualizar en el cartel electrónico. El puente de comunicación entre la red
Ethernet y el microcontrolador está a cargo de un modulo de red (modulo
incrustado) por medio del puerto serie y este a su vez es el que se encargara de
conducir la información hacia el microcontrolador (ATMEL AT89S52), siendo
este ultimo el responsable de procesar la información y representarla a través de
los diodos LED’s.
Este dispositivo electrónico es una buena opción ya que las dimensiones
de los LED’s son mas grandes con respecto a otros, obteniendo así, mas altura en
cada carácter mostrado y por lo tanto una mayor distancia de visualización, el ser
monocromático lo hace económico sin aminorar su capacidad de utilidad, al
contar con una interfaz Ethernet, se puede acceder desde una intranet o mejor aun
desde Internet con sus debidas precauciones. Cabe mencionar que la aplicación de
este cartel electrónico es exclusivo para uso interior.
Por sus características de diseño, se puede expandir la memoria con el fin
de almacenar más información, así como aumentar el número de caracteres, es
decir, mostrar más de 8 caracteres (capacidad visual de este proyecto).
3
CAPITULO 2: DISPOSITIVOS ELECTRÓNICOS
2.1 Diodo emisor de luz
Un diodo LED es un dispositivo electrónico que funciona como un diodo común,
pero a diferencia de los demás al circular entre su ánodo y su cátodo una corriente
eléctrica, éste disipa la energía en forma de luz. En la figura 2.1 se muestra el
circuito básico del diodo emisor de luz, que consta de una fuente de alimentación
y una resistencia limitadora de corriente, esta resistencia evita el exceso del flujo
de electrones que circula por el diodo LED. Por lo tanto se puede calcular la
corriente total mediante la Ley de Ohm quedando de la siguiente manera:
f
dfT R
VVI
−=
Con esta ecuación se pueden definir los valores necesarios para obtener
una luminosidad constante.
Fig. 2.1 Circuito básico
Existen diversos tipos de diodos LED’s, variando entre ellos en tamaño,
color, luminosidad y longitud de onda. En la tabla 2.1 se muestran las diversas
características de los diodos LED’s.
4
Tabla 2.1 Características de diodos LED’s
Color Diámetro Corriente Voltaje Luminosidad (milicandelas)
Rojo 3 y 5 mm 10 mA 2 – 2.5 V 1.25 mcd
Verde, Amarillo, Naranja
3 y 5 mm 10 mA 2 – 2.5 V 8 mcd
Rojo alta luminosidad 5 mm 10 mA 2 –2.5 V 80 mcd
Verde alta luminosidad 5 mm 10 mA 2 – 2.5 V 50 mcd
Rojo ultra brillante 5 mm 20 mA 3.5 – 4 V 1600 mcd
Verde ultra brillante 5 mm 20 mA 3.5 – 4 V 300 mcd
Rojo 10 mm 20 mA 2 – 2.5 V 110 mcd
Rojo ultra brillante 10 mm 20 mA 3.5 – 4 V 3700 mcd
Azul ultra brillante 10 mm 20 mA 3.5 – 4 V 3700 mcd
De acuerdo a las características de estos dispositivos electrónicos es
conveniente para este proyecto utilizar LED’s rojos de 10 mm, por las siguientes
razones:
• Color: El color rojo es ideal por su bajo costo y se encuentra en un nivel
optimo de visualización, por ser para uso interior no es necesario emplear
LED’s de alta luminosidad, ya que un brillo excesivo causaría una
incómoda lectura.
• Diámetro: Los mensajes mostrados en el visualizador deben de ser
llamativos y visibles a una distancia considerable.
2.2 Matriz de LED’s
Una matriz de LED’s es un arreglo de LED’s formados por m filas y n columnas
y es básicamente un conjunto de pixeles. En este caso cada píxel ocupa la
5
intersección de una fila y una columna representado por un diodo emisor de luz.
Las filas y columnas de esta matriz se pueden conectar a los terminales de uno o
más puertos paralelos como los de un microcontrolador.
Existen 2 modos diferentes de conectar las matrices de LED’s:
a) Matrices con filas en cátodo común y columnas en ánodo común.
b) Matrices con filas en ánodo común y columnas en cátodo común.
La fig. 2.2 muestra una matriz de LED’s de 7 filas y 6 columnas
conectados en el modo b). Para encender un LED en el arreglo, se debe enviar un
‘1’ lógico (señal positiva) en las filas, y simultáneamente un ‘0’ lógico (señal
negativa) en las columnas, polarizando así el LED en forma directa, consiguiendo
como resultado un espectro lumínico.
Fig. 2.2 Matriz de LED’s
El arreglo de LED’s se puede construir de varios colores y tamaños
dependiendo de la aplicación y del presupuesto disponible para la fabricación. En
este conjunto de LED’s se puede representar un solo carácter que puede ser una
6
letra o un numero, por lo tanto para representar una cadena de caracteres
alfanumérica es necesario tener varias matrices seguidas unas de otras, la cual
puede ser de una longitud definida por el diseñador.
2.3 Dispositivos de conmutación
Los dispositivos semiconductores de potencia pueden trabajar como elementos de
conmutación, aplicando una señal de control a la terminal de compuerta de un
tiristor o a la base de un transistor, pueden controlar el encendido y apagado de
otro dispositivo electrónico, es decir, como si fuera un interruptor.
A continuación se mencionan algunos de los dispositivos electrónicos
utilizados como elementos de conmutación:
Diodo: Este es el tipo de interruptor más simple, pero tiene un
inconveniente, no es controlable, ya que si se polariza de forma directa actúa
como un interruptor cerrado, pero si se polariza en su modo inverso se comporta
como un interruptor abierto, por lo cual se descarta por completo para la
aplicación del proyecto.
Transistor: Tienen características controladas de desactivación y
activación, llamados en electrónica como corte y saturación respectivamente. Los
circuitos de excitación de los transistores se diseñan para que se encuentre
totalmente saturado o totalmente en corte, esto difiere a otras aplicaciones del
mismo transistor, como lo es en su modo de amplificación que trabaja en la región
lineal o activa.
Cuando se emplea el transistor como conmutador hay dos formas de
establecer el punto de trabajo de un transistor: polarización de base y polarización
de emisor, la primera establece un valor de corriente constante en la base,
mientras que la segunda mantiene un valor constante de corriente en el emisor. La
corriente de base es más útil en circuitos de cambio, de estado bajo a estado alto,
siendo esta la que se utilizara para alimentar la corriente demandada por los
diodos LED.
7
Dentro de los mismos transistores cabe mencionar que existen dos tipos
diferentes de estos, los cuales son transistores NPN y PNP.
En un transistor NPN el colector y el emisor son de un semiconductor tipo
N y la base es de un semiconductor tipo P. En la figura 2.3 se muestra el símbolo
y el circuito básico de un transistor NPN. Aunque este tipo de componente
electrónico es muy comercial y de alta velocidad, no es el más adecuado para
destinarlo a este proyecto, ya que como se ilustra en la figura 2.3 el emisor está
conectado a tierra, y de acuerdo al microcontrolador implementado necesita de
una lógica negativa (por cuestiones deficientes de corriente) para el control de los
diodos LED, por tal motivo no es la opción que más se ajusta para este caso en
particular.
Q1NPN
+ RB -
+ RC -
VBB
VCC
Fig. 2.3 Circuito básico de un transistor NPN
En la figura 2.4 se muestran las conexiones del transistor PNP. Estos tipos
de transistores tienen las corrientes y los voltajes invertidos con respecto al
transistor NPN y siguen el mismo patrón de análisis, pero la razón principal, como
se menciono anteriormente, es debido a que el microcontrolador utiliza lógica
negativa en su programación.
8
PNP
R1
R2
R3
R4
Fig. 2.4 Circuito PNP
Rectificador Controlado de Silicio (SCR): Este tipo de dispositivo esta
dentro de los elementos de conmutación pero presenta un detalle importante y
suficiente para excluirlo del prototipo, solo se puede activar, esto quiere decir, que
no se puede apagar y la única forma de hacerlo es quitar la fuente de alimentación,
lo cual no es nada conveniente.
Fotodiodo y fototransistor, aunque estos elementos son dispositivos de
conmutación, fueron descartados en un principio, ya que estos soportan cantidades
de corriente muy pequeñas.
Existen otros tipos de conmutadores como lo son los TRIAC y los DIAC,
pero estos se utilizan en aplicaciones que requieren una alta cantidad de voltaje
además de emplearlos para el manejo de corriente alterna.
2.4 Registros de desplazamiento
Los sistemas digitales son dispositivos elementales en la mayor parte de los
circuitos electrónicos, pues su amplia variedad de aplicaciones hace que sean
necesarios como dispositivos de enlace para controlar sistemas donde se requiera
el procesamiento de datos.
9
En su forma más básica un flip flop es un dispositivo electrónico capaz de
almacenar un bit de información, por lo tanto, un registro de desplazamiento es
aquel que está formado por un grupo de flip flop’s capaces de almacenar bits de
información dependiendo de la cantidad de flip flop’s que contiene en su interior.
Además de poder desplazar esa información la cual dependiendo de las
necesidades del sistema puede transferirlas hacia la izquierda o a la derecha. En la
figura 2.5 se puede ver una transferencia en serie entre registros.
Fig. 2.5 Transferencia en serie del registro A al registro B
Los registros de desplazamiento son componentes indispensables, pues se
utilizan como interfaz de sistemas digitales cuando se encuentran situados lejos
uno del otro. Usualmente es común encontrarlos en aplicaciones donde se requiera
transmitir o recibir información de un punto a otro muy distante, pues resulta muy
económico poder enviar o recibir información a través de una línea de
información que de un gran número de ellas.
En la figura 2.6 se puede ver un registro de desplazamiento de cuatro bits
de entrada serie con salida serie.
Fig. 2.6 Registro de desplazamiento de cuatro bits
10
Los diversos tipos de registro de desplazamiento se clasifican de acuerdo a
la forma en que los datos pueden ingresar a éste para su almacenamiento, y a la
forma en que salen del mismo. Las diferentes clasificaciones se enlistan a
continuación.
1. Entrada en paralelo-salida en paralelo
2. Entrada serial-salida serial
3. Entrada en paralelo-salida serial
4. Entrada serial-salida en paralelo.
Cada uno de estos tipos de registro de desplazamiento y algunas
variaciones se encuentran disponibles en forma de circuito integrado, de modo
que un diseñador de circuitos lógicos por lo general puede encontrar exactamente
lo que se requiere para una aplicación determinada.
2.5 Microcontrolador
Actualmente las necesidades requeridas por el ser humano en su vida cotidiana
han llevado a cabo una gran demanda en cuanto a avances tecnológicos se
refiere. Dichos progresos se han desarrollado gracias a la industria
microelectrónica, causando gran impacto debido a la reducción en material,
tamaño y costo. Las diferentes aplicaciones y el incremento competitivo de la
industria requieren día a día de diseñar sistemas con mejores características, de
menor tamaño, bajos requerimientos de energía, mejor realización y a un bajo
costo. Un dispositivo electrónico que ya está muy presente, son los ya tan
conocidos microcontroladores. Estas diminutas computadoras son utilizadas de
forma masiva en infinidad de circuitos electrónicos, debido a que permiten menor
consumo de energía, mayor precisión y una alta velocidad de respuesta.
Un microcontrolador tiene los recursos fundamentales disponibles en un
microcomputador, es decir, la unidad central de procesamiento (CPU), la memoria
y los recursos de entrada y salida, en un único circuito integrado. Dependiendo de
11
cada aplicación en particular el microcontrolador será programado para ejecutar y
procesar la información contenida en su interior para la cual fue diseñado. Así
como además, interactúa con el mundo exterior a través de las líneas de entrada y
salida de las cual dispone. El microcontrolador forma parte de la aplicación, es
decir, es un microcontrolador incrustado en la aplicación específica para la cual
previamente fue diseñado por el usuario.
Un microcontrolador consta de los siguientes elementos básicos: CPU
(Unidad Central de Proceso), memoria RAM, memoria de programa,
temporizadores y contadores, puertos de comunicación en serie y paralelo, líneas
individuales de entrada/salida y controlador de interrupciones
Elegir un microcontrolador para una aplicación específica requiere conocer
y evaluar cuál de ellos es el más idóneo para el proyecto en específico a
desarrollar. Particularmente debe contar con las siguientes características:
• Velocidad de ejecución suficiente para la aplicación.
• Disponer de herramientas de desarrollo adecuadas y económicas.
• Disponer de información suficiente y de calidad.
• Garantía de disponibilidad (fabricado por más de una compañía).
Las diferencias entre las familias de microcontroladores se pueden
establecer por el número de elementos que la integran y por las prestaciones que
estos ofrecen. No obstante, el criterio de clasificación básico, al igual que los
microprocesadores, es el tamaño del bus de datos: 4, 8 o 16 bits. Actualmente los
microcontroladores mas empleados son los de 8 bits, como por ejemplo, los
conocidos 80C51 (Intel), 68HC11 (Motorola) y PIC16C74 (Microchip).
Las familias de microcontroladores más conocidas y difundidas en el
mercado son:
MCS-51 de Intel es la familia más popular y difundida del mercado. Son
muy versátiles y fáciles de programar y ofrecen una gran cantidad de herramientas
hardware y software para el desarrollo de aplicaciones. También muchos
12
fabricantes de circuitos ofrecen dispositivos basados en el, como es el caso de las
firmas Philips, Siemens, Atmel u otras.
68HC11 de Motorola es la segunda familia en popularidad y uso. Es algo
más complejo de programar que el MCS-51 de Atmel. Estos microcontroladores
los ofrecen menos fabricantes, por lo que su disponibilidad no esta tan
garantizada. En la tabla 2.2 se muestran algunas de las características de
microcontroladores de la familia 08 de Freescale.
Tabla 2.2 Tamaño de memoria flash y numero de pines
Dispositivo Tamaño de memoria flash No pines
MC68HC908JL3 4096 bytes 28
MC68HC908JK3 4096 bytes 20
MC68HC908JK1 1536 bytes 20
Finalmente el PIC de Microchip es una familia claramente en expansión,
con gran cantidad de modelos de diferentes características y precios. Como
principales ventajas presentan su reducido tamaño, altas prestaciones y bajo
consumo. En la tabla 2.3 se muestran algunas características de algunos
microcontroladores PIC.
Tabla 2.3 Características de microcontroladores PIC
Dispositivo EEPROM
bytes
RAM
bytes
Pines I/O Max. Vel.
MHz
PIC16F84A 64 68 13 20
PIC16F877 256 368 33 20
PIC18F252 256 1536 23 40
13
Para concluir cabe mencionar que los microcontroladores ofrecen
variedades ilimitadas para las aplicaciones a desarrollar y el elegir cuál de todos
ellos utilizar en determinado proyecto, depende de cuánto conocimiento tiene el
diseñador, así como de las necesidades requeridas para el proyecto en particular.
Es por eso, que se empleara el microcontrolador AT89S52 de Atmel, ya
que se tienen conocimientos del funcionamiento así como de programación,
aparte de contar con algunos ejemplares de este tipo de microcontroladores.
2.6 HTML
Actualmente el mundo de las computadoras incluye grandes beneficios para el ser
humano en su vida diaria como son: redacción de documentos, elaboración de
complejos cálculos matemáticos, simulación de prototipos en desarrollo y hasta
como mando inteligente de transmisión y recepción de procesos productivos en
una fábrica. Es necesaria esta coexistencia de parte de la tecnología con las
computadoras y los lenguajes de programación que existen, pues sin estas no
existiría. El avance gigantesco del mundo de las redes de computadoras es un
factor fundamental en los avances tecnológicos realizados por el ser humano pues
esto hace posible la comunicación en todas partes acerca de lo que sucede y
acontece en el mundo entero.
El logro sin duda se debe a las redes de computadoras como el Internet
pero en su inicio más primordial para poder tener un portal en una red es necesaria
la creación de una página Web, este último es un punto muy importante ya que el
Internet va de la mano de la creación de páginas Web
El lenguaje básico de una página Web es el HTML y es el lenguaje para
estructurar documentos para posteriormente definirla como se verá en el portal de
Internet. HTML es el lenguaje de marcado de hipertexto, esto se refiere a que las
páginas no son elementos aislados, sino que están unidas a otras mediante enlaces
que posteriormente le enviaran a otra página o la selección que se haya elegido.
14
El lenguaje de marcado de hipertexto (HTML) es el lenguaje utilizado para
la creación de documentos electrónicos de páginas Web y es un estándar de
programación. Se basa principalmente en etiquetas, que son las instrucciones con
las cuales se dará formato a las diferentes partes de una página Web. Mediante el
uso de las etiquetas en HTML se puede subrayar textos, ponerlos en negrita,
establecer encabezados, estructurar el texto en guiones, en párrafos, añadir
imágenes y vínculos a otras páginas, etc. El lenguaje HTML servirá como
interfaz de usuario para interactuar a través de una página Web con el mundo
exterior en un modulo incrustado como control de mando para una tarea en
particular.
2.7 SitePlayer
Por lo general los carteles electrónicos comerciales son dispositivos que muestran
la información que es enviada desde la computadora a través de una interfaz serie,
lo que da como resultado una limitación en distancia, ya que este tipo de
comunicación (serie) no puede sobrepasar 20 metros de longitud entre ellos, de lo
contrario se puede presentar perdida de información, obteniendo como resultado
un mensaje ilegible. Para resolver el problema de la limitante de distancia entre
dispositivos, se concluyo en utilizar el acceso al cartel electrónico vía Ethernet, al
contar con ésta conectividad, se hace posible la transmisión de la información
desde la computadora al cartel electrónico con la implementación de un hub o
switch, consiguiendo una distancia mayor entre los elementos, con respecto a la
comunicación serie.
Con la utilización del SitePlayer se cumple la necesidad del servidor Web,
que por medio de una programación previa se le asigna una dirección IP, que será
la puerta de acceso hacia el cartel electrónico. Antes de describir las
características de este diminuto servidor, es importante mencionar ¿qué es un
servidor? y ¿qué es el SitePlayer?
15
Un servidor es una computadora que contiene las páginas Web de un sitio
de redes de computadoras en específico, dotado de un programa especial para
enviar dichas páginas a los exploradores Web que los soliciten.
El SitePlayer es un modulo incrustado que permite conectar un
microcontrolador a una red de computadoras por medio de un enlace serie que le
brinda una amplia gama de servicios disponibles en red y funciona como un mini
servidor.
Con una medida de 4 cm², el SitePlayer integra un servidor web, un
controlador Ethernet 10baseT, memoria flash para páginas web, procesador de
objetos gráficos y una interface para dispositivos con comunicación serie. El
SitePlayer se puede utilizar como acceso web, actualizar productos o para
reacondicionar productos antiguos.
16
CAPITULO 3: CARTEL ELECTRONICO
3.1 El cartel en la industria maquiladora
El cartel electrónico está pensado para integrarlo dentro de la industria
maquiladora, lugar que por ser un ambiente productivo y competitivo debe contar
con un sistema de red, en la cual se encuentren conectadas las computadoras y de
esta manera tener acceso en forma remota a la información desde cualquier área
de la nave industrial.
En este caso hay computadoras conectadas a la red y en cada una de ellas
existe una dirección IP única que la identifica de todas las demás. Siendo éste uno
de los principales requerimientos para el enlace del cartel electrónico. Como se
muestra en la figura 3.1 la computadora conectada a la red servirá como interfaz
de usuario; ya que es ésta a través de la cual se enviara la información a desplegar
en el cartel electrónico. Claramente se debe mencionar que el cartel necesita de
otros dispositivos que se encargaran de transferir la información de la
computadora hacia él, principalmente uno de ellos es el microcontrolador pues es
el que controlara el desplegado de los mensajes hacia la matriz de LED’s.
Fig. 3.1 Diagrama a bloques del cartel electrónico
3.2 Herramientas de diseño
El proyecto en su forma general es complejo por los diferentes dispositivos que se
requieren para su desarrollo, es por eso que es necesario el uso de diferentes
herramientas de programación y simulación para facilitar el proceso de pruebas. A
continuación se mencionan cada una de las herramientas utilizadas.
17
Proteus es un software de alto desempeño para el diseño, construcción,
simulación y depuración de circuitos electrónicos en general. Los entornos de
programación que forman parte de Proteus y que fueron utilizados para el
desarrollo del proyecto son:
ISIS, software utilizado especialmente para la elaboración de los
diagramas electrónicos, así como su simulación y prueba de los mismos.
ARES, software usado para la elaboración de placas de circuito impreso.
De manera específica fue el utilizado para desarrollar todas las placas de circuito
impreso que conforman el cartel electrónico.
En general Proteus está diseñado para leer los ficheros con el código
ensamblado para los microcontroladores de las familias PIC, AVR, 8051, HC11,
ARM/LPC200 y BASIC que para este caso en particular fue utilizado para
simular el microcontrolador AT89S52 de ATMEL.
Otro software utilizado fue el simulador 8051IDE que simplifica el
desarrollo de código, además de que los errores en programas del usuario pueden
ser encontrados y reparados fácilmente en modo de simulación eliminando el
tiempo de las descargas a los tableros de destino.
También se utilizo el modulo de red Site Player, debido a que funciona
como un servidor Web el cual contiene una página electrónica específica para este
propósito y entrega la información de manera instantánea proveniente de un
sistema de red, es decir, envía los datos de los mensajes a mostrarse en la pantalla,
en tiempo real.
3.3 Descripción del Proyecto.
El proyecto consiste en enviar la información a mostrar en el cartel electrónico a
través de una computadora, la cual funciona como interfaz de usuario mediante
una página Web programada en HTML. Obviamente se contara con una dirección
IP a la cual se podrá tener acceso por cualquier computadora siempre que se
18
encuentre conectado en red con el dispositivo. La comunicación entre la red y el
microcontrolador está a cargo del modulo incrustado por medio del puerto serie y
este a su vez envía la información hacia el microcontrolador (ATMEL AT89S52),
siendo este ultimo el responsable de hacer la multiplexación entre filas y
columnas.
Un cartel electrónico agrupa un conjunto de varios módulos de matriz de
LED’s, en el caso particular cada matriz es un carácter del cartel y está compuesto
de un grupo de 7 filas por 6 columnas y el cartel electrónico está formado por 8
matrices de LED’s, también se puede decir que son ocho caracteres ordenados de
tal manera que agrupados forman el cartel electrónico. En total el cartel
electrónico está formado por 7 filas y 48 columnas. Es en este en el cual se
visualizaran los caracteres desplegados desde la página Web.
Fig. 3.2 Grupo de 4 Matriz de LED’s
Para poder manipular más fácilmente todo la circuitería con la cual cuenta
el proyecto se realizo en 4 secciones: Circuito Microcontrolador, circuito
controlador de filas, circuito controlador de columnas e interfaz de usuario.
3.4 Circuito Microcontrolador
Es el circuito principal y es el encargado de controlar el encendido y apagado de
los LED’s en el cartel electrónico. El microcontrolador utilizado fue el AT89S52
el cual cuenta con diversas características favorables para este proyecto en
19
particular. Este microcontrolador fabricado por Atmel, tiene las mismas
características del 8051 pero en lugar de memoria ROM para programa contiene
una memoria Flash interna.
El microcontrolador 8051 está basado en los microprocesadores de 8 bits,
contiene internamente un CPU de 8 bits, 3 puertos de entrada y salida paralelos,
un puerto de control, el cual a su vez contiene; un puerto serie, dos entradas para
temporizador/contador de 16 bits, dos entradas para interrupciones externas, las
señales de RD y WR para la toma o almacenamiento de datos externos en RAM,
la señal de PSEN para la lectura de instrucciones almacenadas en EPROM
externa. En la tabla 3.1 se muestran algunas características de microntroladores de
Intel.
Tabla 3.1 Microcontroladores de Intel
Número de parte Memoria de Programa RAM Temporizadores
8051 4 KB ROM 128 Bytes 2
8031 0 KB 128 Bytes 2
8751 4 KB EPROM 128 Bytes 2
8052 8 KB ROM 128 Bytes 3
8752 8 KB EPROM 128 Bytes 3
Gracias a estas tres señales el microcontrolador 8051 puede direccionar 64
Kb de programa y 64 Kb de datos separadamente, es decir un total de 128 Kb.
Además cuenta con 128 bytes de memoria RAM interna. El microcontrolador
8051 puede generar la frecuencia de transmisión/recepción de datos por el puerto
serie de manera automática partiendo de la frecuencia del oscilador general, por
medio de la programación del temporizador uno. Dicha frecuencia de transmisión
puede ser cambiada en cualquier momento con solo modificar el valor
almacenado en el control o también se puede duplicar o dividir la frecuencia con
20
solo escribir sobre el bit 7 (SMOD) del registro de control (PCON). En la figura
3.3 se muestra el diagrama a bloques de los microcontroladores basados en el
8051.
Fig. 3.3 Diagrama a bloques de los microcontroladores basados en el
8051
Los microcontroladores 8051 fueron desarrollados y manufacturados por
Intel, otras compañías como Siemens, Atmel, Phillips, Advanced Micro Devices,
tienen licencia por parte de Intel para desarrollar y distribuir microcontroladores
basados en el 8051. En la tabla 3.2 se muestran características de memoria de
programa.
Tabla 3.2 Características de memoria de programa
Serie Memoria de programa
80 ROM
87 EPROM
89 Flash
Características del AT89S52:
1. Compatible con el 8051/8052.
2. 8 KB de memoria flash para programa.
21
3. Reloj de 0-33 MHz
4. RAM de 256 x 8.
5. 4 Puertos. 32 líneas de entrada-salida.
6. 3 Temporizadores.
7. 8 Fuentes de interrupción.
8. UART (Full Duplex).
9. Recuperación de interrupción en “Power Down Mode”
temporizador perro guardián.
El 8051 opera con reloj interno o externo. El cristal es un componente que
permite darle la frecuencia muy precisa al microcontrolador. La frecuencia de
cristal más utilizada en el 8051 es la de 11.0592 MHz. El 8051 opera con lo que
se conoce ciclo de instrucción. Un ciclo de instrucción simple es la cantidad
mínima de tiempo en que una instrucción puede ser ejecutada, varias instrucciones
se ejecutan en varios ciclos.
Un ciclo de instrucción en el 8051 son 12 ciclos de reloj del cristal. Si una
instrucción toma un ciclo para ejecutarse, entonces se va ejecutar en 12 ciclos de
reloj. Si se utiliza un oscilador un cristal de 11.0592 MHz por segundo y un ciclo
de instrucción son 12 ciclos de reloj, entonces se puede calcular el número de
instrucciones que el 8051 puede ejecutar por segundo:
11059200/12 = 921600
Esto significa que se pueden ejecutar 921,600 instrucciones de un ciclo por
segundo. Pero esto depende del tipo de instrucción que se esté utilizando
En la figura 3.4 se muestra la descripción de cada terminal de los
microcontroladores basados en el 8051, que para el proyecto se trabajara con el
AT89S52 el cual es totalmente compatible en las terminales.
22
Fig. 3.4 Descripción de terminales
De las 40 terminales contiene 32 dedicadas para el manejo de entradas y
salidas, los puertos que contienen resistencias a VCC son P1, P2 y P3. El P0 no
contiene resistencias a VCC internas. Los bits de cada puerto se pueden poner en
uno o cero mandando la respectiva señal por cada bit. Y pueden leer el
correspondiente estado de cada bit del puerto.
Puerto 0 (P0.0 a P0.7). Este puerto tiene dos funciones, está disponible
para acceder dispositivos externos y para acceder memoria externa. Si el circuito
requiere usar memoria RAM o ROM externa el 8051 automáticamente utiliza el
puerto 0.
Puerto 1 (P1.0 a P1.7). Es un puerto bidireccional de 8 bits. La etapa de
salida (equipada con una resistencia interna de pull-up a +5V) puede manejar
corriente equivalente a cuatro cargas TTL LS. El puerto 1 se utiliza para acceder
dispositivos externos y tiene dos líneas multiplexadas para el temporizador 2.
Puerto2 (P2.0 a P2.7). El puerto 2 al igual que el puerto 0 tiene dos
funciones que son para acceder dispositivos externos y memoria RAM o ROM
23
externa. Cuando se escriben 1’s sobre el puerto, las líneas pueden ser utilizadas
como entradas o salidas. Como entradas, las líneas que son externamente
colocadas en la posición baja proporcionaran una corriente hacia el exterior. El
puerto 2 es utilizado además para direccionar memoria externa. Este puerto, emite
el byte más alto de la dirección durante la búsqueda de datos en la memoria del
programa externo y durante el acceso a memorias de datos externos que usan
direccionamientos de 16 bits. Durante el acceso a una memoria de dato externa,
que usa direcciones de 8 bits, el puerto dos emite el contenido del registro del
correspondiente a este puerto, que se encuentra en el espacio de funciones
especiales.
Puerto 3 (P3.0 a P3.7 El puerto P3 posee características de salida y de
entrada similares a las de los puertos P1 y P2. Las funciones secundarias
atribuidas a las líneas de este puerto son:
P3.0 RXD entrada del interfaz serie;
P3.1 TXD salida del interfaz serie;
P3.2 INTO entrada para interrupción externa;
P3.3 INTI entrada para interrupción externa:
P3.4 TO entrada de conteo para el timer 0;
P3.5 T1 entrada de conteo para timer 1;
P3.6 WR salida de escritura de la memoria externa;
P3.7 RD salida de lectura de la memoria externa.
Estas dos últimas señales son activas bajas (en estado 0)
La interfaz de comunicación serie es accesible físicamente gracias a la
función secundaria de dos líneas del puerto P3. Se trata del Terminal RXD
(segunda función de P3.1) para transmisión.
24
El puerto serie funciona en full duplex, es decir, es capaz de recibir y
transmitir simultáneamente. También posee un buffer de recepción que permite la
recepción de un byte antes de la lectura del anterior. No obstante, la lectura del
primer byte debe efectuarse antes de la recepción del último bit del segundo byte.
Los registro de recepción y transmisión son ambos accesibles en la misma
dirección de la RAM interna, designada por el símbolo SBUF cuyo valor es de
99H. Una escritura en esta dirección accede al registro de transmisión, mientras
que una lectura del contenido de esta dirección permite extraer el dato de registro
de recepción.
El control del puerto serie se realiza gracias al registro con función
especial SCON situado en la dirección 98H. El puerto serie puede funcionar en
cuatro modos:
MODO 0: registro de desplazamiento. El puerto serie funciona como un
registro de desplazamiento de 8 bits. Los datos series entran o salen por la patilla
RXD. La patilla TXD se utiliza como reloj cuya frecuencia se obtiene dividiendo
por 12 la frecuencia del oscilador del microcontrolador.
MODO 1: el puerto serie funciona como un UART de 8 bits con un bit de
arranque (Start) y un bit de parada (stop). Por consiguiente, se transmiten (por
Terminal TXD) o reciben (por el Terminal RXD) 10 bits. En recepción, el bit de
STOP se coloca en el registro SCON. La velocidad de comunicación es variable.
Depende de cómo se programe el TIMER 1 en el 8051 y los TIMER 1 y 2 en el
8052. Esta característica permite velocidades diferentes para recepción y
transmisión de datos.
MODO 2: el puerto serie se comporta como un UART de 9 bits. El dato se
enmarca entre un bit de START y un bit de STOP. Para la transmisión, el noveno
bit se obtiene el registro de control SCON; en recepción, el noveno bit es
colocado en este mismo registro. La velocidad de transmisión/recepción es
programable: puede ser 1/32 ó 1/64 de la frecuencia del oscilador del
microcontrolador.
25
MODO 3: es modo tres es idéntico al modo 2, la única diferencia es que la
velocidad de transmisión/recepción es variable: la genera el TIMER 1 (1 ó 2 en el
8052).
Registro de control.-El registro con función especial SCON permite el
control e indica el estado de la interfaz de comunicación serie. Entre otras cosas,
SCON sirve para seleccionar el modo de comunicación.
SCON: dirección directa 98H, bits direccionables individualmente.
9F 9E 9D 9C 9B 9A 99 98
Tabla 3.3 Modo del funcionamiento del puerto serie:
MO SM1 Modo Descripción Frecuencia de comunicación
0
0
1
1
0
1
0
1
0
1
2
3
Registro de desplazamiento
UART 8 bits
UART 9 bits
UART 9 bits
F oscilación/12
Variable
F oscilación/64 ó F osc/32
variable
SM2: hace posible la comunicación multiprocesador en los modos 2 y 3.
En modo 2 ó 3, si SM2 = 1, R1 sólo se pondrá a 1 si el 9° bit es un 1. En modo 1,
si SM2 = 1, R1 solo se activara al recibirse un bit de stop valido. En modo 0,
SM2 debe ser 0.
REN: el programa habilita la recepción serie poniéndolo a 1.
TB8: es el 9° bit a transmitir en modo 2 ó 3.
RB8: es el 9° bit recibido en modo 2 ó 3, en modo 1, si SM2 = 0, RB8 es el bit de
stop recibido.
SM0 SM1 SM2 REN TB8 RB8 TI RI
26
TI: es el indicador de transmisión. Se pone en 1 automáticamente al
transmitirse el 8° bit en modo 0 y al transmitirse el bit de stop en los otros modos.
Antes de una operación de transmisión, debe ser puesto a 0 por programa.
RI: es el indicador de recepción. Se pone a 1 automáticamente al recibirse
el 8° bit en modo 0 y al recibirse el bit de stop en los otros modos (salvo la
excepción indicada en la descripción SM2). RI debe ser puesto a 0 por programa.
3.5 Secuencia de programación
En la figura 3.5 se puede apreciar el diagrama de flujo del programa
implementado.
La lógica de programación mostrada a continuación es la forma en la cual se
envían los datos para poder visualizar caracteres alfanuméricos en el cartel
electrónico, y se refiere a la siguiente metodología:
1.- Inicialización de variables
2.- Apagar filas y columnas
3.- Leer datos del puerto serie
4.- Guardar datos en la memoria
5.- Comparar
6. Obtener carácter alfanumérico
7.- Barrido de LED’s
8.- Regresar al paso 1
Para el proyecto se utilizo el puerto 2 del Microcontrolador para controlar
los datos de las filas del cartel. En este caso se tienen 7 filas y se utilizaron los
pines P2.0 a P2.6 para excitar las bases de los transistores PNP. El puerto 1 se
utiliza para la transmisión de datos hacia el registro de desplazamiento, de manera
27
particular el pin P1.0 es el encargado de mandar en serie la cadena de caracteres
a mostrar en el cartel. El P1.1 es el que genera los pulsos de reloj para la
transición de alto a bajo para el desplazamiento de los bit’s de datos.
Fig. 3.5 Diagrama de flujo
En la figura 3.6 se muestra el circuito electrónico realizado en Proteus
para su simulación.
28
Fig. 3.6 Circuito del cartel electrónico
Circuito Microcontrolador: A continuación se lista el material utilizado en
esta tablilla.
• 1 Microcontrolador AT89S52
• 1 Cristal 11.0592 MHz
• 1 Capacitor electrolítico de 10 uF
• 2 Capacitores de cerámica de 33 pF
• 1 Capacitor de cerámica de 100 uF
• 1 Resistencia de 10kΩ
• 1 Conector DB9 hembra
• Tira de pines
La figura 3.7 se muestra la tablilla realizada del circuito microcontrolador.
En el apéndice B se adjuntan los diseños de los circuitos impresos de cada una de
las tablillas elaboradas para el proyecto.
29
Fig. 3.7 Tablilla del microcontrolador
3.6 Circuito controlador de filas
Es el encargado de controlar el barrido de las filas en el cartel electrónico, la cual
se encuentra conectada al puerto 2 del microcontrolador y está compuesto por 7
transistores BD140. El transistor es utilizado para poder controlar la corriente
demandada por los diodos LED’s en cada una de las filas correspondientes. En la
figura 3.8 se muestra la conexión del puerto del microcontrolador hacia la base de
cada uno de los transistores.
Fig. 3.8 Diagrama del circuito controlador de filas
30
La manera más sencilla de usar un transistor es emplearlo en conmutación,
lo que quiere decir es que debe funcionar en saturación o en corte y que no debe
funcionar en ningún otro punto de la recta de carga. Si un transistor está saturado,
actúa como un interruptor cerrado del colector al emisor. Si un transistor esta en
corte, es como un interruptor abierto.
La polarización de base es útil en los circuitos digitales, ya que, por lo
general, estos circuitos se diseñan para funcionar en saturación y en corte. Por
ello, tienen una tensión de salida bajo o alto. Dicho con otras palabras, no se
emplea ningún punto de trabajo entre saturación y corte. Debido a este motivo, las
variaciones en el punto de trabajo no importan, ya que el transistor se mantiene en
saturación o en corte al cambiar la ganancia de corriente.
Al emplear un transistor en conmutación solo tiene dos niveles de salida:
bajo o alto. Los valores exactos de las dos tensiones de salida no son importantes.
Lo que importa es que las tensiones se puedan diferenciar en su nivel alto o bajo.
Así es como se puede reconocer un circuito digital.
A los circuitos digitales a menudo se les llama circuito de conmutación
porque su punto de trabajo conmuta o cambia entre dos puntos de la recta de
carga. En la mayor parte de los diseños esos dos puntos son la saturación y el de
corte. Otro nombre que también se acostumbra a darles es el de circuitos de dos
estados, refiriéndose a las salidas a nivel alto y bajo.
La utilidad del transistor en este circuito es emplearlo como tipo
interruptor, ya que al excitar la base con lógica negativa, estaremos trabajando
entre saturación y corte en el transistor. A continuación se lista el material
utilizado en la tablilla del circuito controlador de filas y en la figura 3.9 se muestra
la tablilla realizada del circuito.
• 7 resistencias de 1.5 K
• 7 transistores PNP, BD136
• 2 conectores de 8 Pines
• 1 conector de 2 pines
31
Fig. 3.9 Circuito controlador de filas
3.7 Circuito controlador de columnas
El componente principal de este circuito es el registro de desplazamiento en
circuito integrado el 74LS164, el cual es un registro de desplazamiento de
ocho bits con entrada serial- salida en paralelo, con cada salida al flip-flop
accesible externamente. En lugar de una sola entrada serial y una compuerta
AND, combina las entradas A y B para producir la entrada serial para el flip-
flop Q0. La operación de desplazamiento se lleva a cabo en las transmisiones
con pendiente positiva de la entrada de reloj CP. La MR proporciona
restablecimiento asíncrono de todos los flip-flop’s en un nivel BAJO. En la
figura 3.10 se muestra el diagrama lógico.
Fig. 3.10 Diagrama lógico del 74LS164
Este circuito será el encargado de enviar los datos hacia las columnas de
los LED’s e ir desplazando los bits. La información enviada a través de los
registros será tan rápida que no se lograra ver el parpadeo que realiza, mostrando
un efecto visual de un carácter fijo, a causa de esto se tomara en cuenta un defecto
32
del ojo humano ya que debido a que al estar presenciando una imagen, esta
imagen continúa siendo percibida uniformemente por el pensamiento y se queda
retenida en el campo visual del observador por un corto tiempo. Este fenómeno
permite una visualización libre de parpadeos y discontinuidades.
El puerto del microcontrolador utilizado para controlar los registros de
desplazamiento es el puerto 1. Específicamente el pin P1.0 es el encargado de
mandar la serie de la cadena de caracteres a mostrar en el cartel y el P1.1 es el
que genera los pulsos de reloj, es decir la transición de alto a bajo para lograr el
desplazamiento de los bit’s de datos. Como se puede ver los registros de
desplazamiento se encuentran conectados en cascada para realizar la transferencia
de datos. En la figura 3.11 se muestra el diagrama electrónico de esta sección.
Fig. 3.11 Diagrama del circuito controlador de columnas
A continuación se lista el material utilizado en este circuito y en la figura
3.12 se muestra la tablilla realizada.
• 6 registros de desplazamiento 74LS164
• 48 Resistencias de 100 ohms
33
• 8 conectores de 6 pines tipo header
• 4 conectores de 2 pines tipo header
Fig. 3.12 Circuito controlador de columnas
3.8 Interfaz de usuario
La información a desplegar en el cartel electrónico es a través de una computadora
conectada a una red Ethernet la cual funciona como interfaz de usuario mediante
una página Web programada en HTML para introducir los mensajes en el cartel
electrónico. El puente de comunicación entre la red Ethernet y el
microcontrolador está a cargo del modulo de red (modulo embebido) por medio
del puerto serie y en conjunto con el microcontrolador.
El modulo de red SitePlayer es un sistema basado en Servidor Web, que
por un lado gestiona los protocolos de comunicación de Internet y por el otro, se
comunica con el mundo exterior a través de una conexión serial. El SitePlayer es
un módulo de red que se controla de manera remota con una página HTML que
reside en el propio módulo. Este módulo crea lo que se denomina un “Web
Server” o Servidor de Red, cuya función es gestionar los niveles de control y
comunicación. Para lograr la comunicación se debe asignar una dirección IP al
modulo de red y esto se logra de dos formas: asignando una IP estática de manera
permanente al módulo o una IP dinámica asignada por un servidor DHCP
34
utilizando el protocolo ARP en función de su dirección física. En la figura 3.13 se
muestra la tablilla del modulo SitePlayer, ésta es la versión completa, con ella se
asigna y graba la dirección IP al SitePlayer. Para implementarla en el proyecto no
es necesaria ésta versión, para esto hay un diseño más sencillo e igual de eficaz
que la tarjeta de desarrollo de este diminuto servidor, la figura 3.14 muestra el
diagrama del circuito para su construcción.
Fig. 3.13 Modulo de red SitePlayer en su versión completa
Fig. 3.14 Diagrama de SitePlayer versión de aplicación básica
Para implementar un servidor WEB que pueda responder a las peticiones
de un cliente, se debe disponer de un software que pueda soportar los distintos
35
tipos de protocolos implicados en los diferentes niveles de capa del modelo
TCP/IP, además almacenar en memoria las páginas WEB (lenguaje HTML) e
imágenes que podrán visualizarse en el navegador. El módulo SitePlayer cumple
con los anteriores requerimientos: el software implementado en el
microcontrolador que contiene el módulo, permite la gestión de los diversos
protocolos, y por otra parte, la página WEB creada para el sistema de información
se descargan en la memoria flash para recuperarlas en el momento que el
navegador la necesite. En lo referente, al diseño de la página Web, se debe tener
en cuenta la capacidad de 48 kbytes de la memoria flash del módulo SitePlayer.
En el código HTML pueden insertarse enlaces específicos, que conecten el
contenido de la página Web con otra, además se puede incluir seguridades de
ingreso a la página principal. En la figura 3.15 se muestra la página WEB
utilizada como interfaz de usuario.
Fig. 3.15 Pagina WEB de interfaz de usuario
La programación de la dirección que se le asignara al SitePlayer, así como la
página web, se realiza con los siguientes pasos:
1. Conectar la tarjeta de desarrollo del SitePlayer a la computadora por medio
del puerto serie y Ethernet. Por el puerto serie se graba la dirección IP al
36
miniservidor y por Ethernet realizara la comunicación entre la
computadora y el SitePlayer.
2. Con la utilización del programa Serial Port Tester se obtiene la dirección
IP del SitePlayer como se muestra en la figura 3.16. Una vez abierta la
aplicación se presiona el botón que contiene la leyenda Get IP.
Fig. 3.16 SerialPort Tester para obtener la dirección IP
3. La comunicación entre la computadora y el SitePlayer es posible siempre
que se encuentren en la misma red, para esto es necesario configurar en la
computadora la dirección IP. Si el SitePlayer tiene la dirección IP
10.223.73.31, es recomendable asignarle a la computadora la dirección IP
estática 10.223.73.37. La comprobación de que hay respuesta por parte de
los dos dispositivos se puede realizar con la ejecución del comando ping +
IP del SitePlayer. El resultado de este paso se muestra en la figura 3.17.
37
Fig. 3.17 Ejecución del comando ping
4. En el programa SiteLinker se carga el archivo que tiene la extensión .SPD,
este contiene las instrucciones necesarias para la programación del
SitePlayer que se presenta en el apéndice A. El SiteLinker se encarga de
generar otro archivo, pero con la extensión .SPB como lo muestra la figura
3.18. Este último se descarga al SitePlayer. Con esta acción se termina el
proceso y queda listo para la conexión con el microcontrolador.
Fig. 3.18 SiteLinker
38
CAPITULO 4: RESULTADOS
Terminado el programa se realizaron pruebas en conjunto con el hardware. En la
elaboración de este paso se implementó un nuevo circuito para establecer
comunicación entre el microcontrolador y la PC a través del puerto serie. En el
circuito de la figura 4.1 se utilizó el circuito integrado MAX232 que tiene como
función convertir los niveles de voltaje salientes de la computadora a niveles TTL
con los que trabaja el microcontrolador.
Fig. 4.1 Interfaz RS-232
Los resultados obtenidos demostraron que entre el microcontrolador y la
computadora no hubo comunicación. La figura 4.2 muestra la conexión entre los
dispositivos.
Debido a esto se modifico el diseño del programa para mostrar todos los
caracteres que el microcontrolador es capaz de reconocer y procesar, es decir,
almacenar en memoria todos los números y letras como constantes sin necesidad
de una comunicación que le este enviando los datos, para este caso en particular la
computadora, esto con el objetivo de discernir las causas del problema.
El programa modificado es capaz de ejecutar las siguientes acciones:
primero guardar en memoria los números del cero al nueve y el abecedario en
letras mayúsculas, después leer los espacios de memoria en donde se almacenaron
los datos, en seguida comparar y ejecutar el código correspondiente al carácter
leído, a continuación realizar el barrido para visualizar los mensajes a través de
los diodos LED.
39
Fig. 4.2 Conexión entre el microcontrolador y la computadora
La corrección del programa de prueba, reveló que el código era
insuficiente, y por lo tanto, incapaz de cumplir las funciones para las que fue
diseñado. Con la depuración del programa se presentaron nuevos inconvenientes,
los cuales son: mensajes ilegibles, desplazamiento incorrecto de los caracteres
alfanuméricos, solo desplegaba ocho datos y parpadeo en la visualización de la
información.
Los mensajes ilegibles como se aprecian en la figura 4.3 son caracteres
que se mostraban un tiempo muy corto, esto debido a la velocidad a la que trabaja
el microcontrolador, por lo que, no era posible la visualización clara de la
información. La solución al problema consistió en ejecutar treinta veces la misma
lectura de los datos.
40
Fig. 4.3 Caracteres ilegibles
Un mensaje puede ser captado por las personas por la dirección en la que
lee, de izquierda a derecha, por lo tanto, para dar a conocer información debe
desplazarse a la inversa, es decir, de derecha a izquierda. Iniciar el primer carácter
en el ultimo modulo y después en el séptimo hasta llegar al primer modulo,
corrigió el problema.
Inicialmente se realizaba una lectura de treinta y seis datos en un ciclo, sin
embargo la capacidad del cartel es de ocho, como consecuencia solo se exhibían
los primeros ocho datos de la memoria. Para solucionar este problema fue
necesario leer grupos de ocho datos por ciclo de la siguiente manera: primero los
caracteres del uno al ocho, en el siguiente ciclo los datos del dos al nueve y así
sucesivamente hasta terminar con el total de elementos almacenados en memoria.
El problema del parpadeo fue el más difícil de solucionar ya que para
eliminarlo se tuvo que reducir el tiempo de encendido de las columnas, por
consecuencia el ciclo de trabajo en las columnas decremento, esta medida
ocasiono que la intensidad lumínica de los LED´s disminuyera considerablemente.
Para que los LED´s tengan un brillo visible al ojo humano deben permanecer
prendidos aproximadamente 10 milisegundos, contra los 312.5 microsegundos
que actualmente se mantienen excitados. La visibilidad de los mensajes se puede
distinguir en lugares obscuros, por el tipo de LED’s utilizados (rojo difuso).
La implementación del conjunto de soluciones propuestas anteriormente
dio como resultado la visualización de los números del cero al nueve, así como
todas las letras del abecedario en mayúsculas con un desplazamiento de derecha a
izquierda. En la figura 4.4 se pueden observar los caracteres que el
microcontrolador puede reconocer.
41
Fig. 4.4 Caracteres alfanuméricos
El siguiente paso consistió en modificar el código funcional para obtener
comunicación entre el microcontrolador y la computadora, es decir, que el
microcontrolador procese la información recibida por la computadora a través de
una comunicación serie, para después visualizarlos a través de los diodos LED, y
que anteriormente no se había logrado. Las imágenes de la figura 4.5 son la
prueba de que se cumplió exitosamente.
42
Fig. 4.5 Comunicación funcional entre el microcontrolador y la
computadora
Para finalizar el proyecto solo hizo falta reunir todos los elementos y formar un
solo sistema: la página web, modulo incrustado, microcontrolador y el arreglo de
LED’s. Todo esto en conjunto cumplió el objetivo de este proyecto y se muestra
en la figura 4.6. Cabe mencionar que el cartel solo puede reconocer los números
del cero al nueve y el abecedario en mayúsculas. La tabla 4.1 muestra la
información técnica del cartel electrónico y la tabla 4.2 se detallan los costos
aproximados que se invirtieron en este proyecto.
43
Fig. 4.6 Resultado final
44
Tabla 4.1 Características técnicas del cartel electrónico
Características del cartel electrónico
Resolución 7 Filas x 48 columnas (336 pixeles en
total)
Tamaño de carácter 7 Filas x 5 columnas
Tamaño de cada pixel 10mm de diámetro
Color Rojo difuso
Capacidad de memoria 110 Caracteres en memoria RAM
Distancia entre dispositivos 90m con la implementación de un Hub
Consumo de energía 5V, 140mA
Caracteres que reconoce 0-9, A-Z (únicamente mayúsculas)
Tabla 4.2 Costo de inversión
Costos del proyecto
Diodos LED $640.00
Cables y conectores $450.00
Componentes $200.00
Tablillas de cobre $250.00
Otros $200.00
Total $1740.00
45
CAPITULO 5: CONCLUSIONES Y
RECOMENDACIONES
Durante la realización de este proyecto se presentaron una serie de inconvenientes
que obstaculizaron el desarrollo del hardware. En primera instancia la tienda en
donde se iba a adquirir el material necesario, dio por error una mala cotización
que posteriormente no fue capaz de sostener los costos proporcionados,
deteniendo un par de semanas la elaboración del mismo. Debido a la tardanza por
parte de la negociación se opto por recurrir a otra tienda del ramo electrónico, en
donde se compro el material a un precio más alto, pero que aun siendo una
cantidad considerable de componentes, respondió con mayor rapidez entregando
la mercancía en menos de una semana.
Otro aspecto que retraso aun más el proyecto, fue el diseño y fabricación
de los circuitos impresos y las tablillas, que por falta de experiencia y
conocimiento sobre la materia, fue un factor difícil de lograr llegando a pensar
que sería imposible, de tal magnitud que para la realización de los mismos,
consumió tres cuartas partes del semestre, pero finalmente la constancia y
dedicación condujo a obtener resultados satisfactorios.
Del presente proyecto se concluye una serie de puntos importantes de la
ayuda que ofrece la implementación de este cartel electrónico en el sector
industrial, ya que el estar informado de la productividad activa en una empresa,
tiene como ventaja hacer cambios de estrategias para alcanzar la demanda de los
productos que se fabrican en ella. Así como el tener informado a sus empleados
de la eficiencia de los mismos.
Otra característica de este proyecto, es que no nada más se limita al sector
industrial, sino que puede ser empleada en otras áreas como pueden ser:
comerciales, escolares, financieras, etc. En fin, cada persona puede darle el uso
que más le convenga.
Por contar con interfaz Ethernet es posible conectarlo en una intranet o a
Internet, además de que se puede expandir el tamaño del cartel electrónico,
46
añadirle más memoria RAM o una memoria EEPROM para almacenar los datos
en forma permanente. También se pueden incluir las letras minúsculas,
animaciones o el desplazamiento de la información puede ser columna por
columna, con solo agregar las rutinas de código necesarias para ejecutar estas
funciones.
Con respecto a la baja intensidad de brillo de los LED’s, se puede corregir
agregando hardware con el fin de suministrarle a los elementos ópticos una mayor
cantidad de corriente o cambiar los tipos de LED’s por unos de mayor intensidad
lumínica. Otra opción puede ser la modificación del programa de tal manera que
el barrido lo realice por filas, ya que actualmente este se hace por columnas.
Sin embargo la mejora más importante de este proyecto es la reducción de
costos en la fabricación de otro cartel electrónico, ya que con solo rediseñar el
circuito es posible descartar algunos elementos que se utilizaron en este proyecto
como lo son los conectores y las tablillas de cobre de doble cara, que representan
una tercera parte del costo total invertido.
La realización de este proyecto deja una enseñanza positiva a todo
candidato a ingeniero, en la que se puede destacar: el plantear un problema, iniciar
la búsqueda de la solución y plasmarlo en forma escrita; investigar, que es la parte
fundamental para conocer el conjunto de elementos necesarios a emplear;
desarrollar el proyecto, que tiene como objetivo satisfacer la etapa electrónica
(para este caso en particular); presentación de resultados, donde se ponen a prueba
las habilidades adquiridas durante la carrera y en donde se obtienen nuevos
conocimientos, se descubren ideas erróneas o simplemente que se ignoraban al
principio, así como, la persistencia, constancia y paciencia para alcanzar las metas
establecidas; y por último las conclusiones, la parte final de todo documento en
donde se expresan soluciones, ventajas y/o puntos a mejorar del proyecto
desarrollado.
47
REFERENCIAS
[1].-Albert Paul Malvino, Principios de Electrónica, Quinta Edición, McGraw-
Hill, España, 1994, pág. 250- 285.
[2].-M. Morris Mano, Diseño digital, Pearson, Tercera edición, México, 2003,
pág. 219- 227.
[3].-Ronald J. Tocci, Sistemas Digitales Principios y Aplicaciones, Pearson, 6ª.
Edición, México, 1996, pág. 353-361.
[4].-Fernando E. Valdés Pérez, y otros, Microcontroladores Fundamentos y
aplicaciones con PIC, 1ª Edición, Alfaomega, México, 2007, pág. 180-195
[5].-José M. Angulo Usategui, y otros, Microcontroladores PIC diseño practico de
aplicaciones, 3ª. Edición, Mc Graw Hill, España, 2003, pág. 15-26, 265-269.
[6].-Juan Carlos Vesga Ferreira, y otros, Microcontroladores Motorola-Freescale,
Primera edición, Alfaomega, México, 2007, pág. 3-33.
[7].-http://www.8052.com, septiembre 2009.
[8].-http://www.ieeproteus.com/index.html, agosto 2009.
[9].-http://www.netmedia.com/siteplayer/webserver/index.html, octubre 2009.
48
APÉNDICE A PROGRAMAS
Programa final del microcontrolador
V_R3 EQU 08H SEIS EQU 09H DIRECCION EQU 0AH VAR EQU 0BH CICLO EQU 0CH TEMP EQU 0DH ORG 00H MOV SP,#80H AJMP PROGRAMA: ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; INICIALIZACION DE MEMORIA RAM ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~INI_RAM: MOV SCON,#50H MOV TMOD,#20H MOV TH1,#0FDH SETB TR1 CLR RI ANL TMOD,#0F0H ORL TMOD,#01H CLR TR0 MOV R2,#01EH MOV R6,#00H MOV R7,#10H MOV TEMP,#30H MOV 0FH,#20H RET ;***************************************************************** ; PROGRAMA PRINCIPAL ;***************************************************************** PROGRAMA: ACALL INI_RAM MOV R1,#02AH ACALL APAGA_COLS ACALL APAGA_FILAS ACALL INICIA ACALL POINTER MOV A,#2FH AJMP LEER_BYTE DISPLAY: MOV SP,#80H
49
CHECK_PUERTO1: JNB RI,VISUAL AJMP PROGRAMA VISUAL: MOV A,TEMP CJNE A,#00H,NORMAL AJMP NEW_SCREEN NORMAL: ACALL INICIA ACALL APAGA_COLS ACALL CERO MOV A,TEMP ACALL DESPLAZA MOV R3,V_R3 DJNZ R2,RUTINA_SKIP MOV R2,#01EH ACALL POINTER PROCEDE: CJNE A,#00H,DISPLAY NEW_SCREEN: MOV SP,#80H CHECK_PUERTO2: JNB RI,VISUAL2 AJMP PROGRAMA VISUAL2: ACALL INICIA ACALL APAGA_COLS ACALL CERO MOV R3,V_R3 DJNZ R2,REINICIA MOV R2,#01EH INC R7 MOV VAR,R7 MOV R0,VAR CJNE @R0,#'@',REINICIA FINALIZACION: ACALL INI_RAM MOV R4,#0AH TIEMPO: MOV TH0,#04CH ;T=0.5seg MOV TL0,#000H SETB TR0 ACALL ESPERA ;T_total=5seg DJNZ R4,TIEMPO AJMP DISPLAY RUTINA_SKIP: AJMP REINICIA
50
POINTER: ACALL CERO MOV A,TEMP SUBB A,#06H MOV TEMP,A DESPLAZA: CJNE A,#00H,OPER ACALL UNO MOV TEMP,A AJMP PROCEDE OPER: ACALL UNO DJNZ A,DESPLAZA MOV A,TEMP RET ;***************************************************************** ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; FUNCIONES PARA EL MANEJO DE FILAS ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~APAGA_FILAS: MOV P2,#0FFH RET ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; FUNCION PARA EL MANEJO DE COLUMNAS ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ APAGA_COLS: SETB P1.0 NOP ACALL RELOJ DJNZ R1,APAGA_COLS MOV R1,#02AH RET ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; FUNCION CONTROLADOR DEL RELOJ ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ UNO: SETB P1.0 NOP NOP RELOJ: CLR P1.1 NOP SETB P1.1 NOP RET CERO: CLR P1.0
51
NOP AJMP RELOJ ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; FUNCION PARA LEER,GUARDAR Y PROCESAR LA INFORMACION ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~INICIA: MOV R0,#10H ;AQUI INICIA LA MEMORIA DE DATOS MOV R3,#00H MOV R4,#00H MOV R5,#00H MOV CICLO,#00H MOV A,#2FH RET LEER_BYTE: ACALL LEER CJNE A,#'@',GUARDA SIN_MEMORIA: MOV A,#'@' MOV @R0,A CLR A REINICIA: MOV VAR,R7 MOV R0,VAR ;Nos posicionamos en el inicio de la MOV DIRECCION,#20H ;memoria VERIFICA: DJNZ R3,CHECK1 FIN: AJMP DISPLAY CHECK1: CJNE A,#'@',AJUSTE2 AJMP FIN AJUSTE2: MOV A,@R0 CJNE A,#20H,AJUSTA1 MOV R4,#00H AJMP CODIFICA AJUSTA1: MOV DIRECCION,#2FH ;Aquí empieza las direcciones de los COMPARA: ;números MOV A,@R0 CJNE A,DIRECCION,INCREMENTA CODIFICA: MOV SEIS,#06H ;A = DIRECCION ACALL EDO_D_ACC SIGUE: INC R0 MOV A,@R0 MOV R4,#00H
52
AJMP VERIFICA INCREMENTA: INC DIRECCION MOV A,R4 ADD A,#06H MOV R4,A MOV R5,DIRECCION CJNE R5,#3AH,COMPARA MOV DIRECCION,#41H AJMP COMPARA EDO_D_ACC: MOV A,R4 ACALL OBT_LETRA MOV P2,A ;BARRIDO HORIZONTAL Y VERTICAL ACALL RETARDO INC R4 ACALL APAGA_FILAS ACALL UNO DJNZ SEIS,EDO_D_ACC INC CICLO MOV A,CICLO CJNE @R0,#'@',NEXT AJMP FIN NEXT: CJNE A,#08H,SIGUE AJMP FIN GUARDA: CJNE R0,#7EH,SAVE AJMP SIN_MEMORIA SAVE: MOV @R0,A INC R0 AJMP LEER_BYTE LEER: NOP NOP NOP JNB RI,LEER MOV A,SBUF CLR RI CJNE A,#08H,CONTINUA DEC R3 DEC R0 MOV @R0,#00H AJMP LEER CONTINUA: ;RECEPCION DE DATOS INC R3 MOV V_R3,R3
53
RET OBT_LETRA: MOV DPTR,#TABLA MOVC A,@A+DPTR RET TABLA: DB 0FFH DB 0FFH ;A=0 DB 0FFH ;A=1 DB 0FFH ;A=2 DB 0FFH ;A=3 DB 0FFH ;A=4------>ESPACIO DB 0FFH DB 041H ;A=6 DB 02EH ;A=7 DB 036H ;A=8 DB 03AH ;A=9 DB 041H ;A=10------>NUMERO 0 DB 0FFH DB 03FH ;A=12 DB 03DH ;A=13 DB 000H ;A=14 DB 03FH ;A=15 DB 03FH ;A=16------>NUMERO 1 DB 0FFH DB 01DH ;A=18 DB 02EH ;A=19 DB 036H ;A=20 DB 036H ;A=21 DB 039H ;A=22------>NUMERO 2 DB 0FFH DB 05DH ;A=24 DB 03EH ;A=25 DB 036H ;A=26 DB 036H ;A=27 DB 049H ;A=28------>NUMERO 3 DB 0FFH DB 0F7H ;A=30 DB 0F3H ;A=31
54
DB 0F5H ;A=32 DB 0F6H ;A=33 DB 000H ;A=34------>NUMERO 4 DB 0FFH DB 058H ;A=36 DB 03AH ;A=37 DB 03AH ;A=38 DB 03AH ;A=39 DB 046H ;A=40------>NUMERO 5 DB 0FFH DB 043H ;A=42 DB 035H ;A=43 DB 036H ;A=44 DB 036H ;A=45 DB 04FH ;A=46------>NUMERO 6 DB 0FFH DB 0FEH ;A=48 DB 01EH ;A=49 DB 06EH ;A=50 DB 0F6H ;A=51 DB 0F8H ;A=52------>NUMERO 7 DB 0FFH DB 049H ;A=54 DB 036H ;A=55 DB 036H ;A=56 DB 036H ;A=57 DB 049H ;A=58------>NUMERO 8 DB 0FFH DB 0F9H ;A=60 DB 0F6H ;A=61 DB 036H ;A=62 DB 056H ;A=63 DB 061H ;A=64------>NUMERO 9 DB 0FFH DB 003H ;A=66 DB 06DH ;A=67
55
DB 06EH ;A=68 DB 06DH ;A=69 DB 003H ;A=70------>LETRA A DB 0FFH DB 000H ;A=72 DB 036H ;A=73 DB 036H ;A=74 DB 036H ;A=75 DB 049H ;A=76------>LETRA B DB 0FFH DB 041H ;A=78 DB 03EH ;A=79 DB 03EH ;A=80 DB 03EH ;A=81 DB 05DH ;A=82------>LETRA C DB 0FFH DB 000H ;A=84 DB 03EH ;A=85 DB 03EH ;A=86 DB 03EH ;A=87 DB 041H ;A=88------>LETRA D DB 0FFH DB 000H ;A=90 DB 036H ;A=91 DB 036H ;A=92 DB 036H ;A=93 DB 03EH ;A=94------>LETRA E DB 0FFH DB 000H ;A=96 DB 0F6H ;A=97 DB 0F6H ;A=98 DB 0F6H ;A=99 DB 0FEH ;A=100------>LETRA F DB 0FFH DB 041H ;A=102 DB 03EH ;A=103
56
DB 036H ;A=104 DB 036H ;A=105 DB 047H ;A=106------>LETRA G DB 0FFH DB 000H ;A=108 DB 0F7H ;A=109 DB 0F7H ;A=110 DB 0F7H ;A=111 DB 000H ;A=112------>LETRA H DB 0FFH DB 03EH ;A=114 DB 03EH ;A=115 DB 000H ;A=116 DB 03EH ;A=117 DB 03EH ;A=118------>LETRA I DB 0FFH DB 05EH ;A=120 DB 03EH ;A=121 DB 03EH ;A=122 DB 040H ;A=123 DB 0FEH ;A=124------>LETRA J DB 0FFH DB 000H ;A=126 DB 0F7H ;A=127 DB 06BH ;A=128 DB 05DH ;A=129 DB 03EH ;A=130------>LETRA K DB 0FFH DB 000H ;A=132 DB 03FH ;A=133 DB 03FH ;A=134 DB 03FH ;A=135 DB 03FH ;A=136------>LETRA L DB 0FFH DB 000H ;A=138 DB 0FDH ;A=139 DB 0FBH ;A=140
57
DB 0FDH ;A=141 DB 000H ;A=142------>LETRA M DB 0FFH DB 000H ;A=144 DB 0FDH ;A=145 DB 0FBH ;A=146 DB 0F7H ;A=147 DB 000H ;A=148------>LETRA N DB 0FFH DB 041H ;A=150 DB 03EH ;A=151 DB 03EH ;A=152 DB 03EH ;A=153 DB 041H ;A=154------>LETRA O DB 0FFH DB 000H ;A=156 DB 0F6H ;A=157 DB 0F6H ;A=158 DB 0F6H ;A=159 DB 0F9H ;A=160------>LETRA P DB 0FFH DB 041H ;A=162 DB 03EH ;A=163 DB 02EH ;A=164 DB 041H ;A=165 DB 03FH ;A=166------>LETRA Q DB 0FFH DB 000H ;A=168 DB 0F6H ;A=169 DB 066H ;A=170 DB 056H ;A=171 DB 039H ;A=172------>LETRA R DB 0FFH DB 039H ;A=174 DB 036H ;A=175 DB 036H ;A=176
58
DB 036H ;A=177 DB 04EH ;A=178------>LETRA S DB 0FFH DB 0FEH ;A=180 DB 0FEH ;A=181 DB 000H ;A=182 DB 0FEH ;A=183 DB 0FEH ;A=184------>LETRA T DB 0FFH DB 040H ;A=186 DB 03FH ;A=187 DB 03FH ;A=188 DB 03FH ;A=189 DB 040H ;A=190------>LETRA U DB 0FFH DB 060H ;A=192 DB 05FH ;A=193 DB 03FH ;A=194 DB 05FH ;A=195 DB 060H ;A=196------>LETRA V DB 0FFH DB 000H ;A=198 DB 05FH ;A=199 DB 06FH ;A=200 DB 05FH ;A=201 DB 000H ;A=202------>LETRA W DB 0FFH DB 01CH ;A=204 DB 06BH ;A=205 DB 0F7H ;A=206 DB 06BH ;A=207 DB 01CH ;A=208------>LETRA X DB 0FFH DB 0FCH ;A=210 DB 0FBH ;A=211 DB 007H ;A=212
59
DB 0FBH ;A=213 DB 0FCH ;A=214------>LETRA Y DB 0FFH DB 01EH ;A=216 DB 02EH ;A=217 DB 036H ;A=218 DB 03AH ;A=219 DB 03CH ;A=220------>LETRA Z ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; FUNCION DE TIEMPO ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RETARDO: MOV TH0,#0FEH ;T=312.5useg MOV TL0,#0E0H SETB TR0 ESPERA: JNB TF0,$ CLR TR0 CLR TF0 RET END
Programa Pagina Web
<html>
<title>www.cartelelectronico.com=2</title>
<body>
<body bgcolor="black" background="Dibujo.jpg" body bgproperties="fixed"
link="BLUE" vlink="bLACK" alink="BLUE">
<!- el body background es para poner de fondo a una imagen, y el BGCOLOR es
para el color de fondo->
<HEAD><P ALIGN="center"><font size =+3 color="AQUA" face = "arial"> <b> Proyecto de Titulacion </b></font></HEAD> <br> <br> <P ALIGN="CENTER"><IMG src="signbot.gif" width="350 alt="uacj pic"> <br> <br> <br>
60
<br> <form method="get" action="SERIAL.SPI"> <div align="center"> <table align="CENTER" FONT COLOR=AQUA border ="0" cellpadding="0" frame="box" width="45%" FONT COLOR=AQUA> <tr FONT COLOR=AQUA> <td> <font size="3" align="LEFT" color="BLACK" face ="sans-serif"><B>Escribir Mensaje</B></font> <input type="text" name="com" maxlength="110" size="47"> </td> </tr> <tr FONT COLOR=AQUA> <td>                                   <input type="submit" value="Enviar Cadena">                   <input type="reset" value="Limpia Texto"> </td> </tr> </table> <table align="center" FONT COLOR=AQUA border ="0" cellpadding="0" frame="box" width="45%" FONT COLOR=AQUA> <br> <br> <tr align="center" valign="middle"><td><a href="Serial.spi?com=h"><font face="sans-serif" size="4"> LIMPIAR PANTALLA </font></a></td></tr> </table> </div> </form> <br> <br> <br> <br> <br> <UL> <LI><A Href="mailto:[email protected]"> <b> [email protected]</b> <LI><A Href="mailto:[email protected]"> <b>[email protected]</b>
61
Programa con extensión SPD ; Enviar datos desde el SitePlayer al microcontrolador ; ; ; These are initial variables that you can place in your system ; ;$Devicename sets the name or description of the device $Devicename "SitePlayer(tm) Serial Demo" ;$DHCP on sets SitePlayer to find its IP address from a DHCP server $DHCP on ;$DownloadPassword sets password for downloading web pages and firmware $DownloadPassword "" ;$SitePassword sets password for browsing web pages $SitePassword "" ;$InitialIP sets SitePlayer’s IP address to use if no DHCP server is available $InitialIP "10.223.73.31" ;$PostIRQ on sets SitePlayer to generate a low level IRQ on pin 11 $PostIRQ off ;$Sitefile sets the binary image filename that will be created $Sitefile "D:\Archivos de programa\SitePlayer\Cartel\Serial_Demo.spb" ;$Sitepath sets the root path of the web pages for this project $Sitepath "D:\Archivos de programa\SitePlayer\Cartel" ;$Include sets the name of a file to include during make process $Include "D:\Archivos de programa\SitePlayer\pcadef.inc" $Include "D:\Archivos de programa\SitePlayer\udpsend_def.inc"
62
APENDICE B CIRCUITOS IMPRESOS
Fig. B.1 Tablilla del Microcontrolador
Fig. B.2 Tablilla del controlador de filas
63
Fig. B.3 Tablilla del controlador de columnas
Fig. B.4 Tablilla de matriz de LED’s vista superior
64
Fig. B.5 Tablilla de matriz de LED’s vista inferior
Fig. B.6 Tablilla para comunicación por el puerto serie