1. TIPO DE DOCUMENTO: Proyecto de grado para ingeniería electrónica. 2. TITULO DE DOCUMENTO: Diseño e implementación de un prototipo para Comunicación Móvil. 3. AUTORES: Daniel F. Castañeda Jácome, Juan David Cortés Delgado, Nicolás Garzón Estevez. 4. LUGAR: Universidad de San Buenaventura. Bogotá-Colombia. 5. FECHA: 27 de enero de 2011. 6. PALABRAS CLAVE: Prototipo, microcontrolador, Comunicación Móvil, Programación, Módem GSM, Touch. 7. DESCRIPCIÓN DEL TRABAJO: Este Diseño e implementación de un prototipo de teléfono móvil, se constituye en una herramienta que facilita el estudio interno de las funciones básicas de un celular, al tiempo que ofrece la posibilidad de incrementar su nivel exploratorio para posteriores estudios. 8. LINEA DE INVESTIGACIÓN: Este trabajo se desarrolla en el marco de la línea de investigación institucional de la facultad de ingeniería electrónica, el cual se suscribe dentro del campo temático denominado: Sistemas de información y Comunicación. 9. FUENTES CONSULTADAS: ANGULO Usategui José M, I. A. (2000). Microcontroladores PIC: diseño práctico de aplicaciones. RAMJEE Prasad, M. R. (2003). Technology trends in wireless communications. Rhee, M. Y. (2009). Mobile communication systems and security. Stremler, F. G. (1989). Sistemas de comunicación. HALONEN Timo J. R. (2003). GSM, GPRS and edge performance: evolution towards 3G/UMTS. Tomasí, W. (2003). Sistemas de comunicaciones electrónicas. Otros referenciados, y/o consultados de manera informal y casuística. 10. CONTENIDOS: En este trabajo se diseña un circuito que hace posible el funcionamiento básico de un prototipo de comunicación móvil como herramienta que facilita el estudio interno de un celular. 11. METODOLOGÍA: Con enfoque empírico analítico en cuento a que se desarrolla dentro del contexto de la experiencia y el análisis interpretativo de una necesidad, cuyo derrotero evidencia de una manera sucinta, y el diseño de un prototipo de telefonía móvil, como herramienta de estudio para la facultad de ingeniería de la Universidad San Buenaventura. 12. CONCLUSIONES: Se integro un MODEM que funciona con tecnología móvil GSM para frecuencia de 850MHz hasta 1900MHz. Este sistema no es compatible con intercambio de datos GPRS. Se diseñaron los algoritmos necesarios para la preparación de los dispositivos y para la realización de las funciones básicas de una comunicación móvil. Se implementó un prototipo de comunicaciones móviles que permite realizar prácticas de programación de las funciones básicas de un teléfono móvil y la experimentación con los sistemas de pantalla táctiles. El dispositivo que se obtuvo permite el análisis electrónico de la forma en que se llevan a cabo las funciones básicas de un teléfono móvil. DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO PARA COMUNICACIÓN MÓVIL DANIEL FERNANDO CASTAÑEDA JÁCOME JUAN DAVID CORTES DELGADO NICOLAS GARZON ESTEVEZ UNIVERSIDAD DE SAN BUENAVENTURA FACULTAD DE INGENIERIA INGENIERÍA ELECTRONICA BOGOTÁ D.C. 2011 DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO PARA COMUNICACIÓN MÓVIL DANIEL FERNANDO CASTAÑEDA JÁCOME JUAN DAVID CORTES DELGADO NICOLAS GARZON ESTEVEZ Proyecto de grado como requisito para optar al título de Ingeniero Electrónico UNIVERSIDAD DE SAN BUENAVENTURA FACULTAD DE INGENIERIA INGENIERÍA ELECTRÓNICA BOGOTÁ D.C. 2011 CONTENIDO INTRODUCCIÓN 16 1. 17 PLANTEAMIENTO DEL PROBLEMA 1.1. ANTECEDENTES 17 1.2. DESCRIPCIÓN DEL PROBLEMA 19 1.2.1. 1.3. 1.4. 3. JUSTIFICACIÓN OBJETIVOS DE LA INVESTIGACIÓN 21 21 23 1.4.1 OBJETIVO GENERAL 23 1.1.2. OBJETIVOS ESPECIFICOS 23 1.4. 2. FORMULACIÓN DEL PROBLEMA ALCANCES Y LIMITACIONES DEL PROYECTO 24 MARCO TEÓRICO Y CONCEPTUAL 25 2.1.1. Los Microcontroladores de la familia 18F4550: 27 2.1.2. Pantalla LCD. 29 2.1.3. Membrana Táctil resistiva: 30 2.1.4. Modem GSM: 33 METODOLOGÍA 3.1. LÍNEA DE INVESTIGACIÓN: 4. DISEÑO INGENIERIL 35 35 36 4.1. SELECCIÓN DE LOS ELEMENTOS DEL HARDWARE 38 4.1.1. Implementación del Microcontrolador. 38 4.1.2 Implementación De La Pantalla Gráfica LCD. 40 4.1.3. Implementación de la Pantalla Táctil. 47 4.1.4 Implementación Del Modem GSM. 55 4.2 DISEÑO DELSOFTWARE 70 4.2.1. Configuración microcontrolador. 70 4.2.1.1. Puerto A y F: 71 4.2.1.3. Puertos C, D, E y G: 72 4.2.1.4. Valores máximos absolutos. 73 4.2.2 Diseño de Software pantalla gráfica. 79 4.2.2.1. Función “Inicialización GLCD”. 80 4.2.3 Comunicación con el computador por medio del puerto serial DB9. 83 4.2.4 Diseño de Programación para la Membrana Táctil. 86 4.2.3 Diseño y Programación del Modem. 87 5. ANALISIS DE RESULTADOS 93 6. CONCLUSIONES 99 7. RECOMENDACIONES 101 BIBLIOGRAFIA 102 1. PROGRAMACIÓN DE LA LCD ¡Error! Marcador no definido. 2. PROGRAMACIÓN DE LA MEMBRANA TÁCTIL ¡Error! Marcador no definido. 3. UNIDAD DE CONTROL ¡Error! Marcador no definido. 4. INICIALIZACIÓN DEL MODEM GSM ¡Error! Marcador no definido. 5. REALIZACIÓN DE LLAMADAS ¡Error! Marcador no definido. 5.1. REALIZACIÓN DE LLAMADAS CON COMANDOS AT. ¡Error! Marcador no definido. 5.2. REALIZACIÓN DE LLAMADAS PROGRAMANDO EL MICROCONTROLADOR Marcador no definido. ¡Error! 6. RECEPCIÓN DE LLAMADAS CON COMANDOS AT ¡Error! Marcador no definido. 7. ENVÍO DE MENSAJES DE TEXTO CON COMANDOS AT ¡Error! Marcador no definido. 6.1. ENVÍO DE MENSAJES DE TEXTO PROGRAMANDO EL MICROCONTROLADOR. Marcador no definido. 8. RECEPCIÓN DE MENSAJES DE TEXTO CON COMANDOS AT ¡Error! ¡Error! Marcador no definido. 9.1. RECEPCIÓN DE MENSAJES DE TEXTO PROGRAMANDO EL MICROCONTROLADOR. ¡Error! Marcador no definido. ÍNDICE DE GRÁFICAS DIAGRAMA 1 FUNCIONAMIENTO DE LOS MICROCONTROLADORES DE LA FAMILIA 18F4550 ........................ 28 DIAGRAMA 2 FUNCIONAMIENTO DEL MODEM GSM ....................................................................................... 34 DIAGRAMA 3 ALGORITMO DEL MICROCONTROLADOR ................................................................................... 77 DIAGRAMA 4 INICIALIZACIÓN DE LA LCD ......................................................................................................... 81 DIAGRAMA 5 FUNCIÓN DIBUJA MENÚ ............................................................................................................. 82 DIAGRAMA 6 ALGORITMO PARA LA COMUNICACIÓN SERIAL ......................................................................... 85 DIAGRAMA 7 ALGORITMO PARA LA MEMBRANA TÁCTIL ................................................................................ 86 DIAGRAMA 8 INICIALIZACIÓN DEL MODEM ..................................................................................................... 88 DIAGRAMA 9 REALIZACIÓN DE LLAMADAS ...................................................................................................... 89 DIAGRAMA 10 RECEPCIÓN DE LLAMADAS ....................................................................................................... 90 DIAGRAMA 11 ENVIÓ DE MASAJES DE TEXTO .................................................................................................. 91 DIAGRAMA 12 RECEPCIÓN DE MENSAJES DE TEXTO ....................................................................................... 92 DIAGRAMA 1 ESTRUCTURA DEL PROTOTIPO DE COMUNICACIÓN MÓVIL ..................................................... 105 DIAGRAMA 2 INICIALIZACIÓN DEL LCD.............................................................................................. 107 DIAGRAMA 3 ALGORITMO PARA LA MEMBRANA TÁCTIL .............................................................................. 109 DIAGRAMA 4 PROGRAMACIÓN DEL MICROCONTROLADOR .......................................................................... 110 DIAGRAMA 5 ALGORITMO DEL MICROCONTROLADOR ................................................................................. 116 DIAGRAMA 6 INICIALIZACIÓN DEL MODEM ................................................................................................... 118 DIAGRAMA 7 LLAMADAS CON COMANDOS AT .............................................................................................. 119 DIAGRAMA 8 RECEPCIÓN DE LLAMADAS ....................................................................................................... 120 DIAGRAMA 9 ENVIÓ DE MASAJES DE TEXTO .................................................................................................. 123 DIAGRAMA 10 RECEPCIÓN DE MENSAJES DE TEXTO ..................................................................................... 125 ÍNDICE DE TABLAS TABLA 1 DISTRIBUCIÓN GAMAS PIC ................................................................................................................ 26 TABLA 2 CARACTERÍSTICAS DE LA FAMILIA DE PIC18F4550 ............................................................................. 27 TABLA 3 FRECUENCIAS DE LA RED GSM ........................................................................................................... 33 TABLA 4 ANÁLISIS DE LAS PROPIEDADES DE LOS MICROCONTROLADORES .................................................. 39 TABLA 5 ANÁLISIS DE PROPIEDADES Y COSTOS DE LOS MICROCONTROLADORES ....................................... 39 TABLA 6 DISTRIBUCIÓN DE PINES DE LA GLCD ................................................................................................ 41 TABLA 7 TIEMPOS DE EJECUCIÓN DE LA LCD.................................................................................................... 42 TABLA 8 TIEMPOS DE INTERACCIÓN DEL MICROCONTROLADOR Y LA LCD ................................................... 45 TABLA 9 CONEXIÓN DEL PANEL TÁCTIL ............................................................................................................ 50 TABLA 10 ESTADOS DE LA PANTALLA TÁCTIL Y EL MICROCONTROLADOR ....................................................... 51 TABLA 11 CONFIGURACIÓN DEL LA INTERFAZ DE AUDIO ................................................................................. 60 TABLA 12 CONEXIÓN DEL OSCILADOR .............................................................................................................. 62 TABLA 13 CONEXIÓN DEL OSCILADOR .............................................................................................................. 62 TABLA 14 CONFIGURACIÓN DEL OSCILADOR ................................................................................................... 63 TABLA 15 CONEXIÓN DE LA FUENTE DE ALIMENTACIÓN ................................................................................. 67 TABLA 16 CONFIGURACIÓN INICIAL DEL MICROCONTROLADOR ..................................................................... 73 TABLA 17 CONFIGURACIÓN DE PINES DE E/S ................................................................................................... 74 INTRODUCCIÓN Las comunicaciones móviles se encuentran actualmente posicionadas en el mercado mundial, convirtiéndose en el área de mayor crecimiento a nivel de telecomunicaciones. Esto debido a que día a día, se vienen presentando avances tecnológicos que permiten el desarrollo de herramientas orientadas a facilitar la interacción social en todas las formas de comunicación, propias y necesarias para los seres humanos. Es así como el tema de las telecomunicaciones ha incursionando en el campo de lo innovador, importante y necesario no solo para mantener las relaciones interpersonales, sino que también en el ámbito laboral, se convierten en el centro de negocios o punto de trabajo gerencial; pues hoy por hoy para muchos ejecutivos el celular es su oficina portátil. Todo esto gracias a que la revolución de los sistemas de comunicación móvil, ofrecen a diario nuevas alternativas innovadoras, modelos, tamaños y una verdadera combinación de servicios que aún así no acaban de satisfacer las necesidades del mercado, teniendo en cuenta la versatilidad de los insaciables usuarios. Es por esto que en el campo de las telecomunicaciones, la telefonía móvil, evidencia un continuo desarrollo y compromete a los estudiantes de ingeniería electrónica de la Universidad de San Buenaventura a promover nuevas alternativas que permitan estar a la vanguardia como artífices en la tarea de generar estrategias para facilitar el estudio en este tema. Este diseño permitirá comprender lo que ocurre dentro de un teléfono móvil cuando se realizan y reciben llamadas o cuando se envían y reciben mensajes de texto, facilitando así el estudio de los procesos electrónicos Esto con el fin de dar sentido al estudio, la aplicación de formulas y de mas contenidos temáticos planteados para el desarrollo de diferentes asignaturas, que pueden verse enriquecidas con el contenido de este estudio, gracias a que fortalecerá la práctica, con la posibilidad de manipular una herramienta que facilita el estudio y la comprensión de la estructura interna de un celular o modelo de comunicación móvil. Por tanto, este proyecto presenta una alternativa que asocia los conocimientos sobre sistemas de telefonía móvil, con los conocimientos de los microcontroladores. De esta manera se convierte en un sistema sobre el cual se pueden experimentar infinidad de aplicaciones para los sistemas móviles, para lo cual se aborda el conocimiento que permite la operación interna de un celular, el mecanismo que permite efectuar y recepcionar llamadas, y, así mismo para lo que se refiere a recepción y envío de mensajes de texto. 1. PLANTEAMIENTO DEL PROBLEMA 1.1. ANTECEDENTES Como antecedente histórico y contemporáneo sobre este tipo de sistemas, desde 1995 SIEMENS lanzó al mercado el M1, a partir de este momento, en todo el mundo se vienen desarrollando innumerables investigaciones que funcionan con aplicaciones soportadas en la red de telefonía celular. Esto ha permitido un importante desarrollo tecnológico de gran confiabilidad para los sistemas de control industrial, control domótico, vigilancia, supervisión de procesos de producción a nivel industrial y comercial. En este sentido, la investigación de los doctores SUARDÍAZ MURO Y ALHADITHI “Control Electrónico Mediante Telefonía Móvil Digital Basada En La Red GSM”1 permite vislumbrar la necesidad de integrar los sistemas de 1 SUARDÍAZ Muro Y AL-HADITHI -Control Electrónico Mediante Telefonía Móvil Digital Basada En La Red GSM- UNIVERSIDAD ALFONSO X EL SABIO Villanueva de la Cañada (Madrid) - 2004 tecnología GSM con sistemas de control industrial soportados en la red de telefonía celular para que se conviertan en sistemas más eficaces ya que en caso de una falla o que se desee hacer un cambio, este se puede efectuar remotamente mediante el uso de mensajes de texto SMS originados desde un teléfono celular, o desde el modem GSM que se integra al sistema que se va a supervisar. Esta necesidad se traslada a la academia, con la investigación llamada “Caso Práctico Basado En Fpgas Y Sistemas De Telefonía Móvil Para La Docencia En La Titulación De Ingeniería Telemática”2 donde se plantea la necesidad de crear un banco de pruebas donde los estudiantes de ingeniería técnica de Telecomunicaciones, especialidad telemática puedan integrar la teoría con la práctica y de esta manera se puedan realizar mejores desarrollos en los sistemas de control industrial mediante el uso de FPGAs. Así mismo cabe resaltar como fuente de consulta el trabajo de MARTHA, ALULEMA Q. “Estudio de la comunicación con comandos AT microcontroladores caso práctico implementación de un prototipo sistema de gestión de alarma para viviendas con monitoreo, mediante telefonía celular”3. Esta investigación demuestra la posibilidad de integrar un celular con un sistema de gestión de alarmas, que bien puede ser asociado con el sentido de 2 SUARDÍAZ M. Juan. BASIL M. AL-HADITHI - Caso Práctico Basado En FPGAs Y Sistemas De Telefonía Móvil Para La Docencia En La Titulación De Ingeniería Telemática- UNIVERSIDAD ALFONSO X EL SABIO Villanueva de la Cañada (Madrid) - 2007. 3 ALULEMA, Q MARTHA, -Estudio de la comunicación con comandos at microcontroladores caso práctico implementación de un prototipo sistema de gestión de alarma para viviendas con monitoreo, mediante telefonía celular- - ESCUELA SUPERIOR DE CHIMBORAZO Riobamba (Ecuador) -2010. esta propuesta ya que este prototipo puede ampliar su campo de estudio, implementándose a futuro con un sistema de seguridad. Otro aparte donde sé desarrollo un sistema de control remoto vía GSM esta vez aplicado a la domótica se llevo a cabo en la Escuela Superior del Chimborazo por los ingenieros JORGE R. ALVARADO C. y CESAR O. AREVALO C. Llamado “Diseño E Implementación De Un Sistema Domótico Para Control Y Seguridad En Tiempo Real Vía Celular”4 que tenía como objetivo “diseñar e implementar un sistema domótico para el control y seguridad domiciliaria en tiempo real vía teléfono celular”. Este trabajo concluyó, que se logro cumplir con el objetivo de esta investigación, lo cual fortalece esta propuesta encausada a proyectar el conocimiento interno de un celular y sus posibles aplicaciones, incluyendo el programa en plataforma JAVA que permitía al usuario conocer las novedades de su hogar. 1.2. DESCRIPCIÓN DEL PROBLEMA Una de las innovaciones técnicas más relevantes para la interacción activa de la sociedad, en cuanto al desarrollo de los procesos comunicativos y para la popularización de los servicios de comunicación móvil, ha sido la generación de herramientas tecnológicas tales como la telefonía móvil digital, la telefonía inteligente y el acceso a redes inalámbricas. Estas tecnologías han permitido el esparcimiento de las comunicaciones a nivel mundial, dando como resultado la optimización en los procesos comunicativos. Por tanto, el no contar con un prototipo que facilite este tipo de estudio a los estudiantes de ingeniería de la 4 ALVARADO C. y AREVALO, César... -Diseño E Implementación De Un Sistema Domótico Para Control Y Seguridad En Tiempo Real Vía Celular- ESCUELA SUPERIOR DE CHIMBORAZO Riobamba (Ecuador) - 2010. Universidad de San Buenaventura, constituye un problema que debe ser resuelto y esta propuesta constituye un facilitador para dicho estudio. Es así como la identificación de este problema surge por una dificultad de orden práctico, en cuanto a la necesidad de construir un prototipo didáctico de comunicación móvil con comandos AT y la posibilidad realizar cambios a través de la reprogramación de un microcontrolador. Una de las dificultades que afrontan los estudiantes de Ingeniería Electrónica para el estudio de los mecanismos que permiten profundizar en el conocimiento sobre el funcionamiento y estructura interna de un celular, en la cátedra de microcontroladores, es no contar con un sistema de fácil manipulación con el cual se pueda explorar a fondo para experimentar con los elementos que hacen parte de un teléfono móvil. En el mundo de la electrónica el gran problema es que pese a los extraordinarios avances en cuanto a telefonía móvil, se tiende a caer en la tendencia de convertirse en usuarios de los productos elaborados e importados, dejando de lado, el desarrollo de habilidad para investigar, construir y proyectar ideas propias. Pese al alto nivel de desarrollo tecnológico, no todo está pensado, o se ha pensado, pero se requiere la fuerza que impulsa a asumir el reto de dar el primer paso. En este caso, el diseño de un prototipo, constituye la puerta de entrada que permitirá incursionar en el desarrollo de sistemas más complejos. La carencia de este prototipo didáctico, en el laboratorio de ingeniería de la Universidad de San Buenaventura, dificulta el estudio interno de los celulares, por lo que este se ve limitado en cuanto a la profundidad y experimentación que se puede hacer del funcionamiento de un teléfono móvil. 1.2.1. FORMULACIÓN DEL PROBLEMA ¿Cómo diseñar e implementar un prototipo de comunicación móvil? 1.3. JUSTIFICACIÓN El diseño de un prototipo didáctico para comunicación móvil es una propuesta pertinente y relevante, porque constituye una herramienta de trabajo que facilita el estudio de la estructura interna de un celular, específicamente en los procedimientos para realizar y recibir llamadas y mensajes de texto. Este es un aporte propio a la tecnología de comunicación móvil para los estudiantes y docentes de ingeniería en la Universidad de San Buenaventura. Ya que el laboratorio de ingeniería no cuenta con una herramienta de fácil manejo y con las características que tiene el prototipo sugerido, para facilitar el análisis de la estructura interna de un celular. Por tanto, esta propuesta para comunicación móvil se constituye en un facilitador para el estudio de la telefonía, con la posibilidad de incrementar su nivel exploratorio para posteriores estudios de gran utilidad para estudiantes y docentes de ingeniería electrónica, en cuanto al desarrollo de las temáticas en algunas asignaturas de manera más experimental y práctica, permitiendo conducir hacia nuevas aplicaciones y alternativas, para las telecomunicaciones. Este prototipo facilita el estudio del mecanismo interno de los celulares, y la comprensión de los operadores mecánicos a partir de un modem y un microcontrolador que contribuye al estudio de sus partes básicas y también para desarrollar conocimiento y habilidad en el ejercicio que permite comprender las funciones básicas que hacen posible la comunicación. Cabe mencionar que los estudios que se pueden desarrollar mediante el uso de este prototipo permitirán profundizar en el campo de la programación de microcontroladores mediante el uso de una herramienta que facilita la compresión de los contenidos estudiados, para telefonía móvil y sistemas de control remoto soportados en la red GSM. 1.4. OBJETIVOS DE LA INVESTIGACIÓN 1.4.1. OBJETIVO GENERAL Diseñar e implementar un prototipo de dispositivo de comunicación móvil como herramienta que facilite el estudio interno de un celular, donde los estudiantes de la Facultad de Ingeniería de la Universidad de San Buenaventura puedan desarrollar prácticas de laboratorio. 1.4.2. OBJETIVOS ESPECIFICOS Diseñar el circuito con los requerimientos técnicos y funcionales necesarios para hacer posible el funcionamiento básico de un prototipo de comunicación móvil. Seleccionar los dispositivos tales como el modem, el microcontrolador, el LCD y demás, que cumplan con las condiciones del diseño. Diseñar los algoritmos necesarios para que el prototipo de comunicación móvil funcione adecuadamente. Implementar el prototipo de un teléfono móvil, para facilitar el estudio y la comprensión de su funcionamiento básico. Realizar pruebas de funcionamiento del prototipo. Diseñar un manual de funcionamiento del prototipo incluyendo algunos ejemplos de su aplicación. 1.5. ALCANCES Y LIMITACIONES DEL PROYECTO Este prototipo está diseñado a partir de la aplicación de un microcontrolador, ligado a un Modem de telefonía celular con tecnología GSM que opera en las bandas de frecuencia de 850MHz, 900MHz, 1800 y 1900MHz. Pero no tiene habilitado el intercambio de datos vía GPRS ni él módulo GPS del modem. El uso del modem GSM tiene un puerto serial con protocolo RS232 que permite el intercambio de datos. La interfaz con el usuario está compuesta una pantalla LCD que permite la visualización, una membrana táctil que y manipulación del prototipo, y el sistema de audio. El microcontrolador se puede reprogramar para aumentar la funcionalidad y aplicaciones del prototipo; para que esto sea posible. El prototipo no cuenta con un sistema para acoplar la batería, el sistema de alimentación es por medio de un adaptador de corriente o por el puerto USB; la antena del modem es un dipolo externo, estas características hacen que este prototipo no sea portátil. Además tiene alerta sonora monofónica El prototipo no tiene la función de vibrador, ni acepta la señal de radio FM o AM, ni los accesorios como cámara de fotografía y video, bluetooth, ni radio AM o FM. No es posible la implementación de un sistema que reproduzca los formatos de audio ni video ni aplicaciones JAVA. El equipo permite la realización y recepción de llamadas, el envío y recepción de mensajes de texto por medio de la programación de estas funciones en el microcontrolador. Aunque se implementaron un puerto USB (Universal Serial Bus) y una Micro SD (micro Secure Digital) la programación de estas funciones no se desarrollo en este proyecto, estas están disponibles para que el usuario pueda realizar aplicaciones con ellas. 2. MARCO TEÓRICO CONCEPTUAL 1.1.1 El Microcontrolador: es un circuito integrado que está construido por varios bloques internos que al comunicarse con circuitos periféricos, permite realizar un sin número de operaciones almacenadas en un programa 5 interno . El cual cuenta con instrucciones de funcionamiento que pueden hacer que la operación dependa de datos externos que son ingresados al microcontrolador para realizar una función específica, Un microcontrolador a diferencia de un microprocesador, está totalmente encapsulado con todo lo que necesita para su funcionamiento y solo permite visualizar los pines, desde los cuales se pude sacar y /o ingresar información al microprocesador. Entre los Fabricantes de microcontroladores se destacan: Microchip, Texas Instrument, National Semí-conductors, Intel, Phillips, Zilog, Freescale, Atmel entre otros. Entre cada fabricante se guardan diferencia de operación, programación, tamaño, manejo de periféricos, comportamiento en el ambiente. Los fabricantes dependiendo de la envergadura que tenga el microcontrolador los clasifican por escalas o gamas. La diferencia que más sobresale entre dichas gamas es la del tamaño del juego de instrucciones que entiende el dispositivo. 5 Revista Saber Electrónica Microprocesadores y microcontroladores. De esta manera en los microcontroladores de microchip encontramos tres gamas que difieren en: Número de líneas de entrada y salida. Capacidad de memoria. Operaciones (Instrucciones matemáticas). Tamaño. Juego de instrucciones en las gamas de PIC Tabla 1 Distribución gamas PIC GAMA Cantidad de Serie instrucciones Gama baja 33 12 Gama media 35 16 Gama alta 64 18 Los microcontroladores están conquistando el mundo. Están presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el funcionamiento de los ratones y teclados de los computadores, en los teléfonos, televisores juguetes, horno microondas, frigoríficos, impresoras, módems, el sistema de arranque de un automóvil y otras aplicaciones como instrumentación electrónica, control de sistemas en una nave espacial. Una aplicación típica podría emplear varios microcontroladores para controlar pequeñas partes del sistema. Estos pequeños controladores podrían comunicarse entre ellos y con un procesador central, probablemente más potente, para compartir la información y coordinar sus acciones, como, de hecho, ocurre ya habitualmente en cualquier PC. 2.1.2. Los Microcontroladores de la familia 18F4550: Esta pertenece a la gama alta de Microchip, las características más relevantes de este dispositivo se describen en la tabla 2 y en el diagrama 1. Tabla 2 Características de la familia de PIC18F4550 Fuente Datasheet PIC18F4550 Diagrama 1 Funcionamiento de los microcontroladores de la familia 18F4550 Fuente Datasheet PIC18F4550 2.1.3. Pantalla LCD. Las pantallas de cristal liquido son sistemas para visualización, funcionan por el efecto de la polarización de las moléculas de cristal circulan dentro de dos panel vidrio que deben mantener una separación de unos cuantos micrones, la polarización de estos cristales la causa un impulso eléctrico. Gráfica 1 Esquema Interno pantalla LCD Fuente http://servitotal.com/republica-dominicana/files/2010/12/como-funciona.jpg El LCD modifica la luz que lo incide. Dependiendo de la polarización que se esté aplicando, el LCD reflejará o absorbe más o menos cantidad de luz. En el momento en que una parte de la pantalla recibe la cantidad de voltaje que requiere no reflejará la luz y aparecerá en la pantalla del dispositivo como un segmento oscuro. Las placas de vidrio tienen unos electrodos especiales que definen, los símbolos, formas y caracteres que se visualizarán en la pantalla. Gráfica 2 Pantalla LCD de 128x64 Fuente http://microlose.blogspot.com/2010_07_01_archive.html 2.1.4. Membrana Táctil resistiva: Son sistemas de pantallas resistivas porque entre las capas que la forman hay dos que son muy finas y están hechas de un material conductor, entre estas dos láminas hay una pequeña separación que permite que cuando se presiona alguna parte de la parte exterior de la pantalla se presente un diferencial de corriente, en un punto exacto y las coordenadas donde se llevó a cabo esta acción se pueden calcular. De esta manera se puede llegar a reemplazar un teclado por este tipo de pantallas. Las pantallas táctiles pueden tener entre 4 y 8 hilos según la aplicación para la que se requieran ya que las pantallas de 8 hilos son pantallas de mayor precisión como las que requieren sistemas como las palm, computadores tablet, cámaras fotográficas y algunos celulares. Gráfica 3 Esquema de una Pantalla táctil Fuente http://www.wwteq.com/wwteq_Product_7278740_shenzhen.html Gráfica 4 Presentación pantalla Táctil Fuente http://ellighting.en.ecplaza.net/catalog.asp?DirectoryID=146983&CatalogID=71619 7 Gráfica 5 Esquema de Conexión de una pantalla táctil de 4 hilos Fuente Datasheet TOUCH 1.1.2 Modem GSM: Son dispositivos que asemejan el funcionamiento de un teléfono celular, con la diferencia que estos permiten la interacción de manera directa con un computador o un microcontrolador, mediante la programación basada en comandos AT. La tabla 3 muestra las frecuencias en las que operan los modem GSM. Tabla 3 Frecuencias de la red GSM Banda Nombr Canal Uplink e es GSM GSM 128 850 850 251 849,0 GSM P-GSM 1-124 890,0 900 900 Downlink (MHz) - 824,0 (MHz) - 975 - 900 1023 890,0 R-GSM n/a 876,0 900 GSM18 GSM 512 00 1800 885 GSM19 GSM 512 00 1900 810 - - 880,0 869,0 - 894,0 - 915,0 E-GSM Notas 935,0 925,0 en los EE.UU., Sudamérica y Asia. - 960,0 - Usada La banda con que nació GSM en Europa y la más extendida - E-GSM, extensión de GSM 900 - GSM ferroviario (GSM-R). 935,0 - 921,0 880,0 925,0 1710,0 - 1805,0 1785,0 1880,0 1850,0 - 1930,0 1910,0 1990,0 - - Usada en Norteamérica, incompatible con GSM-1800 solapamiento de bandas. Fuente Datasheet SIM548c por El funcionamiento de un modem se muestra en el diagrama 2. Diagrama 2 Funcionamiento del modem GSM Fuente Datasheet SIM548c_HC 3. METODOLOGÍA Esta propuesta se ajusta a la metodología con enfoque empírico analítico, en cuanto a que se desarrolla dentro del contexto de la experiencia registrada por estudiantes de ingeniería electrónica y el análisis interpretativo de una necesidad, cuyo derrotero evidencia de manera sucinta, el diseño de un prototipo de telefonía móvil, como herramienta de estudio para la facultad de ingeniería de la Universidad de San Buenaventura. Se espera abarcar un nivel de conocimiento de tipo experimental, que busca un nivel de desarrollo para la tecnología móvil. 3.1. LÍNEA DE INVESTIGACIÓN: El proyecto se suscribe en el campo temático del programa de ingeniería electrónica comunicaciones. Este campo temático se relaciona con la sub-línea de la facultad, denominada: Sistemas de información y comunicación. La línea de investigación que se ajusta a la propuesta es la de Tecnologías actuales y sociedad. Esto en razón a que el tema de telefonía celular, constituye uno de los desarrollos tecnológicos más relevantes para la sociedad actual a nivel mundial, tema en el cual ya están inmersos todos los estratos sociales, en un porcentaje muy significativo. Al respecto, el uso de celular es considerado herramienta de comunicación, de trabajo, de contacto social, de control y definitivamente artículo de necesidad. Por todo esto el diseño de un prototipo de celular constituye un aporte a la tecnología actual y a la sociedad en general. 4. DISEÑO INGENIERIL A continuación se presenta el diseño ingenieril que se desarrolló, para llevar a cabo la construcción de un prototipo de comunicación móvil. Para efectos de esta propuesta se conceptualiza y se considera como el funcionamiento básico de un celular las acciones de; realizar y recibir llamadas; enviar y recibir mensajes de texto SMS. Este sistema se divide en tres partes principales que son: la interfaz de usuario, la unidad de control y la unidad de comunicación móvil. La interfaz del usuario la conforma una pantalla Gráfica LCD monocromática y una membrana táctil, que a va a permitir al usuario visualizar e ingresar las instrucciones del celular. La unidad de control está compuesta por un microcontrolador que es el encargado de centralizar los procesos y el flujo de información que tiene el módulo de comunicaciones móviles. La unidad de comunicación móvil es un modem GSM que después de recibir las órdenes del usuario permite que estas instrucciones del usuario se enlacen con la red de telefonía móvil del operador al que corresponda la SIM (Subscriber Identity Module) que se instale en el equipo. La forma en que opera el módulo de comunicaciones móviles se observa en el siguiente diagrama de bloques. El plano esquemático 1 muestra el diseño que se elaboro para la implementación del PCB. Gráfica 1 Diagrama de Bloques diseño ingenieril 4.1. SELECCIÓN DE LOS ELEMENTOS DEL HARDWARE Para lograr el ensamble de un prototipo funcional se realizó un minucioso proceso de selección para cada uno de los elementos que van a hacer parte del módulo de comunicaciones móviles, donde se evaluó la funcionalidad, la forma de acople con el resto de los elementos que requiere el sistema, la facilidad de manejo en razón a la programación e integración con los demás equipos y el costo de cada dispositivo. Este proceso de selección se describe a continuación donde se explica en detalle las características que se tomaron en cuenta para la selección de los principales elementos que hacen parte de este proyecto que son: el microcontrolador, la pantalla Gráfica LCD, la membrana, la membrana táctil, el modem GSM, 4.1.1. Selección de la unidad de control. Esta es un microcontrolador el cual es el eje central en cualquier proyecto moderno de electrónica, es el encargado de gestionar todo lo que está conectado a él. Por esto es muy importante seleccionar cuidadosamente el microcontrolador que se va a implementar, para esto se analizan los siguientes factores la aplicación que se va a desarrollar, los periféricos que se van a usar, la tecnología de los periféricos, los protocolos de comunicación, la cantidad de datos que se va a procesar, el ambiente en que va a trabajar el dispositivo entre otros. Después de investigar y analizar varios microcontroladores de diferentes compañías que desarrollan estos dispositivos, se puede determinar que la mejor opción para la aplicación que se va a desarrollar en este proyecto es el PIC (Programmable Interrupt Controller) 18F16J50, el estudio que lleva a esta conclusión se observa en las tablas 4 y 5. Tabla 4 Análisis de las propiedades de los microcontroladores Campo Velocidad Arquitectura Memoria USB (bits) ROM MC EEPROM RAM Pine Pines s I/O (KB) MICROCHIP Full PIC18F67J50 Speed 8 64 No 3904 49 64 Vel. Vel. Max. CPU de en CPU MIPS 48 12 MHz (USB 2.0) FREESCALE Full 8 MC9S08JM1 Speed 6CGT (USB 2.0) ATMEL Full AT90USB162 Speed 16 No 1024 37 48 48 12 MHz 8 16 512 512 22 32 48 12 MHz (USB 2.0) Tabla 5 Análisis de Propiedades y costos de los microcontroladores Campo MC Comunicació Temporizadore Voltaje de n Digital s Operación Encapsulado Precio Precio Colombia por Cantidad CCP 2V – 3.6V MICROCHIP 2 PIC18F67J50 A/E/USART ECCP 40/PDIP 2 x (SPI/I2C) 10-bit PWM 44/QFN x 40/PDIP 1 x USB US$2.83 44/TQFP FREESCALE 1 x SCI PWM 2.7V MC9S08JM16C 1 x SPI Output 5.5V GT 1 x I2C Compare 1 x USB Input Capture ATMEL 1 x PS/2 PWM AT90USB162 1 x SPI 1 x USB $25.000 2.7V 5.5V – PQFN $25.000 US$3.10 – TQFP $27.000 US$3.70 4.1.2. Selección de la Pantalla Gráfica LCD. La GLCD (Graphic Liquid Crystal Display) que se va a usar tiene la característica de mostrar cualquier carácter alfanumérico, cualquier tipo de gráfico, figura geométrica o diagrama. Esta pantalla tiene un tamaño de 9.3 X7cm y una resolución de128x64 pixeles. Para hacer que el diseño del sistema sea más compacto se tomó como referencia las dimensiones como tamaño máximo para el prototipo. Gráfica 2 Fotografía de la GLCD La GLCD TG12864B-05 tiene 20 pines para configuración, datos y alimentación, que se explican en la tabla 3 que se presenta a continuación. Tabla 6 Distribución de pines de la GLCD Pin Símbolo Tipo de Nivel Descripción 1 Vss 0V Tierra 2 Vdd +5 V Suministro de voltaje lógico 3 Vo -3.5 V Entrada de voltaje para contraste 4 D/I H/L H: Señal de Datos L: Señal de Instrucciones 5 R/W H/L H: Modo Lectura 6 E H/L H: Salida de Datos L: Latch de Datos 7 DB0 H/L Dato Bit 0 8 DB1 H/L Dato Bit 1 9 DB2 H/L Dato Bit 2 10 DB3 H/L Dato Bit 3 11 DB4 H/L Dato Bit 4 12 DB5 H/L Dato Bit 5 13 DB6 H/L Dato Bit 6 14 DB7 H/L Dato Bit 7 15 CS1 H/L Chip Select 1 (U3) [Segmentos 0-63] 16 CS2 H/L Chip Select 2 (U4) [Segmentos 0-127] 17 RET H/L Reseteo de Señal 18 Vee -10 V Voltaje negativo para contraste 19 LED+ +5 V Backlight Ánodo 20 LED- 0V Backlight Cátodo Número Fuente Datasheet TINSHARP 12864B-05 L: Modo Escritura 4.1.2.1. Interfaz Control Buffer de entrada y salida de datos (I/O): Los datos son transferidos por una línea de 8 bits desde DB0 hasta DB7, siendo DB7 el bit MSB (Most Significant bit) y DB0 el bit LSB (Least Significant bit), estos datos sirven tanto para lectura como escritura, que puede generar comandos propios del LCD, las coordenadas de visualización del objeto o el valor del carácter u objeto a visualizar. 4.1.2.2. Registro: Para usar el registro depende de la combinación de los pines R/W y D/I, como se ve en la siguiente tabla y en la figura aparece los tiempos de ejecución de la CPU de la LCD. Tabla 7 Tiempos de ejecución de la LCD D/I R/ OPERACIÓN W 1 1 Lee el dato de salida en el registro de salida de la LCD 1 0 Escribe los datos en el registro en entrada 0 1 LCD Ocupada (Busy Check). Lee el estatus de los datos 0 0 Registro de Instrucciones Fuente Datasheet TINSHARP 12864B-05 Registro de Entrada: El registro de entrada se usa para almacenar los datos temporalmente antes de ser escritos en la RAM de la LCD que es operada por procesos internos controlada por la MPU de la LCD. Registro de Salida: El registro de salida es usado para almacenar los datos temporalmente antes de ser leídos por el microcontrolador que solicite la información a la LCD. En la Gráfica 3 se visualiza los diferentes tiempos que se necesita para configurar las líneas D/I y R/W respecto a E y los datos DB0-DB7. Poder escribir los datos en la LCD, como caracteres, líneas o imágenes se deben tener en cuenta los tiempos de la siguiente gráfica para que sea posible la interacción el microcontrolador y el MPU (Múltiple Process Unit) del LCD. Para poder escribir los datos en la lcd, como caracteres, líneas o imágenes se deben tener en cuenta los tiempos de la siguiente gráfica para que sea posible la interacción el microcontrolador y el MPU (Múltiple Process Unit) del LCD. Gráfica 3 Tiempos de configuración de la LCD Fuente Datasheet TINSHARP 12864B-05 Grafica 4 Tiempos de interacción del Microcontrolador y la LCD Fuente Datasheet TINSHARP12864B-05 Tabla 8 Tiempos de interacción del Microcontrolador y la LCD CARACTERÍSTICAS E ciclo SÍMBO MIN TIP MA UNI LO . O X. T tcyc 100 --- --- ns 0 E ancho nivel alto twhE 450 --- --- ns E ancho nivel bajo twlE 450 --- --- ns E tiempo de subida TI --- --- 25 ns E tiempo de bajada tF --- --- 25 ns Dirección organización temporal tas 140 --- --- ns Tiempo de dirección en espera tah 10 --- --- ns Tiempo tdsw 200 --- --- ns Tiempo de retarde de datos tddr --- --- 320 ns Tiempo de datos en espera tdhw 10 --- --- ns tdhr 20 --- --- ns de organización de datos (Escritura) Tiempo de datos en espera (Lectura) Fuente Datasheet TINSHARP 12864B-05 Según las características de tiempo dadas por el fabricante se diseña el programa del microcontrolador con diferentes retardos para garantizar la buena configuración del LCD; es decir como ejemplo tenemos el primer tiempo de E (Enable) según la gráfica es twl tiene que estar en estado bajo como mínimo 450ns al mismo tiempo que la señal de R/W debe tener un flanco de bajada de 140ns. 4.1.2.3. Funcionamiento del circuito para la pantalla. En la Gráfica 5 se muestra el diagrama de bloques que detalla el funcionamiento y conexión general de la GLCD con el microcontrolador, se conecta las líneas de control al puerto E y las líneas de datos al puerto D del microcontrolador; Los potenciómetros digitales se usan para el contraste e intensidad del back light de la LCD. Gráfica 5 Conexión de la LCD Fuente Datasheet TINSHARP 12864B-05 El conversor de voltaje se usa para pasar el voltaje del potenciómetro digital a voltaje negativo, ya que según las especificaciones de la GLCD el voltaje típico del Pin Vo (Contraste) es de -3.5V. 4.1.3. Implementación de la Pantalla Táctil. Un panel táctil resistivo está compuesto por dos láminas rígidas transparentes, que tienen una capa resistiva en sus caras internas. La resistencia de estas capas no excede normalmente de 1Kohm (según las especificaciones del fabricante), los lados opuestos de las láminas disponen de contactos para acceder a un cable plano. En la gráfica 6 está la ubicación y la conexión física de los pines del panel táctil llamados “derecha”, “arriba”, “izquierda” y “abajo”. El procedimiento para determinar las coordenadas de la posición del panel que ha sido presionada, puede dividirse en dos pasos.; el primero es la determinación de la coordenada X y el segundo el de la coordenada Y del punto el cual fue pulsado. Por esto para determinar la coordenada X, es preciso conectar el pin “izquierdo” de la superficie X a masa y el pin “derecho” a la fuente de alimentación, esto permite obtener un divisor de tensión presionando el panel táctil. El valor de la tensión obtenida en el divisor se puede leer en el pin “abajo” de la superficie Y. La tensión variará en el rango de 0V a la tensión suministrada por la fuente de alimentación (en este caso 3.3V) depende de la coordenada X. Si el punto está próximo al pin “izquierdo” de la superficie X, la tensión estará próxima a 0V. Gráfica 6 Esquema de funcionamiento de la pantalla táctil Fuente 1 Datasheet TOUCH Para conectar este panel táctil al microcontrolador, se usaron los pines RA0, RA1, RA2 Y RA4 para la conexión de lectura Y, lectura X, drive A y drive B respectivamente; para el buen funcionamiento es preciso crear un circuito para el control del panel táctil, gráfica 7. Por medio de este circuito, el microcontrolador conecta los contactos adecuados del panel táctil a masa y a la tensión de alimentación (como describimos anteriormente) para determinar las coordenadas X e Y. El pin “abajo” de la superficie Y, y el pin “izquierdo” de la superficie X están conectados al conversor A/D del microcontrolador. Las coordenadas X e Y se determinan midiendo la tensión en los respectivos contactos. Teniendo en cuenta que la superficie del panel táctil es ligeramente mayor que la del LCD gráfico, en el caso de querer mayor precisión en la determinación de las coordenadas, es preciso incluir una rutina de programación de calibración del panel táctil. Gráfica 7 Conexión de la membrana táctil al microcontrolador Fuente Datasheet TOUCH Las señales de conexión del panel táctil se observan en la tabla 6. Tabla 9 Conexión Del Panel Táctil EJE X Derecha Vdd Arriba N.C. Izquierda GND Abajo Señal Análoga EJE Y Derecha N.C. Arriba Vdd Izquierda Señal Análoga Abajo GND Fuente Datasheet TOUCH Para que el microcontrolador pueda reconocer en qué posición ha sido pulsada la pantalla hay que garantizar que las señales de la tabla 10 se cumplan se usa el circuito de la gráfica 7, los pines del microcontrolador drive A y drive B (Estos son salidas de señal lógica del microcontrolador), y los transistores que sirven como conmutadores de la señal de alimentación de los ejes X y Y. Como se puede ver en la tabla 7, para que se pueda leer el eje X del panel táctil es necesario que el pin RA2 del microcontrolador tenca un nivel lógico de 1 y RA3 tenga un nivel lógico de 0, así mismo para leer el eje Y, debe tener RA2 un valor lógico de 0 y RA3 de 1. Tabla 10 Estados de la pantalla táctil y el microcontrolador Drive A Drive B Entrada Panel Pin RA2 Pin RA3 Derecha Arriba Izquierda Abajo 0 0 N.C. Vdd ADC ADC 0 1 N.C. Vdd ADC GND 1 0 Vdd N.C. GND ADC 1 1 Vdd N.C. GND GND Fuente Datasheet TOUCH En las siguientes figuras vamos a ver el funcionamiento individual de cada uno de los pines del panel de control. En la gráfica 8 se ve el circuito de control del pin 1 es decir el que controla la “derecha” de la superficie X del panel táctil, al ser enviado un 1 lógico por el pin RA2 del microcontrolador este hace que el transistor Q3 entre en conducción y así que genere en la entrada del transistor Q2 un nivel lógico 0 y deje conducir el voltaje +3.3V hacia el panel táctil. En contra posición al tener un nivel lógico de 0 en el pin RA2 este hará que el transistor Q3 no entre en conducción y así la señal de +3.3V entre en la base del transistor Q2 y no conmute la señal de alimentación hacia el panel táctil. Gráfica 8 circuito de control "derecha" de la pantalla táctil En la gráfica 9 está el circuito de control de la parte “arriba” de la superficie x del panel táctil, al generar un nivel lógico 0 por el pin RA2 este hace que el transistor conmute y entre en conducción asegurándole en la salida el voltaje de +3V3, cuando el pin del microcontrolador RA2 este con un nivel lógico de 1 este no conmuta y el pin del panel táctil queda al aire o no conectado. Gráfica 9 circuito de control "arriba" de la pantalla táctil Para el control del pin “izquierda” del la superficie Y, está el circuito de la gráfica 10, este circuito sirve para conmutar entre tierra y la salida del variador resistivo, cuando el pin RA2 está en un nivel lógico de 1 el transistor Q5 entra en conducción colocando el pin a tierra deshabilitando el ADC, en consecuencia cuando es aplicado un nivel bajo en el pin RA2 el transistor Q5 no conmuta y activa el ADC, la resistencia interna del panel táctil hace un divisor de voltaje con la resistencia R19 para generar la señal que va a entrar al microcontrolador por el puerto RA1 (puerto para ADC) y así determinar la posición el cual se ha pulsado en el eje Y. En la figura x esta el control del pin “abajo” del panel táctil el funcionamiento es igual que el del pin “izquierda”, la única diferencia es el puerto del microcontrolador que lo activa para esta caso se usa el puerto RA3 y la salida análoga va ser al puerto RA0. Gráfica 10 circuito de control "Izquierda" de la pantalla táctil Gráfica 11 circuito de control "abajo" de la pantalla táctil 4.1.4 Implementación Del Modem GSM. El módem GSM tiene la función de realizar la comunicación con la red celular, se escogió la tecnología GSM y SMS por ser fácil de implementar, más económica ya que toda la infraestructura de la red ya está montada y son las tecnologías básicas de la telefonía celular. El módem GSM que usamos en este proyecto es el SIM548C (gráfica 12) de la empresa SimCom que tiene las siguientes características: Solución GSM/GPRS/GPS Quad Band (850/900/1800/1900 MHz) Potencia de Transmisión: - Clase 4: (2W a 850/900 MHz) Clase 1: (1W a 1800/1900 MHz) Control vía Comandos AT Voltaje de Alimentación (Parte GSM): 3.4 a 4.5 V Voltaje de Alimentación (Parte GPS): 3.3 V Manejo de Voz, Fax, Datos y SMS 2 Puerto Serial RS232 (GSM/GPRS) 2 Puertos Seriales RS232 (GPS) Interfaz para LCD Dimensiones: 50 mm x 33 mm x 8.8 mm Características GPS: Receptor GPS SiRFstar III Gráfica 12 Modem GSM SIM548C Fuente 2 Datasheet SIM548_HD_V1.03 El diagrama funcional de este módem se ve en la Gráfica 13, el cual se puede ver el núcleo GSM y el GPS del módem SIM548C el cual se observa las funciones de entrada y salida que tiene como es la UART, LCD, SIM, etc. En los bloques del módem se observa un motor GSM que es un chip encargado de los protocolos GSP, un chip de radio frecuencia para poder enviar los datos a estación base y la antena transmisora. Gráfica 13 Diagrama Funcional del Modem Fuente Datasheet SIM548_HD_V1.03 Gráfica 14 Comunicación serial del modem Fuente Datasheet SIM548_HD_V1.03 4.1.4.1. Configuración Del Parlante Gráfica 15 Configuración del Parlante 4.1.4.2. Configuración Del Micrófono Gráfica 16 Configuración del micrófono 4.1.4.3. Configuración Del Manos Libres Gráfica 17 Configuración del Parlante 4.1.4.4. Configuración Interfaz De Audio Tabla 11 Configuración del la interfaz de audio Fuente Datasheet SIM548_HD_V1.03 4.1.5. Configuración del Oscilador: A continuación se muestra el esquema del módulo del oscilador indicando la fuente utilizada (oscilador primario) y los valores que toman los distintos bits de estos registros para conseguir, a partir de un cristal de 16 MHz, una velocidad en el módulo USB de 48 MHz (USB 2.0). En la tabla 14 observamos los valores y registros necesarios para conseguir las frecuencias deseadas para el reloj del sistema y para el reloj del USB, entre estos es necesario configurar el PLLEN, PLLDIV2:PLLDIV0, CPDIV1:CPDIV0, entre otros. El módulo USB dispone de un regulador interno de 3,3 V para suministrar tensión al transceiver interno. Esto se debe a que USB utiliza 3,3 V para las comunicaciones, por lo tanto, mientras el resto del micro puede utilizar una alimentación Vdd, el transceiver debe alimentarse de una fuente distinta (Vusb). El regulador se controla a través del flag VREGEN. Cuando está habilitado el voltaje es visible en el pin Vusb. Si el regulador está deshabilitado, una tensión de 3,3 V debe ser suministrada externamente a través de Vusb. Hay que tener en cuenta que las resistencias de pullup internas únicamente pueden utilizarse si el transceiver interno está activo. Como se ha comentado anteriormente, los microcontroladores de la familia 18F utilizan dos fuentes de reloj. Para el módulo USB se utiliza el oscilador primario, sin embargo, el resto del micro puede utilizar cualquier otra fuente. Dependiendo de si utilizamos USB de baja velocidad o de velocidad completa, la señal de reloj del módulo USB deberá ser de 6 MHz o de 48 MHz, respectivamente. Pese a la poca velocidad necesaria, nuestro dispositivo trabajará a velocidad completa, así que el reloj del módulo USB deberá ser de 48 Mhz. Se ha decidido usar la velocidad completa para tratar al circuito como un dispositivo actual. De esta manera, si fuera necesario manejar un gran volumen de datos a gran velocidad, solo sería necesario modificar el código de los programas firmware y software. En la siguiente tabla se muestran los modos posibles de funcionamiento del oscilador del microcontrolador PIC: Tabla 12 Conexión del oscilador Modo Descripción Tabla 13 Conexión del oscilador ECPLL Entrada de reloj externo, el PLL en este caso se puede habilitar o deshabilitar, CLKO en RA6, la señal de entrada de reloj puede ser aplicada al pin RA7 EC Entrada de reloj externo, el PLL siempre esta deshabilitado, CLKO en RA6, la señal de entrada de reloj puede ser aplicada al pin RA7 HSPLL Alta velocidad del cristal resonador, PLL siempre está habilitado, el cristal se conectara entre los pines RA6 y RA7 HS Alta velocidad del cristal resonador, PLL siempre esta deshabilitado, el cristal se conectara entre los pines RA6 y RA7 INTOSCPLL Oscilador interno, el PLL se puede habilitar o deshabilitar, CLKO O en RA6, función en RA7. Puede usar el postscaler. INTOSCPLL Oscilador interno, el PLL se puede habilitar o deshabilitar, CLKO en RA6, función en RA7 y RA6. Puede usar el postscaler. INTOSCO Oscilador interno, el PLL siempre esta deshabilitar, CLKO en RA6, función en RA7. Puede usar el postscaler y la salida del INTOSC. INTOSC Oscilador interno, el PLL siempre esta deshabilitar, CLKO en RA6, función en RA6 y RA7. Puede usar el postscaler y la salida del INTOSC. Fuente Datasheet oscilador De los doce modos de funcionamiento del oscilador, sólo estos ocho pueden utilizarse para USB y de estos se ha optado por HSPLL, con un cristal de 16 Mhz. Necesitaremos el PLL para obtener, de los 16MHz del cristal oscilador, los 48MHz del reloj del sistema. Al utilizar esta frecuencia el módulo USB tendrá un reloj de 48 MHz, utilizando únicamente el oscilador primario. Según el datasheet del microcontrolador, siguiente tabla, los valores de los condensadores que acompañan al cristal deben ser de entre 15 y 22 pF. Se instalaran unos condensadores de 22 pF. Para la configuración correcta en software de estas funciones se debe ver la Tabla 14. Tabla 14 Configuración del oscilador Tipo oscilador HS Frecuencia cristal Valores de Capacitores C18 C19 4 MHz 33 pF 33 pF 8 MHz 27 pF 27 pF 16 MHz 22 pF 22 pF 20 MHz 15 pF 15 pF Fuente Datasheet Oscilador Plano 1 Esquemático conexión del oscilador Fuente 3 Datasheet Oscilador 4.1.6. Puerto USB: protocolo de comunicación Universal Serial Bus comúnmente llamado USB es un sistema de conexión que surge como alternativa al estándar PCI, serial y paralelo que garantiza mayor velocidad de transferencia de datos. La conexión por USB son sistemas de mayor versatilidad y flexibilidad para instalación. En este proyecto se instalo un puerto USB de 5 pines por el tamaño, este puerto no se programa dentro del desarrollo del presente proyecto queda disponible para que futuras aplicaciones. Este puerto es una alternativa de alimentación para el prototipo que se implemento. Plano 2 Conexión puerto USB 4.1.7. Micro SD. Es sabido que la memoria del microcontrolador es muy limitada y no se puede guardar gran tamaño de datos, para la aplicaciones modernas es necesario una memoria externa para darle mayor robustez al celular, por eso decidimos incluir una memoria micros, que es conectado al microcontrolador por medio de una comunicación SPI, esta podrá ser usada para descargar gran cantidad de datos desde el pc por medio del puerto usb, guardar datos desde el microcontrolador y en un mayor tamaño guardar datos de internet que vienen desde el módem conectado a la red GPRS. Plano 3 Conexión Micro SD 4.1.8. Diseño de la Fuente de Alimentación del Circuito. La fuente de alimentación del módulo. Es la etapa encargada de energizar cada componente para su correcto funcionamiento, para esto se deben tener en cuenta las variables de corriente y el voltaje de los diferentes componentes y del total del circuito, en la siguiente tabla 16 se visualiza el consumo de corriente máxima provisto por el fabricante en la hoja de especificaciones de cada uno de los componentes activos del circuito. Tabla 15 Conexión de la Fuente de Alimentación Nombre Ubicación Valor Corriente Valor Voltaje SMLFT0805SRCTR LED4 20 mA +1.7 V MIC29302BU IC3 37 mA +5 V LCD12864_KS0108 IC2 6 mA +5 V DS1804U IC5 400 uA +2.7V hasta +5.5V DS1804U IC6 400 uA +2.7V hasta +5.5V MAX1044CSA IC7 200uA V+ MAX238CGW IC8 15 mA -0.3V hasta +6V SMLFT0805SRCTR LED2 20 mA +1.7 V MMBT2907 Q2 Max: 600 mA +60Vce MMBT2907 Q4 Max: 600 mA +60Vce MMBT2222A Q3 20 mA (Max: 600 Max: +75Vce mA) MMBT2222A Q5 20 mA (Max: 600 Max: +75Vce mA) MMBT2222A Q6 20 mA (Max: 600 Max: +75Vce mA) MMBT2222A Q10 20 mA (Max: 600 Max: +75Vce mA) SMLFT0805SRCTR LED3 20 mA +1.7 V microSD microSD 500 mA +2.7V hasta +3.6V SIM548C U$1 Max: 3ª -0.3V hasta +3.3V MMBT2222A Q7 20 mA (Max: 600 Max: +75Vce mA) MMBT2222A Q8 20 mA (Max: 600 Max: +75Vce mA) MMBT2222A Q9 20 mA (Max: 600 Max: +75Vce mA) SMLFT0805SRCTR LED1 20 mA +1.7 V LM4903 U$2 10mA +6V SIMCARD SM1 50uA +3V ESDA6V1-5SC6 U$3 1 uA +3V PIC18F67J50 IC1 300 mA +3.6V Plano 4 Fuente de alimentación 4.2. DISEÑO DEL SOFTWARE 4.2.1. Configuración microcontrolador. Los pines E/S de propósito general pueden considerarse como los periféricos más simples. Permiten que el PIC monitoree y controle otros dispositivos. Para añadir flexibilidad y funcionalidad al dispositivo, algunos de los pines de los puertos pueden cumplir funciones de diferentes periféricos. En general, cuando se habilita un periférico, ese pin no puede ser utilizado como un pin E/S de propósito general. El sentido de los datos (entrada o salida) se controla por el registro TRISx (siendo x el nombre del puerto A, B, C, D, E, F o G). El registro PORTx es el receptor (latch) de los datos de salida. Cuando se lee un puerto, el PIC lee los niveles presentes en los pines (no en el latch). Esto significa que debe ponerse mucha atención a los comandos leer, modificar y escribir aplicados a los puertos y al cambiar el sentido de circulación en un pin de entrada a salida. Todas las operaciones de escritura (BSF, BCF) son de este tipo. Por lo tanto, la escritura en un puerto implica que los pines son leídos, este valor es modificado, y luego escrito en el latch de datos. Este tipo de instrucciones se debe emplear con precaución en puertos en los que se han definido entradas y salidas. Por ejemplo, una operación BSF (Bit Set f) en el bit5 del puerto A (Puerto donde se ubica un Led indicador de estado del sistema) ocasionará que los ocho bits de este puerto sean leídos. Luego se efectúa la operación BSF en el bit5 y los ocho bits se escriben en el latch de salida. Si otro pin (por ejemplo el pin0 correspondiente al bit0) está definido como entrada en este momento, la señal de entrada del pin será leída y reenviada al latch de este pin, sobrescribiendo su contenido previo. Mientras el pin permanece como entrada, no hay problema. Sin embargo, si el pin0 se cambia para que opere como salida, el contenido del latch puede ser desconocido. Un pin configurado como salida y que se encuentre en alto o bajo no debe ser polarizado externamente al mismo tiempo con el propósito de cambiar su nivel lógico. Las altas corrientes de salida que resultan pueden dañar el chip. Se recomienda que al inicializar un puerto, el registro PORTx se inicialice primero, y luego el registro TRISx, ya que los valores del latch no están definidos al encendido. 4.2.1.1. Puerto A y F: El puerto A es un puerto bidireccional de 8 bits que puede ser programado a través de 5 registros: PORTA (datos de entrada/salida), TRISA (sentido de circulación de los datos), LATA (registro datos latch), ADCON0 (configuración de pines análogos y digitales) y CVRCON (control de la referencia de voltaje). Al programar un bit de TRISA con un valor de 1 se consigue que el pin correspondiente del puerto A trabaje como entrada (es decir, coloca el driver de salida en alta impedancia). Al programar un bit de TRISA con 0 se logra que el pin correspondiente del puerto A opere como salida (es decir, coloca el contenido del latch de salida en el pin seleccionado). La lectura del registro PORTA lee el estado de los pines, mientras que una escritura en él, escribe en el latch del puerto. Para este circuito se recomienda la siguiente secuencia de inicialización de este puerto: escribir 0 en el registro PORTA, escribir 0x04 en el registro ADCON0 para configurar los pines RA<3:0> como E/S digital o como entrada análoga y escribir el resto en el registro TRISA los bits de sentido de circulación (1=entrada, 0=salida). Al igual que el puerto A el puerto F tiene los mismos registros de configuraciones sólo que en este caso usará TRISF, LATF y PORTF. 4.2.1.2. Puerto B: Este es un puerto bidireccional de 8 bits. El registro de sentido de datos es TRISB. Al programar un bit de TRISB con un valor de 1 se consigue que el pin correspondiente del puerto B trabaje como entrada (es decir, coloca el driver de salida en alta impedancia). Al programar un bit de TRISB con 0 se logra que el pin correspondiente del puerto B opere como salida (es decir, coloca el contenido del latch de salida en el pin seleccionado). Cada pin de este puerto tiene un pull up interno (200 uA aproximadamente). El bit #RBPU del registro INTCON2<7> puede activar o desactivar esta función. Para este módulo se recomienda no usarlo. Cuando el puerto se configura como salida las pull ups se desactivan automáticamente y también cada vez que se enciende el PIC (Power On Reset POR). Este puerto se puede programar por medio de 4 registros: PORTB, LATB, TRISB, INTCON2 (activar/desactivar las pull ups). 4.2.1.3. Puertos C, D, E y G: El PIC18F67J50 posee cinco puertos con un total de 49 pines configurables como entrada o salida, lo que le brinda a este microcontrolador una gran ventaja con respecto a otros PICs que tienen un número de pines relativamente reducido. La configuración de los puertos C, D, E y G se realiza de forma similar, con los registros PORTx, LATx y TRISx; los registros TRISx tienen todos sus bits en 1 después de cualquier reset y no cambian al despertar por WDT o interrupción, por lo tanto los puertos A, B, C, D, E y G están configurados como entradas inicialmente. 4.2.1.4. Valores máximos absolutos. En la hoja de especificaciones del fabricante se indican los valores máximos para las intensidades de corriente de los pines del microcontrolador (tabla 17), los cuales han sido tomados para tener en cuenta en el diseño del módulo. Dado que algunos periféricos trabajan a 5V y otros a 3.3V este microcontrolador es ideal, en las líneas de algunos de los puertos son capaces de recibir niveles TTL cuando el voltaje de alimentación aplicado en VDD es de 3.3V, y a su vez son capaces de enviar señales de voltaje iguales a 3.3V que son ideales para no dañar los componentes que no manejen TTL. Tabla 16 Configuración Inicial del Microcontrolador Pines Descripción Valor Vdd Voltaje de Vdd con respecto a -0.3V hasta 4V Vss ENVREG=1 Vdd Máxima corriente 250 mA Vss Máxima corriente 300 mA PortB y PortC Máxima corriente de Salida 25 mA PortD y PortE Máxima corriente de Salida 8 mA PortA, PortF y PortG Máxima corriente de Salida 2 mA Todos los puertos Máxima corriente de entrada 200 mA Puertos con función Análoga Voltaje máximo y mínimo Max:Vdd y Min: 0.25Vdd+0.8V Puertos Digitales Voltaje máximo y mínimo Max:5.5V Min:0.25Vdd+0.8V y 1.1.2.1 Pines de E/S del módulo celular. En la tabla 18 se relaciona los pines del microcontrolador con el periférico conectado a este para tener una idea global de cómo va ser la distribución y configuración que va tener el módulo. Los pines se escogieron según la tabla 17, dependiendo del consumo de corriente, también dependiendo del voltaje que maneje, si es TTL o 3.3V o ADC o por tipo de protocolo de comunicación (RS232, USB, SPI, etc.), siguiendo esos criterios se escogieron los siguientes pines. Tabla 17 Configuración de pines de E/S Pin Función Config. Tris I/O Tipo I/O Descripción 64 RE2 0 O D Pin RESET de la GLCD 63 RE3 0 O D Pin C/D de la GLCD 62 RE4 0 O D Pin R/W de la GLCD 61 RE5 0 O D Pin E de la GLCD 60 RE6 0 O D Pin CS1 de la GLCD 59 RE7 0 O D Pin CS2 de la GLCD 58 RD0 0 O D Pin de datos DB0 de la GLCD 55 RD1 0 O D Pin de datos DB1 de la GLCD 54 RD2 0 O D Pin de datos DB2 de la GLCD 53 RD3 0 O D Pin de datos DB3 de la GLCD 52 RD4 0 O D Pin de datos DB4 de la GLCD 51 RD5 0 O D Pin de datos DB5 de la GLCD 50 RD6 0 O D Pin de datos DB6 de la GLCD 49 RD7 0 O D Pin de datos DB7 de la GLCD 48 RB0 0 O D Pin U/D del potenciómetro digital 47 RB1 0 O D Pin INC del potenciómetro digital 46 RB2 0 O D Pin CS del potenciómetro digital 45 RB3 0 O D Pin U/D del potenciómetro digital 44 RB4 0 O D Pin INC del potenciómetro digital 43 RB5 0 O D Pin CS del potenciómetro digital 2 RE0 1 I D Pin DTR puerto serial DB9 1 RE1 0 O D Pin DCD puerto serial DB9 3 RG0 1 I D Pin RTS puerto serial DB9 4 RG1/TX2 0 O D Pin TXD puerto serial DB9 5 RG2/RX2 1 I D Pin RXD puerto serial DB9 6 RG3 0 O D Pin CTS puerto serial DB9 8 RG4 0 O D Pin RL puerto serial DB9 14 RF4/D+ x I/O D Pin datos D+ USB 15 RF3/D- x I/O D Pin datos D- USB 21 RA3 0 O D Pin Drive B TouchScreen 22 RA2 0 O D Pin Drive A TouchScreen 23 RA1/AN1 1 I A Pin Lee X TouchScreen 24 RA0/AN0 1 I A Pin Lee Y TouchScreen 34 RC3/SCK1 0 O D Pin SCK de la microSD 35 RC4/SDI1 36 I D Pin SDI de la microSD RC5/SDO1 0 O D Pin SDO de la microSD 16 RF2 0 O D Pin CS de la microSD 13 RF5 1 I D Pin SD Detect de la microSD 11 RF7 1 I D Pin DTR puerto serial MODEM 12 RF6 0 O D Pin DCD puerto serial MODEM 30 RC0 1 I D Pin RTS puerto serial MODEM 32 RC7 0 O D Pin TXD puerto serial MODEM 31 RC6 1 I D Pin RXD puerto serial MODEM 33 RC2 0 O D Pin CTS puerto serial MODEM 29 RC1 0 O D Pin RL puerto serial MODEM 7 /MCLR x x x Pin para la programación ICSP - MCLR 42 RB6/PGC x x x Pin para la programación ICSP - PGC 37 RB7/PGD x x x Pin para la programación ICSP - PGD 27 RA5 0 O D Pin para LED indicador 28 RA4 0 O D Pin para POWERKEY Módem la tabla Para 1 18, se usa la siguiente [I:Input],[O:Output],[D:Digital],[A:Analogo],[x:No importa]. nomenclatura: Diagrama 3 Algoritmo del Microcontrolador En las secciones anteriores se vio el diseño del software que tendrá los diferentes módulos que se estructurarán en un programa principal para cumplir la función requerida por el sistema en este caso la realización de poder lograr hacer llamadas y usar servicios de mensajería SMS, en los módulos de cada componente usado por el prototipo siempre abra una inicialización, es decir, poner en estado inicial las variables que sean necesarias, configurar puertos necesarios según cada dispositivo como entradas o salidas, y todo lo que necesite ser declarado para el buen funcionamiento del conjunto, como se indica en el siguiente diagrama el programa principal o main del microcontrolador debe empezar con estas rutinas; luego de realizar las rutinas de inicialización se empezará cargando la interfaz con el usuario, imágenes, botones y demás componentes que ayuden al usuario a explorar las diferentes funciones del sistema celular; este sistema no es muy diferente al que se ve hoy en día en su teléfono celular con el cual podemos compara, tendrá un tiempo entre el que usted prende el equipo y se configurara, luego muestra un menú el cual será la presentación donde le da al opción de irse al menú o ver contactos o tenga cualquier pestaña que lo lleve a explorar este. 4.2.1.6. Prototipo Celular: En el prototipo del celular como cualquier celular unos puertos de entrada y salida de datos, en el cual podemos encontrar puerto serial, puerto USB y tarjeta de memoria micro SD. Gráfica 5 Esquema de funcionamiento del sistema en general es la posibilidad de hacer pruebas al módem GSM SIM548C, por medio de una computadora provista de un software para la comunicación con otros equipos o módems, de interfaz RS232 como el Hyperterminal. El conector SUBD-9 no está conectado físicamente con el módem GSM, si no que se habilita la comunicación por medio del microcontrolador, en la pantalla, hay una opción para habilitar el puente de comunicación entre el pc y el módem, para hacer pruebas manualmente; claro está que no es la única opción que podría tener este puerto, podría ser programado para interactuar con otras tarjetas electrónicas, como sistemas de seguridad, sistemas de adquisición de datos, equipos OEM y cualquier dispositivo que use la interfaz RS232, en el caso de este tesis solo se usará para pruebas con el Hyperterminal del computador. En el anexo B se muestra el diagrama esquemático del circuito que se implemento. 4.2.2. Diseño de Software pantalla gráfica. Antes de realizar firmware de microcontrolador primero se debe realizar la respectiva planeación del diseño de la programación, en la GLCD tenemos dos principales funciones que debemos implementar a la hora de realizar el diseño final, la primera es la inicialización de la pantalla GLCD, es decir enviar todos los datos de configuración a los diferentes registros de la pantalla para su correcto funcionamiento como se vio en la sección anterior y también se debe diseñar la rutina que debe visualizar los botones, textos , imágenes y cualquier objeto que vaya ayudar al usuario a interactuar con la pantalla y el táctil de la pantalla. 4.2.2.1. Función “Inicialización GLCD”. Para poder mostrar caracteres o imágenes en la GLCD es preciso inicializar esta función. Esta rutina lo que hace es que por medio de registros internos de la pantalla, esta configurará realizando una subrutina programada en el microcontrolador como lo explica el siguiente algoritmo. Primero, toda la configuración de los puertos del microcontrolador asignados a la GLCD, se configurarán según el caso y función como entrada o salida; luego iniciará el envío de datos a los registros de la pantalla, para poder tener una correcta visualización y por último se limpiará todo el estado de la memoria RAM de la GLCD. Esta función sólo se va a llamar una vez en todo el programa, cada vez que se inicie el sistema. Diagrama 4 Inicialización de la LCD 4.2.2.2. Función “Dibuja Menú”. Esta función a diferencia de la anterior se llamará cada vez que sea necesario mostrar diferentes menús, figuras, imágenes, instrucciones o mensajes que se requiera mostrar al usuario; esta rutina va hacer un barrido en toda la pantalla con los elementos insertados para la interfaz del usuario del sistema como por ejemplo botones. Primero se llamará una función en el cual se dará la posición X y Y de la figura a dibujar, y luego se configura qué clase de figura se quiere insertar. Diagrama 5 Función Dibuja Menú 4.2.3. Comunicación con el computador por medio del puerto serial DB9. El prototipo va tener la posibilidad de tener un puerto de comunicaciones serial (interfaz RS232) con un conector D-Sub de 9 pines, el cual podrá ser conectado a otros dispositivos que usen el mismo protocolo o a un PC, ya sea para interactuar con el microcontrolador o trabajar con el módem GSM por medio del microcontrolador. Para poder probar el módem GSM se puede introducir los comandos AT a través del software especializado como el hyperterminal. Por ser un intercambio de datos a 115200 baudios se ha implementado un handshaking para asegurar la correcta lectura del dato tanto en el receptor como en el transmisor. Este control de errores consiste en devolver cada byte que se recibe, de tal manera que el emisor puede comprobar que el dato es leído correctamente y puede proceder al envío del siguiente. Se usa el circuito integrado MAX238CGW para regular los niveles de tensión con estándar en la industria y se emplea como interfaz entre los niveles TTL y RS232 y requiere únicamente una fuente de +5V para su operación. Para generar los niveles de +12V y -12V necesita 4 capacitores de 1,0 uF. Dispone de cuatro entradas TTL, así como cuatro salidas RS232 (gráfica 6). transferencia de datos a una velocidad máxima de 120 kbps. Grafica 6Diagrama de Bloques de la comunicación serial con el PC Puede realizar la 1.1.2.2 Diseño De Programa Para Comunicación Serial. Para usar el puerto serial se van a usar tres principales funciones UARTx_Init, UARTx_Read y UARTx_Write. Con la primera función se configura los puertos de entrada y salida de los puertos en la comunicación serial y a también se configura la velocidad de intercambio de datos; la segunda función sirve para leer en el puerto los datos y la última función sirve para enviar los datos al puerto. En este caso se probó retornando el valor que le entra, es decir cada vez que recibe un carácter en el buffer del puerto este toma su valor y lo pone en el registro de transmisión como se ve en el diagrama 7. Diagrama 6 Algoritmo para la comunicación serial 4.2.4. Diseño de Programación para la Membrana Táctil. La programación consiste en mostrar los menús en una pantalla LCD gráfica, con las diferentes funciones del teléfono celular, además conmutar de encendido a apagado del panel táctil (control del panel táctil) y leer los valores del conversor A/D que representan realmente las coordenadas X e Y de la posición. Una vez determinadas las coordenadas, es posible decidir qué es lo que deseamos que haga al microcontrolador. Para ilustrarlo, podemos dar un vistazo a la diagrama 8. Diagrama 7 Algoritmo Para La Membrana Táctil 4.2.5. Diseño y Programación del Modem. 4.2.5.1. Inicialización Modem: Al encender el sistema se debe inicializar cada uno de los componentes del sistema entre ellos el módem GSM (SIM548C). Se configurará los pines según el caso como entrada o salida para el puerto de comunicación serial con interfaz RS232 para habilitar la comunicación entre el microcontrolador y el módem, y se debe inicializar el led testigo que mostrará si hay estado de la red GSM. Se configurará los periféricos del modem como buzzer, micrófonos, parlantes tarjeta sim y demás dispositivos que deban inicializarse como por ejemplo el siguiente comando AT+CPIN?; si se ha reconocido y habilitado la tarjeta SIM, se le comunicará mediante la leyenda +CPIN:READY. Si su SIM está bloqueado con password, recibirá un mensaje indicando si debe ingresar PIN o PUK para habilitarlo (+CPIN: SIM PIN o +CPIN: SIM PUK). El LED GSM_NET parpadea cerca de una vez por segundo hasta tanto se registra en la red celular, momento a partir del cual pasa a parpadear cerca de una vez cada cuatro segundos. Este puede (y de hecho lo hace) demorar varios segundos, como cuando se enciende cualquier aparato de telefonía celular. A partir de este momento, ya puede establecer comunicaciones que se verá en las siguientes funciones. Diagrama 8 Inicialización del Modem 4.2.3.2. Realización de llamadas. Se diseñó la siguiente función para ser usada luego de haber inicializado el módem el cual puede ser activado en cualquier momento, en este caso al hacer clic en un botón, llamará esta rutina. Se realizará la llamada luego de haber insertado un número de celular y ser guardada en una variable, dicha variable se ingresará por medio del ATD<número>; donde <número> es el número de teléfono al que usted desea llamar, por ejemplo ATD123456; cuando termina la comunicación se enviará el comando ATH0 o se esperará que termine la llamada. Diagrama 9 Realización de llamadas 4.2.3.3. Recibir Llamadas de Voz. Al recibir una llamada entrante, el módem enviará al microcontrolador la palabra RING, el equipo esperará si el usuario presionará la tecla de contestar o de rechazar la llamada. Si decide contestar se le enviará al módem el siguiente comando ATA; si no terminara la rutina, puede cortar haciendo click en el botón de colgar igualmente. Diagrama 10 Recepción de Llamadas 4.2.3.4. Envío De Mensajes. Para envío de un mensaje a un número determinado, primero debemos tener una variable el cual tendrá el número al que enviaremos el mensaje se ingresarán los comandos para esta función en este caso ingresando el comando AT+CMGS="<Numero>", a lo cual recibiremos una respuesta (carácter '>'), para luego ingresar el mensaje, la respuesta al comando es el ID del mensaje, terminado con el clásico OK. Diagrama 11 Envió de Masajes de Texto 4.2.3.5. Recepción de Mensajes. Según el estudio realizado anteriormente se puede determinar el funcionamiento de los módems y así poder diseñar el software, al recibir un SMS, el módulo lo informa mediante un mensaje:+CMTI: "SM",<indice>, de modo que para leerlo simplemente debemos ingresar el comando AT+CMGR=<indice>. El diagrama siguiente muestra la secuencia de recepción del mensaje en el software a diseñar, al enviar el comando se espera la confirmación del mensaje realizado y se mostrara los mensajes en la GLCD, de no ser así mostrara un mensaje de error. Diagrama 12 Recepción de Mensajes de Texto 5. PRESENTACIÓN Y ANÁLISIS DE RESULTADOS Para la realización de este proyecto se realizaron pruebas antes y después de la implementación del PCB final. Las pruebas a priori se realizaron en un módulo experimental que se construyó para dicho fin. De dicho módulo se obtuvo información que permitió hacer correcciones a las etapas de amplificación de la interfaz de audio, al diseño de la fuente, a la forma en que se debían implementar el modem para que el campo magnético que este genera no afecte el funcionamiento de los demás dispositivos, en especial al microcontrolador y al LDC. De las pruebas realizadas en el módulo experimental se concluyó que el implementar el microcontrolador PIC 18F67J50 era una decisión acertada, porque este dispositivo si podía soportar los periféricos, y las operaciones que se contemplaron para este proyecto. Gráfica 7 Módulo experimental Para llevar a cabo la construcción de este proyecto se tiene en cuenta los datos entregados por el módulo experimental, a partir de esto se realiza el diseño de un PCB de superficie, compacto y funcional. En esta etapa se determinó imprimir la baquela de cuatro capas y soldar los elementos para dar por terminado el proceso necesario para la construcción del hardware. Gráfica 8 Vista Anterior del PCB Gráfica 9 Vista Posterior del PCB Se realizó el análisis electrónico y pruebas del circuito y la programación del prototipo para comunicación móvil. El módulo presentó los fallos que se describen a continuación: El true hall del PCB en la parte del Buzzer se levantó porque al momento de implementarlo este se instaló con la polaridad invertida. En el touch hay problemas de sincronización de las coordenadas porque hay diferencia en el tamaño de la membrana táctil porque el tamaño que se consiguió tiene una cobertura del 80% de la superficie de la pantalla LCD. Esto se observa en la irregularidad que hay en la señal de salida de los puertos A1 y A0 que tienen pulsos incompletos y con remanentes de voltaje negativo. Gráfica 10 Señal Cuadrada Pin 1 Puerto A2 Gráfica 11 Señal Cuadrada Pin2 Puerto A3 Gráfica 12 Señal Pin 3 Puerto A1 Gráfica 13 Señal Pin 4 Puerto A0 Hay problemas de conmutación en el transistor Q3 en el puerto A2 y A3 por esto se cambió al puerto B0 B1 estos problemas eran ocasionados por una incompatibilidad entre el tiempo de conmutación del transistor y la librería de la membrana táctil. Estos fallos se ven en al compilar el programa, en la siguientes gráficas. Gráfica 14 Error al Depurar Programa Gráfica 15 Solución en la depuración. El potenciómetro digital que variaba el contraste de la pantalla LCD se tuvo que cambiar un trimer, porque el eje de de control del potenciómetro quedaba inasequible. 6. CONCLUSIONES Para los requerimientos técnicos y funcionales necesarios para este prototipo de comunicación móvil, se diseñó un circuito impreso de cuatro capas con tecnología de superficie y dimensiones de 9.3 x 7 cm para hacer un sistema compacto de fácil manipulación. A este circuito impreso se integró un modem que funciona con tecnología móvil GSM para frecuencias de 850MHz hasta 1900MHz. Este sistema no es compatible con intercambio de datos GPRS. La interfaz que se desarrolló para el usuario tiene una membrana táctil que permite el ingreso de las instrucciones. Cuenta con una pantalla LCD monocromática de 9.3 x 7 cm. La membrana táctil que cubre el 80% del tamaño de la pantalla gráfica LCD y esto causa problemas de sincronismo de las coordenadas. El microcontrolador tiene todos los pines realizando alguna función. Esto indica que la elección del microcontrolador fue acertada ya que se utilizaron los todos recursos que ofrecía el dispositivo. Se diseñaron los algoritmos necesarios para la preparación de los dispositivos y para la realización de las funciones básicas de una comunicación móvil. Se logró la elaboración de algoritmos simples que permiten el correcto funcionamiento del prototipo. La simplicidad del algoritmo no indica menor complejidad al programar ya que la lógica de programación varía de acuerdo al programador y el lenguaje que este decida usar para interactuar con él sistema. Se implementó un prototipo de comunicaciones móviles que permite realizar prácticas de programación de las funciones básicas de un teléfono móvil y la experimentación con los sistemas de pantallas táctiles. El dispositivo que se obtuvo permite el análisis electrónico de la forma en que se llevan a cabo las funciones básicas de un teléfono móvil. Las pruebas que se realizaron al dispositivo dejaron ver fallas en la sincronización de las coordenadas de la membrana táctil y la pantalla LCD por diferencia de dimensiones que hay entre ellas. Se presentaron fallos en la conmutación del transistor Q3 que está conectado al puerto A2 y A3 lo que condujo al intercambio de funciones con el puerto B0 y B1, lo que permitió cumplir con la condición de la librería que habilita el funcionamiento de la membrana táctil, y exige que haya dos líneas análogas y dos digitales. 7. RECOMENDACIONES Para futuras prácticas quedan disponibles el puerto USB que aparte de servir para alimentación permitirá la sincronización de funciones por medio de un computador, el puerto no permite la interacción directa con otro microcontrolador o modem por este puerto. La micro SD no se puede cagar con aplicaciones JAVA o programas ajenos a los lenguajes de programación, ya que estos no los va a reconocer el microcontrolador. La memoria se puede usar para aumentar la capacidad de almacenamiento del microcontrolador bien sea para aplicaciones que requieran mayor capacidad. La librería que habilita la membrana táctil requiere que dos líneas sean análogas y dos digitales. Se recomienda el cambio de la membrana táctil por una de dimensiones iguales a la de la pantalla LCD, para eliminar los problemas de sincronismo de las coordenadas de la pantalla LCD y la membrana táctil. 8. BIBLIOGRAFÍA Antennas. (1950). John Daniel Kraus. Blake, R. (2001). Electronic communication systems. ANGULO Usategui José M, I. A. (2000). Microcontroladores PIC: diseño práctico de aplicaciones. Municio, E. P. (2009). Microcontrolador PIC16F84:. Ramjee Prasad, M. R. (2003). Technology trends in wireless communications. Rhee, M. Y. (2009). Mobile communication systems and security. Stremler, F. G. (1989). Sistemas de comunicación. Timo Halonen, J. R. (2003). GSM, GPRS and edge performance: evolution towards 3G/UMTS. Tomasí, W. (2003). Sistemas de comunicaciones electrónicas. Vijay Kumar Garg, J. E. (1999). Principles and applications of GSM. Datasheet SIM508 Datasheet SIM 548 Datashee SIM 548c ATC Datasheet PIC 18F4550 Datasheet TINSHARP Datasheet Touch Datasheet Oscilador PDF IEEE RITA 2007. ANEXO A UNIVERSIDAD DE SAN BUENAVENTURA PROTOTIPO DE COMUNICACIONES MÓVILES MANUAL DEL USUARIO Daniel F. Castañeda J. Juan D. Cortes D. Nicolás Garzón E. Contenido 1. PROGRAMACIÓN DE LA LCD ................................................................................................... 106 1.1. Inicialización de la GLCD ................................................................................................. 106 1.2. Dibuja Menú......................................................................... ¡Error! Marcador no definido. 2. PROGRAMACIÓN DE LA MEMBRANA TÁCTIL ........................................................................ 108 3. UNIDAD DE CONTROL ............................................................................................................. 109 3.1. PUERTO A Y F .................................................................................................................. 110 3.2. . PUERTO B ...................................................................................................................... 111 3.3. PUERTOS C, D, E Y G ........................................................................................................ 111 3.4. VALORES MÁXIMOS ABSOLUTOS ................................................................................... 112 3.5. PINES DE E/S DEL MODULO CELULAR ............................................................................ 113 4. INICIALIZACIÓN DEL MODEM GSM ........................................................................................ 118 5. PROGRAMACION DE LAS FUNCIONES BÁSICAS ..................................................................... 118 5.1. REALIZACIÓN DE LLAMADAS .......................................................................................... 118 5.2. REALIZACIÓN DE LLAMADAS PROGRAMACIÓN DEL MICROCONTROLADOR ............... 120 5.3. RECEPCIÓN DE LLAMADAS ............................................................................................. 120 5.4. RECEPCIÓN DE LLAMADAS PROGRAMACIÓN D EL MICROCONTROLADOR.................. 122 5.5. ENVÍO DE MENSAJES DE TEXTO...................................................................................... 122 5.6. ENVÍO DE MENSAJES DE TEXTO PROGRAMACIÓN DEL MICROCONTROLADOR. ......... 124 5.7. RECEPCIÓN DE MENSAJES DE TEXTO ............................................................................. 124 5.8. RECEPCIÓN DE MENSAJES DE TEXTO PROGRAMACION DEL MICROCONTROLADOR. . 126 MANUAL DEL USUARIO PROTOTIPO PARA COMUNICACIÓN MÓVIL El presente prototipo para comunicación móvil es un sistema didáctico que permite la salida y entrada de llamadas, y mensajes de texto SMS. Tiene una pantalla LCD que tiene una membrana táctil que en conjunto permiten la visualización y el ingreso de instrucciones al sistema. El Diagrama 1 muestra la estructura de funcionamiento para este dispositivo. Diagrama 13 Estructura del prototipo de comunicación móvil , 1. PRECACIONES DE USO Alimentar con 5V DC o por el puerto USB habilitando el JUMPER Evitar la cercanía con equipos que emitan campo eléctrico y/o magnético. Este es un equipo electrónico que es vulnerable a los líquidos. 2. PROGRAMACIÓN DE LA LCD 2.1. Inicialización de la GLCD Para poder mostrar caracteres o imágenes en la GLCD es preciso inicializar esta función. esta rutina lo que hace es que por medio de registros internos de la pantalla esta configurara, realizando una subrutina programada en el microcontrolador como lo explica el siguiente Diagrama 1; primero toda la configuración de los puertos del microcontrolador asignados a la GLCD, se configuraran según el caso y función como entrada o salida; luego iniciara el envió de datos a los registros de la pantalla, para poder tener una correcta visualización y por último se limpiara todo el estado de la memoria RAM de la GLCD. Esta función solo se va a llamar una vez en todo el programa, cada vez que se inicie el sistema. Diagrama 14 Inicialización del LCD 2.2. Dibuja Menú Esta función a diferencia de la anterior se llamara cada vez que sea necesario mostrar diferentes menús, figuras, imágenes, instrucciones o mensajes que se requiera mostrar al usuario; esta rutina va hacer un barrido en toda la pantalla con los elementos insertados para la interfaz del usuario del sistema como por ejemplo botones. Primero se llamará una función en el cual se dará la posición X y Y de la figura a dibujar, y luego se configura que clase de figura se quiere insertar. 3. PROGRAMACIÓN DE LA MEMBRANA TÁCTIL La programación consiste en mostrar los menús en una pantalla LCD gráfica, con las diferentes funciones del teléfono celular, además conmutar de encendido a apagado del panel táctil (control del panel táctil) y leer los valores del conversor A/D que representan realmente las coordenadas X e Y de la posición. Una vez determinadas las coordenadas, es posible decidir cuál es la instrucción para el microcontrolador. El diagrama Para ilustrarlo, podemos dar un vistazo al diagrama3. Diagrama 15 Algoritmo Para La Membrana Táctil 4. UNIDAD DE CONTROL Para la programación del microcontrolador es necesario realizar la configuración de los puertos como se describe a continuación. Diagrama 16 Programación del Microcontrolador 4.1. PUERTO A Y F El puerto A es un puerto bidireccional de 8 bits que puede ser programado a través de 5 registros: PORTA (datos de entrada/salida), TRISA (sentido de circulación de los datos), LATA (registro datos latch), ADCON0 (configuración de pines análogos y digitales) y CVRCON (control de la referencia de voltaje). Al programar un bit de TRISA con un valor de 1 se consigue que el pin correspondiente del puerto A trabaje como entrada (es decir, coloca el driver de salida en alta impedancia). Al programar un bit de TRISA con 0 se logra que el pin correspondiente del puerto A opere como salida (es decir, coloca el contenido del latch de salida en el pin seleccionado). La lectura del registro PORTA lee el estado de los pines, mientras que una escritura en él, escribe en el latch del puerto. Para este circuito se recomienda la siguiente secuencia de inicialización de este puerto: escribir 0 en el registro PORTA, escribir 0x04 en el registro ADCON0 para configurar los pines RA<3:0> como E/S digital o como entrada análoga y escribir el resto en el registro TRISA los bits de sentido de circulación (1=entrada, 0=salida). Al igual que el puerto A el puerto F tiene los mismo registro de configuraciones solo que en este caso usara TRISF, LATF y PORTF. 4.2. . PUERTO B Este es un puerto bidireccional de 8 bits. El registro de sentido de datos es TRISB. Al programar un bit de TRISB con un valor de 1 se consigue que el pin correspondiente del puerto B trabaje como entrada (es decir, coloca el driver de salida en alta impedancia). Al programar un bit de TRISB con 0 se logra que el pin correspondiente del puerto B opere como salida (es decir, coloca el contenido del latch de salida en el pin seleccionado). Cada pin de este puerto tiene un pull up interno (200 uA aproximadamente). El bit #RBPU del registro INTCON2<7> puede activar o desactivar esta función. Para este modulo se recomienda no usarlo. Cuando el puerto se configura como salida las pull ups se desactivan automáticamente y también cada vez que se enciende el PIC (Power On Reset POR). Este puerto se puede programar por medio de 4 registros: PORTB, LATB, TRISB, INTCON2 (activar/desactivar las pull ups). 4.3. PUERTOS C, D, E Y G El PIC18F67J50 posee cinco puertos con un total de 49 pines configurables como entrada o salida, lo que le brinda a este microcontrolador una gran ventaja con respecto a otros PICs que tienen un número de pines relativamente reducido. La configuración de los puertos C, D, E y G se realiza de forma similar, con los registros PORTx, LATx y TRISx; los registros TRISx tienen todos sus bits en 1 después de cualquier reset y no cambian al despertar por WDT o interrupción, por lo tanto los puertos A, B, C, D, E y G están configurados como entradas inicialmente. 4.4. VALORES MÁXIMOS ABSOLUTOS En la hoja de especificaciones del fabricante se indican los valores máximos para las intensidades de corriente de los pines del microcontrolador (tabla 1), los cuales a sido tomados para tener en cuenta en el diseño del modulo. Ya que algunos periféricos trabajan a 5V y otros a 3.3V este microcontrolador es ideal, en las líneas de algunos de los puertos son capaces de recibir niveles TTL cuando el voltaje de alimentación aplicado en VDD es de 3.3V, y a su vez son capaces de enviar señales de voltaje iguales a 3.3V que son ideales para no dañar los componentes que no manejen TTL. Tabla 1 Configuración Inicial del Microcontrolador Pines Descripción Valor Vdd Voltaje de Vdd con respecto a -0.3V hasta 4V Vss ENVREG=1 Vdd Máxima corriente 250 mA Vss Máxima corriente 300 mA PortB y PortC Máxima corriente de Salida 25 mA PortD y PortE Máxima corriente de Salida 8 mA PortA, PortF y PortG Máxima corriente de Salida 2 mA Todos los puertos Máxima corriente de entrada 200 mA Puertos con funcion Analoga Voltaje máximo y mínimo Max:Vdd y Min: 0.25Vdd+0.8V Puertos Digitales Voltaje máximo y mínimo Max:5.5V y Min:0.25Vdd+0.8V 4.5. PINES DE E/S DEL MODULO CELULAR En la siguiente tabla, se relacionan los pines del microcontrolador con el periférico conectado ha este para tener una idea global de como va ser la distribución y configuración que va tener el modulo. Los pines se escogieron según la tabla 2, dependiendo del consumo de corriente, también dependiendo del voltaje que maneje, si es TTL o 3.3V o ADC o por tipo de protocolo de comunicación (RS232, USB, SPI, etc.), siguiendo esos criterios se escogieron los siguientes pines. Tabla 2 Configuración de pines de E/S Pin Función Config. Tris I/O Tipo I/O Descripción 64 RE2 0 O D Pin RESET de la GLCD 63 RE3 0 O D Pin C/D de la GLCD 62 RE4 0 O D Pin R/W de la GLCD 61 RE5 0 O D Pin E de la GLCD 60 RE6 0 O D Pin CS1 de la GLCD 59 RE7 0 O D Pin CS2 de la GLCD 58 RD0 0 O D Pin de datos DB0 de la GLCD 55 RD1 0 O D Pin de datos DB1 de la GLCD 54 RD2 0 O D Pin de datos DB2 de la GLCD 53 RD3 0 O D Pin de datos DB3 de la GLCD 52 RD4 0 O D Pin de datos DB4 de la GLCD 51 RD5 0 O D Pin de datos DB5 de la GLCD 50 RD6 0 O D Pin de datos DB6 de la GLCD 49 RD7 0 O D Pin de datos DB7 de la GLCD 48 RB0 0 O D Pin U/D del potenciometro digital 47 RB1 0 O D Pin INC del potenciometro digital 46 RB2 0 O D Pin CS del potenciometro digital 45 RB3 0 O D Pin U/D del potenciometro digital 44 RB4 0 O D Pin INC del potenciometro digital 43 RB5 0 O D Pin CS del potenciometro digital 2 RE0 1 I D Pin DTR puerto serial DB9 1 RE1 0 O D Pin DCD puerto serial DB9 3 RG0 1 I D Pin RTS puerto serial DB9 4 RG1/TX2 0 O D Pin TXD puerto serial DB9 5 RG2/RX2 1 I D Pin RXD puerto serial DB9 6 RG3 0 O D Pin CTS puerto serial DB9 8 RG4 0 O D Pin RL puerto serial DB9 14 RF4/D+ x I/O D Pin datos D+ USB 15 RF3/D- x I/O D Pin datos D- USB 21 RA3 0 O D Pin Drive B TouchScreen 22 RA2 0 O D Pin Drive A TouchScreen 23 RA1/AN1 1 I A Pin Lee X TouchScreen 24 RA0/AN0 1 I A Pin Lee Y TouchScreen 34 RC3/SCK1 0 O D Pin SCK de la microSD 35 RC4/SDI1 I D Pin SDI de la microSD 36 RC5/SDO1 0 O D Pin SDO de la microSD 16 RF2 0 O D Pin CS de la microSD 13 RF5 1 I D Pin SD Detect de la microSD 1 11 RF7 1 I D Pin DTR puerto serial MODEM 12 RF6 0 O D Pin DCD puerto serial MODEM 30 RC0 1 I D Pin RTS puerto serial MODEM 32 RC7 0 O D Pin TXD puerto serial MODEM 31 RC6 1 I D Pin RXD puerto serial MODEM 33 RC2 0 O D Pin CTS puerto serial MODEM 29 RC1 0 O D Pin RL puerto serial MODEM 7 /MCLR x x x Pin para la programación ICSP MCLR 42 RB6/PGC x x x Pin para la programación ICSP PGC 37 RB7/PGD x x x Pin para la programación ICSP PGD 27 RA5 0 O D Pin para LED indicador 28 RA4 0 O D Pin para POWERKEY Módem Para la anterior tabla (tabla x), se usa la siguiente nomenclatura: [I:Input],[O:Output],[D:Digital],[A:Analogo],[x:No importa]. Diagrama 17 Algoritmo del Microcontrolador 5. INICIALIZACIÓN DEL MODEM GSM El siguiente diagrama muestra la forma en que se debe inicializar el modem Diagrama 18 Inicialización del Modem 6. PROGRAMACION DE LAS FUNCIONES BÁSICAS 6.1. REALIZACIÓN DE LLAMADAS Diagrama 19 Llamadas con Comandos AT 6.2. REALIZACIÓN DE LLAMADAS PROGRAMACIÓN DEL MICROCONTROLADOR INICIALIZA SISTEMAS TOUCH MICRO MODEM DETECT SUB1 NÚMER LLAMA O R 6.3. A TX PUERTO PUERTO A C RECEPCIÓN DE LLAMADAS Al recibir una llamada entrante, el módem enviara al microcontrolador la palabra RING, el equipo esperara si el usuario presionara la tecla de contestar o de rechazar la llamada. Si decide contestar se le enviara al módem el siguiente comando ATA; si no terminara la rutina, puede cortar haciendo clic en el botón de colgar igualmente. Diagrama 20 Recepción de Llamadas 6.4. RECEPCIÓN DE LLAMADAS PROGRAMACIÓN D EL MICROCONTROLADOR INICIALIZA SISTEMAS ACEPTA 6.5. TOUCH MICRO MODEM SUB2 DETECT RX A PUERTO CANCEL PUERTO C A A ENVÍO DE MENSAJES DE TEXTO Para envió un mensaje a un número determinado, primero debemos tener una variable el cual tendrá el numero al que enviaremos el mensaje se ingresara los comandos para esta función en este casa ingresando el comando AT+CMGS="<Numero>", a lo cual recibiremos una respuesta (caracter '>'), para luego ingresar el mensaje, la respuesta al comando es el ID del mensaje, terminado con el clásico OK. Diagrama 21 Envió de Masajes de Texto 6.6. ENVÍO DE MENSAJES DE TEXTO PROGRAMACIÓN DEL MICROCONTROLADOR. INICIALIZA SISTEMAS TOUCH MICRO MODEM SUB3 DETECT TX A PUERTO PUERTO C IN TXT A NÚMERO ENVIO 6.7. RECEPCIÓN DE MENSAJES DE TEXTO Según el estudio realizado anteriormente se puede determinar el funcionamiento de los módems y así poder diseñar el software, al recibir un SMS, el módulo lo informa mediante un mensaje:+CMTI: "SM",<indice>, de modo que para leerlo simplemente debemos ingresar el comando AT+CMGR=<indice>. El diagrama siguiente muestra la secuencia de recepción del mensaje en el software a diseñar, al enviar el comando se espera la confirmación del mensaje realizado y se mostrara los mensajes en la GLCD, de no ser así mostrara un mensaje de error. Diagrama 22 Recepción de Mensajes de Texto 6.8. RECEPCIÓN DE MENSAJES DE TEXTO PROGRAMACION DEL MICROCONTROLADOR. INICIALIZA SISTEMAS TOUCH DETECT TX A PUERTO PUERTO C A SUB4 DETECT RX VER A PUERTO BUSON PUERTO C LEER TXT A ANEXO B