TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS INGENIERIA EN AUTOMATICA Y ELECTRONICA INDUSTRIAL AUTOR: DIRECTOR: José Nieto Sánchez. Pedro Garcés Miguel. FECHA: Enero / 2006. PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 0.ÍNDICE . - 1 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1. MEMORIA DESCRIPTIVA...................................................................................................................4 1.1. OBJETO DEL PROYECTO...................................................................................................5 1.1.1. TITULO DEL PROYECTO.....................................................................................................................5 1.1.2. ANTECEDENTES DEL PROYECTO. ..................................................................................................6 1.1.3. OBJETIVO DEL PROYECTO. ..............................................................................................................6 1.1.4. FUNCIONAMIENTO BÁSICO DEL PROYECTO. ..............................................................................7 1.1.5. CONCLUSIONES. ..................................................................................................................................8 1.2. CONCEPCIÓN TÉCNICA DEL PROYECTO.......................................................................9 1.3. PLANTEAMIENTO DE LAS SOLUCINES ADOPTADAS Y SU JUSTIFICACIÓN.........9 1.3.1. LENGUAJE DE PROGRAMACIÓN. ............................................................................................................9 1.3.2. ORDENES DEL PROGRAMA. ..................................................................................................................10 1.3.3. MICROCONTROLADOR 80C51. ..............................................................................................................12 1.3.4. PERIFÉRICO MAX232. ..............................................................................................................................12 1.3.5. OTROS INTEGRADOS. ..............................................................................................................................13 1.4. DESCRIPCIÓN DEL PROYECTO......................................................................................15 1.4.1. GENERALIDADES. ....................................................................................................................................15 1.4.2. UNIDAD PRINCIPAL. ................................................................................................................................16 1.4.3. UNIDAD SECUNDARIA. ...........................................................................................................................18 1.4.4. CARACTERÍSTICAS DE LOS SISTEMAS A COMPROBAR. .................................................................18 1.4.5. ELEMENTOS DE VISUALIZACIÓN. ........................................................................................................22 1.4.6. CONEXIÓN VÍA SERIE CON EL PC. .......................................................................................................23 1.4.7. SISTEMAS DE SEGURIDAD. ....................................................................................................................26 1.4.8. ALIMENTACIÓN Y CONSUMO. ..............................................................................................................26 1.4.9. CONECTORES. ..........................................................................................................................................27 2. MANUAL DE USUARIO.....................................................................................................................28 2.1. CONEXIÓN DEL PROTOTIPO...........................................................................................29 2.1.1. CONEXIÓN DE LA ALIMENTACIÓN. .....................................................................................................29 2.1.2. CONEXIÓN CON EL PC. ...........................................................................................................................29 2.2. ASPECTOS GENERALES EN LA UTILIZACIÓN DEL SISTEMA..................................29 2.2.1. CON RESPECTO AL SOFTWARE. ...........................................................................................................30 2.2.2. CON RESPECTO AL SISTEMA A COMPROBAR. ..................................................................................31 2.3. COMPROBACIÓN DE UN BUS..........................................................................................32 2.3.1. SELECCIÓN DEL SISTEMA. .....................................................................................................................33 2.3.2. VERIFICA EL SISTEMA. ...........................................................................................................................24 2.4. CONFIGURAR EL BUS.......................................................................................................35 - 2 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.4.1. NORMAS PARA CONFIGURAR EL BUS. ...............................................................................................36 2.4.2. TABLA DE DATOS A MANDAR. .............................................................................................................38 2.4.3. TABLA DE DATOS A RECIBIR. ...............................................................................................................38 2.5. SALIR DEL PROGRAMA......................................................................................................39 3. MEMORIA DE CÁLCULO...................................................................................................................40 3.1. ORDINOGRAMAS DE PROGRAMAS DEL PROYECTO...................................................41 3.1.1. ORDINOGRAMAS DE PROGRAMAS PARA PC. ....................................................................................41 3.1.2. ORDINOGRAMAS DEL PROGRAMA ENSAMBLADOR .......................................................................53 3.2. LISTADOS DE PROYECTO...................................................................................................57 3.2.1. LISTADOS DE PROGRAMAS PARA PC. .................................................................................................57 3.2.2. LISTADOS DE PROGRAMA ENSAMBLADOR........................................................................................88 3.3. CALCULO DE LOS ELEMENTOS DEL PROYECTO..........................................................90 3.3.1. CÁLCULO DEL MÓDULO MICROCONTROLADOR. ............................................................................90 3.3.2. CÁLCULO DEL MÓDULO DE COMUNICACIÓN SERIE. .....................................................................92 3.3.3. CÁLCULO DEL MÓDULO DE FILTRADO DE ALIMENTACIÓN..........................................................93 3.3.4. CÁLCULO DEL MÓDULO BIDIRECCIONAL. ........................................................................................95 3.3.5. CÁLCULO DEL CONSUMO DEL PROTOTIPO. ......................................................................................98 4. PLANOS DEL PROYECTO..................................................................................................................99 4.1. DIAGRAMA DE BLOQUES................................................................................................ 100 . 4.2. ESQUEMA ELECTRÓNICO ................................................................................................101 4.3. CIRCUITO IMPRESO.SITUACIÓN COMPONENTES.......................................................102 4.4. CIRCUITO IMPRESO.CARA PISTAS.................................................................................103 4.5. CABLE COMUNICACIÓN RS-232......................................................................................104 5. MEDICIONES Y PRESUPUESTO.......................................................................................................105 5.1. HOJA DE MEDICIONES......................................................................................................106 5.2. LISTADO GENERAL DE PRECIOS....................................................................................107 5.3. PRESUPUESTO DEL PROYECTO......................................................................................108 6. PLIEGO DE CONDICIONES...............................................................................................................112 6.1. CONDICIONES GENERALES............................................................................................113 6.2. CONDICIONES TÉCNICAS................................................................................................124 7. BIBLIOGRAFÍA Y ANEXOS..............................................................................................................126 - 3 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1. MEMORIA DESCRIPTIVA. - 4 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.1. OBJETO DEL PROYECTO. 1.1.1. TITULO DEL PROYECTO. El proyecto lleva por título: “TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Como su propio nombre indica el proyecto tratará de ser un dispositivo eficaz en la verificación del funcionamiento de SISTEMAS o INGENIOS DE HASTA 16 BITS. El proyecto consta de un sistema compuesto por un PC y un dispositivo gestionado a través de un microcontrolador. El PC contiene los programas en cuestión de verificación de los y los ficheros de las tablas de la verdad y características de cada uno de los sistemas a comprobar, por tanto, será quien envíe por un puerto de comunicación serie los datos necesarios para que el dispositivo con el microcontrolador incorporado los gestione y podamos de esta forma obtener la respuesta correspondiente sobre el funcionamiento del sistema que estemos probando. El dispositivo que actuará como Unidad Secundaria dependiente del PC, se encargará de ordenar y coordinar a través de sus puertos de entrada y salida, las tablas de la verdad y características de funcionamiento del sistema. Decimos que está “gobernado por un PC” ya que hemos dicho que del PC parten las consignas principales para el funcionamiento del dispositivo comprobador, aunque entre éste y la unidad microcontroladora exista una “bidireccionabilidad” de comunicación especifica debida a las características del sistema. - 5 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.1.2. ANTECEDENTES DEL PROYECTO. Si bien es cierto que existen técnicas de simulación de fallos lógicos como pueden ser test Internal Scan, Boundary Scan. BIST (Built-in self-test), en definitiva técnicas de autotest utilizadas en el testeo del funcionamiento de circuitos integrados pero que realmente son poco aplicadas debido a sus costes y complejidad en sectores que trabajen fuera del diseño y fabricación de sistemas electrónicos como laboratorios docentes e industrias de montaje de placas de circuitos impresos... Habitualmente, cuando diseñamos, implementamos o simplemente queremos conocer el funcionamiento correcto de cualquier sistema digital, se nos hace una tarea complicada y se suele entrar en un círculo de comprobación de los diferentes elementos, habitualmente a través de comprobadores manuales, hasta que se detecta el elemento o parte del sistema que no funciona correctamente. Por tanto, se trata de diseñar un dispositivo que facilite y haga relativamente atractiva la operación de testeo de los sistemas, mediante un equipo sencillo como puede ser un ordenador portátil y un módulo que nos sirva de interface sencillo y de fácil manejo y tansporte. 1.1.3. OBJETIVO DEL PROYECTO. Teniendo en cuenta lo comentado en el apartado anterior, he visto la posibilidad de crear un dispositivo que facilitase la tarea de verificación de sistema de forma ostensible y la convirtiera en una operación agradable, además de reducir los tiempos perdidos en la verificación, mediante un equipo sencillo como puede ser un ordenador portátil y un módulo que nos sirva de interface sencillo y de fácil manejo y tansporte. El dispositivo, evidentemente, también se podría utilizar en laboratorios de investigación o cadenas de producción, de manera que aumentase el control de calidad de los productos diseñados o producidos. - 6 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.1.4. FUNCIONAMIENTO BÁSICO DEL PROYECTO. A continuación, explicaremos el funcionamiento del sistema, de forma muy somera, para hacernos una idea global del mismo. Como ya hemos comentado se tratará de un dispositivo mediante el cual podamos verificar el funcionamiento correcto o incorrecto de sistemas o partes de sistemas de hasta 16 bis, siempre bajo unas condiciones de funcionamiento adecuadas de alimentación, temperatura... Tendremos dos opciones, comprobar un sistema que esté configurado de antemano y por lo tanto esté en nuestra librería o bien que no esté configurado entre los ficheros de nuestra librería de programa. En el primer caso, conectaremos el sistema a nuestro prototipo a través del conector. Una vez hecho esto seleccionamos el archivo conocido de funcionamiento del sistema a testear y procederemos a su verificación, dando la orden al PC para que la lleve a cabo, a través del programa de verificación, si la comprobación es buena nos aparecerá en la pantalla la etiqueta de “CORRECTO” y si no lo es nos aparecerá “INCORRECTO” , por otro lado apareceran en pantalla los valores de los 16 bits enviados, esperados y recibidos y podremos ver en caso de mal funcionamiento que línea o lineas no funcionan. La segunda posibilidad, como hemos dicho, es que queramos comprobar un sistema que no figure entre nuestros ficheros, entonces entraremos en el programa de configuración, donde configuraremos la tabla de la verdad del sistema que queramos comprobar. Una vez está configurado el nuevo sistema a testear procedemos a su comprobación como hemos descrito anteriormente. - 7 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.1.5. CONCLUSIONES. Se ha tratado de diseñar un dispositivo que facilite y haga relativamente atractiva la operación de testeo de los sistemas, mediante un equipo sencillo como puede ser un ordenador portátil y un módulo que nos sirva de interface sencillo y de fácil manejo y transporte. De forma que frente a tecnologias que requieren ordenadores y sistemas de grandes prestaciones, o al diseño de sistemas de testeo para un solo tipo de sistemas sin posibilidad de crecer o a los poco atractivos entrenadores convencionales con sus dificultades de montaje, la excesiva perdida de tiempo en la comprobación y la falta de garantias y fiabilidad. Nos encontramos con un dispositivo capaz de comprobar el funcionamiento de sistemas digitales de hasta 16 bits, de muy fácil manejo y mucho más atractivo que los entrenadores convencionales, de gran fiabilidad en los resultados obtenidos y una gran agilidad de rapidez de verificación. Por otro lado es capaz de ir aumentando su librería de sistemas a comprobar y testear la combinación que nos interese, desde un solo bit hasta 16 bits, de forma que realmente podemos decir que más que un simple dispositivo de testeo disponemos de un control del sistemas, pues podemos además de hacer la comprobación , leer y mandar datos al bus. Teniendo en cuenta lo comentado tenemos por tanto un dispositivo que facilita mucho la tarea de verificación de sistema y lo convierte en una operación agradable, además de reducir los tiempos perdidos en la verificación, mediante un equipo sencillo. El dispositivo, evidentemente, también se podría utilizar en laboratorios de investigación o cadenas de producción, de manera que aumentase el control de calidad de los productos diseñados o producidos. - 8 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.2. CONFECCIÓN TÉCNICA DEL PROYECTO. Partiendo de un PC y aprovechando la capacidad de gestión del microcontrolador 80C51, y valiéndonos de la comunicación vía serie, basándonos en la norma RS232C, diseñaremos el dispositivo objeto del proyecto. A través del PC y mediante la programación del mismo operamos sobre unos valores determinados y conocidos sobre el funcionamiento del sistema que queremos comprobar, estos datos y convirtiéndolos en caracteres ASCII los enviamos a través del puerto serie disponible hacia la unidad microcontroladora que se encarga de su gestión y de recoger los resultados, para enviarlos al PC vía serie y éste hace la comparación entre los datos recibidos y los que él tiene como patrón. Es del resultado de esa comparación, dónde el PC decide si el funciomiento del sistema que estamos comprobando es correcto o bien no lo es. 1.3. PLANTEAMIENTO DE LAS SOLUCIONES ADOPTADAS Y SU JUSTIFICACIÓN. 1.3.1. LENGUAJE DE PROGRAMACIÓN. La comunicación entre el PC y el dispositivo comprobador, tendrá lugar a través de uno de los puertos de comunicación serie del PC. Los ficheros obtenidos para efectuar la comprobación aparecen en cadenas alfanuméricas, separadas por líneas que deben poder ser interpretadas una a una. Aunque sea menos importante también hemos considerado que la visualización en pantalla del programa debe ser vistosa, actual y clara de forma que invite al usuario a su manipulación. Por lo tanto, el lenguaje de programación, debe ser tal que permita el análisis detallado de las cadenas alfanuméricas procedentes de los ficheros y que controle la - 9 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. comunicación de transmisión y recepción de datos a través del puerto serie del PC y, además, la presentación del mismo en pantalla sea de fácil interpretación y agradable a la vista. De entre los lenguajes de alto nivel que pueden utilizarse se encuentra el Visual Basic. Este lenguaje permite convertir el lenguaje fuente en lenguaje máquina ejecutable en el PC dotado de gran rapidez de ejecución y analiza las instrucciones de una sola vez y con absoluta autonomía. Permite, pues, crear a partir de un fichero de programa, un fichero ejecutable, que puede ser activado desde entorno Windows 95 u otras versiones superiores, ya que el software utilizado enlaza y utiliza las correspondientes librerías del sistema operativo. Finalmente, las características de este lenguaje, sumados a su conocimiento y el de sus instrucciones de programación por parte del diseñador, han aconsejado su empleo para los distintos programas que forman el proyecto. Por otro lado, el lenguaje utilizado para programar el microcontrolador 80C51 ha sido el lenguaje ensamblador correspondiente, según el manual de instrucciones del mismo. 1.3.2. ORDENES DEL PROGRAMA. A parte de las instrucciones propias de cada lenguaje de programación, se han utilizado unos caracteres para coordinar la transmisión y recepción de información entre el PC y la unidad secundaria. Esto no son otra cosa que valores en código ASCII, correspondiente a caracteres y han sido escogidos dentro de las combinaciones de este código, de manera que no coincidan con los equivalentes a datos, principalmente para evitar posibles confusiones entre dichos caracteres de trabajos y los datos a transmitir. Recuérdese que la - 10 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. comunicación serie entre dos o más unidades tiene lugar, propiamente, por medio de señales transmitidas en código ASCII. Se observará que en la presentación de los códigos sobre el programa del PC es diferente a sobre el programa ensamblador de la unidad microcontroladora (en el PC los códigos ASCII en sistema decimal y en el microcontrolador los mismos códigos en hexadecimal), se debe a que el microcontrolador asimila los valores hexadecimales pero en cualquier caso su valor es equivalente. Este modo de comunicación a través de códigos es finalmente aceptado después de comprobar que la comunicación entre la unidad principal y la secundaria tiene lugar sin errores, cuando se cumplen todas las condiciones necesarias. El conjunto de estos códigos son expuestos en la Memoria de Cálculo, para una mejor comprensión de como han sido aplicados. - 11 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.3.3. MICROCONTROLADOR 80C51. Como ya se ha indicado, es el elemento principal encargado de la gestión de los datos, llevada a cabo por el dispositivo comprobador y de coordinar el intercambio de datos con el PC, a la vez de ejecutar el programa almacenado en su memoria, correspondiente al gobierno y gestión del sistema. Se han utilizado los cuatro puertos de los que dispone el microcontrolador, P0, P1, P2 y P3. El P1 y P2 se han utilizado como entrada y salida de datos según nos interese en cada momento. El P3 se ha utilizado como enlace con el puerto serie a través de las señales RXD y TXD. El P0 se ha utilizado como salida de control. Para cualquier consulta técnica sobre el microcontrolador 80C51, que no quede resuelta a lo largo de la presente Memoria, han sido incorporadas en el Anexo las características de este microcontrolador. 1.3.4. PERIFÉRICO MAX232. Cuando se estudió, durante el diseño del proyecto el método de comunicación entre el PC y la unidad microcontroladora, se consideró que la comunicación serie era la idónea por sus características de elevada distancia de trabajo, inmunidad de ruido y velocidad de comunicación. La comunicación tiene lugar bajo la norma V.24 (antigua RS232), que permite la utilización de cable de hasta 15 m. (este es el valor límite, al cual la capacidad se alcanza la máxima capacidad entre los cables de comunicación). El problema estriba en que el PC es un elemento que comunica con unos valores de tensión entre +5V a +15V para nivel alto, y -5V a -15V para el nivel bajo; mientras que el - 12 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. microcontrolador sólo se mueve entre 0V a nivel bajo y +5V a nivel alto. Por tanto, es imposible pensar en la conexión directa entre ellos. Para ese nexo de comunicación se utilizará el MAX232. Se trata de un elemento que funciona alimentado con una tensión de +5V, pero que es capaz de entregar tensiones de salida de hasta +10V y -10V, ayudado por la conexión externa de unos condensadores que el fabricante impone en su diseño. Se trata, por tanto, de un elemento que permite transformar niveles de señal TTL a RS232 y viceversa, niveles de señal RS232 a TTL. Recordando que el microcontrolador sólo trabaja con niveles TTL y el PC nada más con niveles RS232, éste es el elemento ideal, por lo cual es utilizado habitualmente en la comunicación de PCs con otros periféricos. Sus características técnicas aparecen recogidas en el Anexo de esta Memoria. 1.3.5. OTROS INTEGRADOS. Aunque en otros apartados se explica con detalle el funcionamiento del módulo bidireccional y el cálculo de sus elementos creemos necesario hacer un comentario, de por qué se utilizaron los integrados y elementos del mismo. Al tratarse de un sistema bidireccional, en principio hubiésemos necesitado hasta 16 bits de control, uno para cada una de las líneas, más los controles de alimentación, para evitar esto he diseñado un sistema “cuasi-bidireccional” mediante el cual la propia línea controla la bidireccionabilidad del bit ya sea este enviado o recibido. Para ello trabajamos con puertas en conector abierto y sus resistencias de pull-up correspondientes, el C.I. utilizado para este fin es el 74LS641. - 13 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Los demás C.I. utilizados son el 74HC573 y el 74HC541, los cuales se encargan el primero de hacer llegar el bit por la línea en la ida y mantenerlo en la línea correspondiente del bus a comprobar mientras éste esté trabajando, el segundo se encarga del regreso del bit hacia el microcontrolador y recoge el valor que envía el bus a comprobar. El 74HC573 es utilizado por ser mucho más rápido en desactivarse que el 74HC541 en activarse, con lo cual no pueden nunca robarse el dato uno al otro y producir de esta manera un error. Otro 74HC541 es utilizado para el control de alimentación de los integrados a probar y la bidireccionabilidad del módulo bidireccional. Todos los integrados utilizados han sido elegidos, a parte de por ser idóneos tecnológicamente hablando para el sistema, también por tratarse de sistemas integrados de 8 elementos y situados en forma de “Bus”, con lo cual facilita en mucho el diseño de la placa del circuito, además de ser controlados todos sus buffers internos por una sola patilla de activación, teniendo también en cuenta su fácil acceso al mercado y su utilización habitual en estos menesteres. Para más información sobre los integrados utilizados, sus características técnicas aparecen recogidas en el Anexo de esta Memoria. - 14 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4. DESCRIPCIÓN DEL PROYECTO. 1.4.1. GENERALIDADES. Este proyecto está formado por dos Unidades, a las que podemos llamar Unidad Principal compuesta por el PC y la Unidad Secundaria o Dispositivo Comprobador, esta última está implementado en una placa de circuito impreso y compuesta a su vez por dos módulos bien diferenciados que vendrían a ser la Unidad Microcontroladora y el Módulo Bidireccional. Entre el PC y la Unidad Microcontroladora se produce un intercambio de información y una gestión de esa información para la obtención de los resultados buscados, que no son ni más ni menos que verificar que el bus en cuestión, funciona de forma correcta o no. - 15 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.2. UNIDAD PRINCIPAL. 1.4.2.1. CARACTERÍSTICAS DEL PC. Las características del presente proyecto no impone el uso de un PC de características especiales, de manera que un estandart permite, perfectamente la ejecución del programa siempre que cumpla unos mínimos requisitos, como son un ordenador PC compatible PENTIUM III o superior, que disponga de unidad de disco duro de libre acceso, memoria RAM de 16 Mbytes y de una versión entorno Windows 95 o superior. 1.4.2.2. DESCRIPCIÓN DEL FUNCIONAMIENTO DEL PROGRAMA DESARROLLADO EN EL PC. En primer lugar decir que en realidad se trata de dos programas principales, uno que se encarga de comprobar el SISTEMA propiamente dicho y otro es un programa recurrente en caso de que haya que configurar los datos para probar un nuevo SISTEMA, para poderlo verificar. La manipulación de cualquiera de los programas se puede llevar a cabo con el ratón de forma habitual o bien si se considera oportuno mediante teclado. Una de las características importantes es que al cargarse el programa y que no es habitual en otros, es que es capaz de seleccionar el puerto serie a través del cual hará la comunicación serie, por lo tanto se configurará en el COM1 o bien en el COM2. Por defecto siempre lo intentará primero en el COM1, pero si este está ocupado por otro dispositivo se configurará en el COM2. Una vez cargado el programa, aparecerá una pantalla de presentación para poder entrar definitivamente en el programa o salir de él, a través de la siguiente pantalla que nos aparece seleccionamos el bus a comprobar a través del programa “Selecciona Sistema” y procedemos a su verificación. La verificación se lleva a cabo a través del programa “Verifica” de la siguiente manera: - 16 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - Abre el archivo correspondiente al bus a comprobar. - Lee el archivo línea a línea. - Convierte la información leída en caracteres ASCII. - Va mandando información a la Unidad Secundaria y recibiendo información de la misma. - Compara la información recibida con la que tiene como patrón. - Decide si es información Correcta o no. - Termina la comprobación y está listo para comprobar otro bus. - Si se ha producido algún error, saca por pantalla el correspondiente y cierra el archivo, a disponible para mensaje de error partir se de ese momento vuelve a estar comprobar de nuevo. En caso de que el bus a verificar no se encuentre entre los ya configurados en nuestra librería de archivos el programa nos advertirá de este hecho y podremos configurarlo. Para configurar un sistema accederemos al programa “Configura Bus” y lo configuraremos, a partir de ese momento y podremos verificar el bus. - 17 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.3. UNIDAD SECUNDARIA. 1.4.3.1. UNIDAD MICROCONTROLADORA. Esta parte constituye el centro inteligente de la placa de Unidad Secundaria, ya que en esta parte se encuentra el microcontrolador 80C51 que es quien se encarga de gestionar la ordenes. Los elementos principales que componen esta parte son: 1.- El microcontrolador 80C51. El cual se encarga de almacenar y ejecutar el programa en lenguaje ensamblador y coordina la comunicación con el PC, en él se han utilizado los cuatro puertos, para gestionar las señales del modo siguiente: - Puerto 0. (P0). Utilizado como salida de datos para el control de la bidireccionabilidad del módulo bidireccional. P0.7. Establece la dirección del bit en el módulo bidireccional. Cuando su valor es “1” el dato circula del microcontrolador hacia el sistema a verificar. Cuando el valor es “0” el dato circulará de vuelta, como resultado, hacia el microcontrolador. - Puerto 1. (P1). Actúa como entrada y salida de datos del bit 0 al 7 del sistema a comprobar. Utilizamos el puerto completo. - 18 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - Puerto 2. (P2). Actúa como entrado y salida de datos del bit 8 al 15 del sistema a comprobar. Utilizamos el puerto completo. - Puerto 3. (P3). Puerto de Comunicación Serie con sólo dos señales. P3.1. Línea de Transmisión de Datos. (TXD). P3.0. Línea de Recepción de Datos. (RXD). 2.- Módulo de Comunicación Serie. Constituido, básicamente, por un elemento MAX232 que será el enlace entre el PC y el microcontrolador en el intercambio de información bajo la norma RS232. También se emplea un oscilador de cuarzo para establecer la base de tiempos del reloj interno de la CPU, que tiene como característica una frecuencia de 11.0592 Mhz. Ha sido escogido con este valor para conseguir velocidad de transmisión estandart de 19200 baudios. En apartados posteriores se profundiza en la comunicación serie. 1.4.3.2. DESCRIPCIÓN DEL PROGRAMA DESARROLLADO EN EL MICROCONTROLADOR. Para el desarrollo del programa ensamblador por medio de este microcontrolador, se han tenido en cuenta además del Acumulador, aquellos registros de funciones especiales que intervienen necesariamente en un programa que gestiona el uso del Puerto Serie de Comunicación. Estos registros son: SCON, TMOD, TCON, TH1, PCON y SBUF. - 19 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Su función así como el valor que se les asigna son contenidos en la Memoria de Cálculo de este proyecto, indicando igualmente el empleo de los Flags RI y TI. La comunicación se ha realizado en Modo 1, que también queda reflejado en la Memoria de Cálculo. En lo que respecta al mapa de memoria, el programa ensamblador diseñado ha sido almacenado en la memoria interna, entre las direcciones “0000H” y “0181H”. Sin embargo, ha sido necesario respetar la parte inicial de la memoria, entre las direcciones “0000H” y “0020H” debido a que corresponde al espacio destinado por el microcontrolador en su funcionamiento, con lo cual el programa propiamente empieza en la dirección “0100H”. En primer lugar se prepara la unidad microcontroladora para recibir información vía serie. Una vez configurada la unidad para la comunicación el programa de dispones a esperar dato. El primer dato que llega es el de control de comunicación, una vez recibido el dato y si no se produce ningún error de comunicación, se recibirán los datos a enviar hacia el conector donde estará conectado el sistema a comprobar. Después mediante el bit P0.7. se configura el Módulo Bidireccional para que devuelva los datos del BUS a comprobar desde el Conector. Una vez recibidos los datos, los envía al PC y este los compara con sus patrones. Cuando termina la comprobación de un BUS, queda en disposición de comprobar otro BUS. - 20 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.3.3. MODULO BIDIRECCIONAL. Es la parte encargada de hacer el trabajo sucio, la componen una serie de integrado acompañados de otros elementos y se encarga de llevar el dato hasta el Conector donde se encuentra el BUS a comprobar y después se encarga también de devolver el dato con el resultado obtenido hacia el microcontrolador. En primer lugar un 74HC541 recibe a través del P0 el dato de control de dirección que tiene que llevar el dato, y activa la el sentido que lleva el dato en el Módulo Bidireccional. Cuando el bit P0.7. es “1” se activará el 74HC573 que lleva el dato hasta el buffer 74LS641 que es de Colector Abierto y de este va directamente al conetor donde se encuentra el BUS a comprobar. La salida de este buffer de Colector Abierto está conectada al bit correspondiente del BUS a comprobar y una resistencia de pull-up, mediante los cuales se ha implementado un puerta And cableada, de forma que la propia línea es capaz de identificar si el dato que lleva puede ser de entrada del bus a comprobar o de salida. Cuando P0.7. es “0” se desactivan los 74HC573 y se activan los 74HC541 dispuestos para esta función, de forma que el dato cambia de dirección y vuelve hacia el microcontrolador. Hay que tener en cuenta que el 74HC541 es mucho mas lento en activarse que el 74HC573 en desactivase. Con lo cual y debido a la And cableada que se comentó con anterioridad se la línea envió un “1” hacia el Conector se comprobación, si por esa línea había un bit de salida, la línea cogerá el bit de salida que haya , bien sea un “1” o un “0”. Si lo que había enviado era un “0”, devolverá también un “0”. Por tanto, habrá que tener en cuenta al configurar el BUS que el bit que sea de salida, siempre debe recibir un “1”. - 21 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.4. CARACTERÍSTICAS DE LOS SISTEMAS A COMPROBAR. Los SISTEMAS a comprobar deben tener los niveles altos y bajos de 1 y 0 estandars de 5v y 0v, o compatibles y con un máximo de 16 bits. Como PROTOTIPO, creo que las características de los sistemas cumplen de sobras las expectativas creadas para dar fe del correcto funcionamiento y aplicación del dispositivo. Dando por hecho evidentemente la posible ampliación del abanico de posibilidades de comprobación, siguiendo la tecnología y el método de trabajo expuesto en este proyecto. 1.4.5. ELEMENTOS DE VISUALIZACIÓN. El elemento de visualización principal es el monitor del PC, en el vemos el formulario del programa y mediante el ratón o teclado actuamos sobre él y vemos en pantalla el resultado de la operación y algunas de la características del bus. Evidentemente también es necesaria la pantalla cuando escribimos sobre ella para configurar o seleccionar el sistema. Sin la pantalla, el proceso no podría ser llevado a cabo, ya que este es parte fundamental para proceder a la selección de las funciones a ejecutar el programa. Otro elemento de visualización es un diodo Led de color rojo, que a modo de chivato de comprobación de la existencia de alimentación en el dispositivo, se ilumina cuando el interruptor que da paso de alimentación al dispositivo está cerrado. Ambos elementos están situados en la parte frontal de la caja donde está alojada la placa de circuito impreso del dispositivo. - 22 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.6. CONEXIÓN VÍA SERIE CON EL PC. El circuito de control del Prototipo, o más bien la placa de la CPU de la Unidad Microcntroladora ha sido equipado con un puerto serie para la comunicación bajo la norma RS232, con el PC. Este puerto de comunicación en dicha unidad, se presenta en forma de un conector DIN de 9 contactos macho que aparece instalado sobre la placa de circuito impreso, en la parte trasera de la caja. Para establecer dicha comunicación se utiliza como enlace cable trenzado apantallado, especial para transmisiones, de 7 conductores, donde para evitar la atenuación de la señal y la influencia de las capacidades entre conductores, la longitud máxima del mismo se ha limitado a 15m (habitualmente se utilizarán longitudes inferiores de conductor, debido a la necesidad de la proximidad del PC, para la coordinación de la funciones de entre éste y el Prototipo durante la ejecución del Programa). A cada extremo del conductor se han instalado un conector DIN de 9 contactos hembra. La conexión entre los distintos terminales de estos se detalla en la lámina correspondiente del apartado de Planos. Dado que el puerto serie que puede seleccionar el programa en el PC, puede ser cualquiera de los dos habituales que posen los PC, como son el COM1 y el COM2, dependiendo de cual de los dos este disponible. Esta conexión entre el PC y la unidad microcontroladora en ningún momento debe ser manipulada o desconectada durante el proceso de comprobación de un BUS, ya que tendría lugar la detención del proceso de ejecución, siendo imposible recuperar el control para proseguir con la comprobación del BUS que se estuviese probando en ese momento. Hasta ahora hemos hecho mención a la forma física de efectuar al conexión entre el PC y el Prototipo, a continuación trataremos de las condiciones de comunicación a través de software propiamente. - 23 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. El software de la transmisión puede ser decantado hacia dos opciones diferentes, como serían: 1.- Inicialmente, el PC transmite todos los datos al Prototipo y esta los almacena en su memoria. Posteriormente, cuando han sido recibido todos ellos, el Prototipo procede a al ejecución de todas las ordenes hasta que finaliza. 2.- Otra opción es que se produzca la transmisión de cada dato valor a valor, de manera que la ejecución de cada orden es, prácticamente, simultánea a su recepción y no se permite la transmisión de una nueva orden hasta que la anterior ha sido completada. El trabajo con el primer método es mucho más simple si se dispone de la suficiente capacidad de memoria para almacenamiento, pero conlleva el inconveniente de que no permite un seguimiento simultáneo de la transmisión y ejecución. El segundo método, simplifica el hardware del proyecto, además de que si se produce un error o un dato enviado es incorrecto deja de enviar información con lo cual ahorramos tiempo y la prueba se hace más real. Por tanto el método escogido ha sido el segundo, debido a que el PC envía los datos de una línea de la tabla de la verdad, espera que el Prototipo los gestione y espera a recibir los datos del resultado y los compara una vez recibidos con sus datos patrón, acontinucación envía la siguiente línea y así de forma sucesiva hasta que termina el archivo del BUS a comprobar. La comunicación entre los elementos de este proyecto tiene lugar, únicamente, a través de la línea TXD y RXD, para lo cual ha sido imprescindible establecer un “protocolo” para la correcta comunicación entre ambas unidades. - 24 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. La configuración de la comunicación del microcontrolador ha sido establecida en Modo 1, seleccionado desde el registro SCON, con el siguiente formato: - 1 bit de Start (0). - 8 bits de Dato (LSB). - 1 bit de Stop (1). La velocidad de comunicación será de 19200 baudios. Este protocolo ha consistido en establecer un carácter especial de entre los que se envíen, antes y después de enviar o recibir cada dato. El carácter especial será el código ASCII 02d. Cuando el PC se dispone a enviar un dato, primero envía el carácter ASCII 02d y el microcontrolador que está esperando para recibirlo, en cuanto lo recibe los vuelve a mandar al PC para decirle que esta dispuesto a recibir el dato que quiere mandarle. El PC recibe de nuevo el carácter identificador y envía el dato en cuestión. De forma análoga trabaja cuando ocurre la transmisión del dato desde el microcontrolador al PC. Si se produce un error en la transmisión , en la pantalla aparecerá el mensaje correspondiente al error, lo cual provocará que termine la ejecución y volvamos al principio de la operación de verificación del sistema. Si no se estable este “protocolo”, los datos se solaparían entre sí, los programas del PC correrían de forma totalmente independiente del microcontrolador, de manera que se “colgaría”, con la consecuente pérdida de valores aparición de otros incorrectos. Las características de los programas de Comunicación del PC y la unidad microcontroladora, se indican, junto con los propios programas en la Memoria de Cálculo del presente proyecto. - 25 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.7. SISTEMAS DE SEGURIDAD. Teniendo en cuenta que el dispositivo debe probar buses que pueden estar posiblemente deteriorados, debemos establecer algún sistema que proteja el prototipo de los mismos. Después de probar diversos métodos nos decidimos por el más rápido, que es detectar el error mediante software y automáticamente por programa abandonar la comprobación. Por tanto cuando se realiza la comprobación del BUS, en cuanto detecta que el resultado de la comprobación de una línea de la tabla de la verdad es incorrecto, abandona la comprobación , cerrando el archivo. Esto también ocurre cada vez que termina de probar un BUS, aunque su funcionamiento sea correcto. Hemos comprobado que este el método más rápido y eficaz para proteger nuestro dispositivo. 1.4.8. ALIMENTACIÓN Y CONSUMO. El dispositivo se alimenta a través del conector dispuesto en la parte trasera a propósito de esta misión. La alimentación del dispositivo deber proporcionarla una fuente de alimentación de corriente continua de 5V y con una carga máxima previsible de 300mA. Mediante el interruptor dispuesto en la parte frontal del Prototipo, abrimos o cerramos el circuito de alimentación y por medio del diodo led adosado también en la parte frontal de la caja comprobaremos si el dispositivo está activado o no, según este el led iluminado o no. - 26 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.4.9. CONECTORES. El dispositivo contiene dos conectores, uno de alimentación y el otro para la comunicación serie. El conector de alimentación es del tipo acodado, macho y está situado en la placa de circuito impreso, la conexión con el macho sólo puede hacerse en la posición correcta de alimentación. El conector de comunicación serie está adosado también a la placa de circuito impreso y es del tipo DIN-9. Ambos están situados en la parte trasera de la caja del Prototipo. - 27 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2. MANUAL DE USUARIO. - 28 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.1. CONEXIÓN DEL PROTOTIPO. 2.1.1. CONEXIÓN DE LA ALIMENTACIÓN. La conexión a la alimentación se hará a través del conector, situado en la parte trasera del dispositivo, a propósito de esta función. Se trata de un conector bipolar macho, al que se le conecta la hembra correspondiente, la cual sólo tiene una posición de conexión, para evitar una conexión errónea de la alimentación, que podría causar averías en el Prototipo. La alimentación del dispositivo deber proporcionarla una fuente de alimentación de corriente continua de 5V y con una carga máxima previsible de 300mA. 2.1.2. CONEXIÓN CON EL PC. La comunicación entre ambas unidades se hace vía serie, mediante un conector DIN-9 macho que está situado en la parte trasera del Prototipo. Como existe la posibilidad de que el puerto donde vamos a conectar el ordenador sea un puerto USB, debemos tener en cuenta que en ese caso debemos colocar una adaptador de USB a puerto serie con conector DIN-9 para poder efectuar la conexión. Dicha conexión debe hacerse en el puerto serie que quede libre en el ordenador, bien sea, el COM1 y COM2. 2.2. ASPECTOS GENERALES A TENER EN CUENTA EN AL UTILIZACIÓN DEL SISTEMA. En este apartado vamos a tratar de explicar algunos aspectos generales que debemos conocer para la correcta utilización del Prototipo y obtener de esta manera el máximo rendimiento del sistema. - 29 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.2.1. CON RESPECTO AL SOFTWARE. En primer lugar debemos tener en cuenta que cuando se carga el progama en el PC, este selecciona y configura el puerto serie que queda libre, de forma que no nos tenemos que preocupar de seleccionarlo nosotros. Es también conveniente que el “Prototipo” esté accionado cuando se carga el programa en el PC. Pero sobre todo lo que tenemos que tener en cuenta para obtener el máximo rendimiento del sistema, es que se trata de un programa para Windows, en todos sus aspectos. Con lo cual el programa CONTROLUS, posee todas las características esenciales de un programa para Windows, como son: 1.- La posibilidad de minimizar, maximizar, cerrar, mover... el formulario del programa, puesto que posee el recuadro superior izquierdo con el signo menos típico de una ventana de Windows y las teclas de la derecha del perímetro de la ventana para poder maximizar o minimizar el formulario. 2.- A la hora de dar las ordenes oportunas, podemos hacerlo mediante el ratón, accionando las teclas que aparecen en pantalla, o bien, mediante teclado a través de los cursores, o con la tecla “ALT + (la letra subrayada)”. En definitiva siguiendo exactamente los métodos utilizados en cualquier sistema Windows. 3.- Como cualquier sistema Windows podemos abrir varias ventanas e ir trabajando de forma alternativa en ellas. 4.- Dispone el sistema de administrador propio de archivos que funciona de forma exactamente igual que cualquier otro administrador de archivos de Windows, en el se pueden establecer rutas de acceso, elegir archivos de BUS, acceder a otras unidades de disco diferentes de “C” para trabajar. 5.- El programa “Configura el BUS”, dispone de un editor de texto con la funciones propias de los mismos en Windows, como “Control + C” para copiar, “Control + V” para pegar, “Control + Z” para deshacer y otras. En definitiva el sistema funciona como cualquier programa desarrollado en entorno Windows, de ahí su facilidad de uso y atractivo. - 30 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.2.2. CON RESPECTO AL SISTEMA A COMPROBAR. Los SISTEMAS a comprobar deben tener los niveles altos y bajos de 1 y 0 estandars de 5v y 0v, o compatibles y con un máximo de 16 bits. El bus a comprobar se debe conectar a través del conector, situado en la parte superior central del Prototipo. Si no se siguen las condiciones expuestas, será imposible llevar a cabo la comprobación del bus. 2.3. COMPROBACIÓN DE UN BUS. Una vez hemos accedido al programa, nos encontramos con la pantalla principal del mismo, tal y como vemos en la figura siguiente, donde aparecen las diferentes etiquetas de características y funcionamiento del BUS a comprobar, estas son: - 31 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 1.- “SISTEMA SELECCIONADO”. Donde aparecerá el nombre del archivo que contiene los datos del sistema que hemos seleccionado para su comprobación, en color azul. 2.- “FUNCIONAMIENTO”. Donde aparecerá la palabra CORRECTO o INCORRECTO dependiendo del funcionamiento del BUS que hallamos comprobado, en color rojo y VERIFICANDO mientras se esté comprobando el BUS. 3.- “NOMBRE”. Donde aparecerá el nombre del sistema que estamos probando. 4.- “Nº DE BITS”. Donde aparecerá el número de bits del bus a comprobar. 5.- “COMPROBANDO VECTOR”. Donde aparece el número de vector que se está comprobando, de forma que cuando concluye la comprobación lo indica con BUS COMPLETO. 6.- “DATOS ENVIADOS”. Donde aparece el vector de bits que enviamos para hacer la comprobación del sistema a comprobar. 7.- “DATOS ESPERADOS”. Donde aparece el vector de bits que esperamos recibir y que utilizamos como patrón para hacer la comprobación del sistema a comprobar. 8.- “DATOS RECIBIDOS”. Donde aparece el vector de bits que recibimos y que comparamos con los utilizados como patrón para hacer la comprobación del sistema a comprobar, de manera que podemos conocer incluso que bit no se corresponde con el esperado y concluir que línea del bus no funciona. También nos aparecerán en pantalla los cuatro pulsadores siguientes: A.- “Verifica”. B.- “Selecciona el Sistema”. C.- “Configura el Bus”. D.- “Fin”. - 32 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Cada uno de estos botones tienen una misión especifica que iremos desarrollando a lo largo de este Manual de Usuario. Para hacer la comprobación de un bus, primero hemos de seleccionar cual queremos probar, y con anterioridad ya habremos conectado el bus en cuestión al conector como corresponde. Si no hemos seleccionado el sistema y accionamos la tecla “Verifica”, no se podrá llevar a cabo comprobación ninguna y en la pantalla nos aparecerá el mensaje de error siguiente: “Primero: Selecciona el Sistema”. A continuación se procede a la explicación de la Selección y Verificación del sistema. 2.3.1. SELECCIÓN DEL SISTEMA. Para ello debemos accionar el pulsador “Selecciona el Sistema”, al hacerlo nos aparecerá en pantalla una ventana con un administrador de archivos. Mediante el administrador de archivos podemos seleccionar el sistema a comprobar, mediante ratón o teclado, también podemos buscar los archivos de buses por todos los directorios incluso por otras unidades de disco. El administrador de archivos sólo reconoce los archivos que llevan la extensión “*.BUS”, para hacer más rápida la visualización de los archivos de buses. Una vez seleccionado del bus en cuestión, accionamos la tecla “Aceptar” o pulsamos dos veces el ratón derecho del ratón sobre el archivo, si el bus seleccionado está configurado, desaparecerá la ventana del administrador de archivos y aparecerá de nuevo la pantalla principal, y en la etiqueta de “SISTEMA SELECCIONADO”, aparecerá en color azul el nombre del archivo del bus elegido. Si el sistema seleccionado no está entre los de nuestra librería, nos aparecerá el siguiente mensaje: “No se encuentra este archivo. Verifique que la ruta y el nombre del archivo sean correctos”, con lo cual si queremos comprobar este bus, debemos primero configurarlo a través del programa “Configura el Bus”. - 33 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.3.2. VERIFICA EL SISTEMA. Una vez hemos seleccionado el bus podemos proceder a su verificación, para ello accionamos la tecla “Verifica”. Si existe algún problema al establecer la comunicación con el Prototipo en algún momento, aparecerá en pantalla el mensaje: “Error de Comunicación” y a continuación el mensaje “Revisa la Conexión o Activa el Dispositivo”, posiblemente este error se debe a una de las dos causas expuestas en los mensajes, si no es así se recomienda que se reactive el dispositivo de nuevo. Otro mensaje de error que evitará la comprobación del bus es el de “Error de Sintaxis: Configura el Bus”, que ocurre cuando el bus a comprobar ha sido configurado de forma errónea con caracteres irreconocibles por el programa o sin sentido para él, por eso nos indica que volvamos a configurarlo. Pero si como es normal no existe ningún mensaje de error, entonces se realiza la comprobación del bus. Con lo cual, una vez terminada la comprobación, realizada en cuestión de segundos, aparecerán todas las etiquetas que antes estaban vacías con los datos requeridos para verificar el funcionamiento del sistema. La más importante es la del funcionamiento, en la cual aparece en color rojo la palabra “CORRECTO” o “INCORRECTO”, según corresponda al funcionamiento del BUS, o “VERIFICANDO” mientras se está produciendo la comprobación. Debemos decir que la comprobación es interrumpida en el momento que se detecta que el funcionamiento del bus es incorrecto. A continuación podemos proceder a la comprobación de un nuevo sistema, procediendo a una nueva selección y comprobando o bien podemos obtar por salir del programa si no tenemos que hacer ninguna otra comprobación. - 34 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.4. CONFIGURAR EL BUS. Como ya se ha comentado, el sistema nos ofrece la posibilidad de aumentar nuestras librerías de buses, para mantenerlas al día y poder comprobar cualquier bus que cumpla las características necesarias, expuestas con anterioridad para poder ser comprobado por nuestro sistema. Para iniciar la configuración de un bus, partiendo de la pantalla principal, debemos accionar el pulsador “Configura el Bus”, al hacerlo nos aparecerá una nueva ventana, compuesta por una caja de texto de una capacidad de 32 Kbytes, un menú extensible “ConfiguraBus” con las siguientes opciones: 1.- “CargaTabla”. Esta opción nos permite cargar una archivo con las caracterizas del bus que ya estuviese configurado, por si tenemos que hacer alguna modificación en su configuración. Para ello nos aparece un administrador de archivos, en el cual podemos elegir el bus que queremos modificar. Si se selecciona un bus que no se tiene configurado aparecerá el mensaje: “No se ha encontrado este archivo. Verifique que la ruta de acceso y el nombre del archivo sean correctos.” Si el control esta lleno aparecerá el mensaje de error: “El archivo no se ha podido leer completo”, esto es prácticamente imposible, dado que la capacidad de la caja de testo es de 32 Kbytes. Si hacemos alguna modificación y deseamos salir del programa “Configura el Bus”, entonces se enviará el siguiente mensaje: “La tabla ha sido modificada, ¿ desea salvarla?.” y nos da la opción de salvarla o no. 2.- “SalvaTabla”. - 35 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Esta nos permite grabar un archivo que hallamos configurado. Al pulsar nos aparece un administrados de archivo que nos permite dar nombre a nuestro archivo y situarlo en el directorio o unidad de disco que queremos. Si se produce un error aparecerá el mensaje: “Imposible abrir fichero”. Al grabar, debemos tener en cuenta, que se debe hacer siempre con la extensión “*.BUS”, que es la única que reconocen los programas del sistema. 3.- “NuevaTabla”. Esta opción nos permite la configuración de un nuevo bus. 4.- “SalirComprobador”. Al accionar esta orden, salimos del programa CONTROLBUS. 2.4.1. NORMAS PARA CONFIGURAR EL BUS. En primer lugar, decir, que evidentemente debemos dar al programa la información necesaria para reconocer el funcionamiento del Bus. Para ello debemos conocer el funcionamiento del bus, los datos que debemos mandar y los que debemos recibir. Como método de trabajo se recomienda, cuando se está configurando un bus, tener a mano el manual técnico del bus a comprobar. En la primera línea de la caja de texto es donde se dará a conocer las características del bus. Se deben escribir 2 cadenas de caracteres separadas entre sí por una coma. Cada una de ellas con las siguientes características: 1ª.- Cadena. - 36 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Se debe poner el nombre del con el que identifiquemos el bus a comprobar. 2ª.- Cadena. Se debe poner el número de bits del bus a comprobar. Una vez rellena la primera línea continuamos con la configuración del bus, a partir de la siguiente línea. El cuadro de texto se divide en “TABLA DE DATOS A MANDAR”, que serán los bits que tenemos que enviar al prototipo y “TABLA DE DATOS A RECIBIR” que es los que toma el PC como patrón para comparar con los datos que le lleguen desde la Unidad Microcontroladora. En primer lugar debemos saber el número de bits del sistema a comprobar, para conocer el número de bits que debemos comprobar. Nosotros tenemos que enviar un bit por cada línea. Debemos tener en cuenta que cada línea quedará dividida por la mitad por una “,” y constará de 33 caracteres, los 16 primeros corresponden “TABLA DE DATOS A MANDAR” y tras la “,” los 16 restantes corresponde a “TABLA DE DATOS A RECIBIR”. Solamente se admiten los caracteres “1” y “0”, equivalentes a los niveles lógicos alto y bajo, y “L” que la utilizaremos cuando la línea se utilice para recibir dato o simplemente si esa línea o bit en cuestión no lo comprobemos . - 37 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.4.1. TABLA DE DATOS A MANDAR. Comenzamos a partir de la línea de texto número 2, y utilizamos los 16 primeros caracteres de la línea. Para empezar colocamos, en todas las patillas que sean salida de puerta lógica colocamos el caracter “1” y en las no conectadas o si únicamente que queremos leer “L”, en el resto de las líneas debemos poner los datos de entrada del bus. 2.4.2. TABLA DE DATOS A RECIBIR. La parte de línea de datos a recibir está situada a la derecha de la anterior y separada por una “,” de esta. Esta tabla es idéntica a la anterior, simplemente que debemos colocar los valores de bit esperados correspondientes a la respuesta esperada que llegue del bus que estemos comprobando. Para un mejor entendimiento de lo explicado anteriormente, veamos el siguiente ejemplo: - 38 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 2.5. SALIR DEL PROGRAMA. Al pulsar la tecla “Fin”, abandonamos el programa, o bien, saliendo por los métodos habituales de los sistemas Windows. - 39 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3. MEMORIA DE CÁLCULO. - 40 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1. ORDINOGRAMAS DE PROGRAMAS DEL PROYECTO. 3.1.1. ORDINOGRAMAS DE PROGRAMAS PARA PC. A continuación se mostrarán los ordinogramas de los programas mas relevantes implementados en el proyecto y para utilizar en un ordenador PC compatible PENTIUM III o superior, que disponga de unidad de disco duro de libre acceso, memoria RAM convencional libre mínima de 16 Mbytes y de una versión Windows 95 o superior. - 41 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.1. ORDINOGRAMA DEL PROGRAMA “VERIFICA”. Verifica A 1 Definimos Variables SI Si se produece un Error NO Cargamos en la línea leida en las variables correspondientes Provocamos el evento Verificar Envia un mensaje de Error Cierrra el canal y sale del procedimiento, volviendo al Form. inicial Abrimos el Canal Convertimos en ASCII el byte a enviar Obtenemos el nº de Canal libre 1 Rutina "Enviar" Activamos la detección de Errores Abrimos el Archivo que contiene los datos del BUS a comprobar Rutina "Recibir" SI Saca por pantalla las tablas de bits Si se produece un Error NO Envia un mensaje de Error Definimos Variables Privadas Si Resul<>Verificando SI NO Cierrra el canal y sale del procedimiento, volviendo al Form. inicial Leemos la primera línea del Archivo NO Si se han leido todas las lineas 2 SI 1 Cierra el Archivo Cierra el bucle Si se produece un Error SI Saca por pantalla "INCORRECTO" NO Cerramos el Archivo Envia un mensaje de Error Sacar por pantalla los datos leidos Saca por pantalla "CORRECTO" Cierrra el canal y sale del procedimiento, volviendo al Form. inicial Sal del procedimiento y vuelve al Form. inicial Abrimos un bucle hasta que leamos todo el Archivo 2 Fin 1 Leemos la siguiente linea Comprobamos que la sintaxis de la línea es correcta A - 42 - 1 PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.2. ORDINOGRAMA DE RUTINA “CARGAFORM”. Inicio Carga el Formulario Testbus Establece el título de la Ventana Comprueba si el NO PORT 1 está disponible SI Configura el PORT 1 para la Comunicación Configura el PORT 2 para la Comunicación Fin - 43 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.3. ORDINOGRAMA DEL PROCEDIMIENTO “SELECIONA SISTEMA”. Selecciona el Sistema Da título a la ventana Establece que los archivos a leer son de extensión *.BUS Muestra el Cuadro de Diálogo Al elegir el sistema aparece en la etiqueta el archivo seleccionado Deja en blanco la etiqueta del Resultado Fin - 44 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.4. ORDINOGRAMA DE RUTINA “CONVASCII”. CONVASCII Lee cada uno de los bits del caracter Reconoce "1" "0" o "L" Define las Variable H y P y la matriz n(1 to 8) Abrimos un bucle de contador desde 8 hasta 1 Si bit=1 o bit=L SI NO N(H)=0 N(H)= 1*2^P Incrementa H Incrementa P NO Si I=1 SI Sumatorio de N(H) Decimal=Chr(Sumatorio N(H)) Fin - 45 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.5. ORDINOGRAMA DE RUTINAS “COMUNICA1”. Comunica1 Enviamos al micro el caracter de Comunicación Abrimos un bucle hasta que en el buffer este el caracter que indique que el micro está dispuesto Si el buffer recibe el dato NO SI Se ha producido un error El caracter recibido lo cargamos en Recibido1 Envia el mensaje de error Cerramos el Archivo Salimos del procedimiento y volvemos al Form. inicial Fin 1 - 46 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.7. ORDINOGRAMA DE RUTINA “ENVIAR”. Enviar Enviamos al micro el caracter de Comunicación Abrimos un bucle hasta que en el buffer este el caracter que indique que el micro está dispuesto Si el buffer recibe el dato NO SI Se ha producido un error Enviamos el caracter al micro Envia el mensaje de error Cerramos el Archivo Salimos del procedimiento y volvemos al Form. inicial Fin 1 - 47 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.8. ORDINOGRAMA DE RUTINA “RECIBIR”. Recibir Convierte en ASCII los datos patrones a comparar Envia los datos recurriendo a las subrrutinas Comunica1 y Comunica2 Si INT1=Recibido1 y INT2=Recibido2 NO SI Resultado="Verificando" Resulatado="Incorrecto" Fin - 48 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.1.8. ORDINOGRAMA DE PROGRAMA “CONFIGURA BUS” ConfigBus Define las constantes de Opciones Define las variables necesarias Podemos seleccionar una de las cuatro constantes del menú CargaTabla W Salvatabla NuevaTabla X Y - 49 - SalirComprobador Z PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. W A Ocultamos la caja de texto Carga un nuevo archivo de texto Si el archivo ha sido modificado SI Borramos el contenido actual del control X NO 1 Establece el separador de líneas Preparar el Cuadro de Diálogo Abrimos un bucle hasta que leamos el final del fichero Título de la Ventana 2 Leemos una línea de texto Establece que los archivos son de extensión *.BUS Borramos cualquier otro error anterior Mostrar el Cuadro de Diálogo Aparece el texto en la pantalla Preservar el nombre del Archivo Seleccionado Si se produce un error SI por archivo completo Cerrar el cuadro de diálogo NO NO 2 Obtenemos un nº de Canal libre Si se ha leido completo SI Cierra el bucle y el fichero Envia mensaje de error Activamos la Detección de Errores Establece el título de la ventana y desactiva la detección de errores Vuelve al cuadro de diálogo Abrimos el Canal Reestablece el cursor del ratón Si se ha producido SI un error NO El archivo aún no ha sido modificado Salvar el cursor Actual Envia mensaje de error Activamos el cursor de espera Vuelve al cuadro de diálogo Fin A 1 - 50 - 1 PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. X Salva el archivo actual 3 Preparar el cuadro de diálogo Establece el título de la ventana y la extensión de los archivos a cargar de extensión *.BUS Establece el nombre del archivo por defecto Debe existir el camino especificado Mostrar el cuadro de diálogo Reservar el nombre del archivo seleccionado y cerrar el cuadro de diálogo Obtenemos un nº de canal libre y activamos la detección de errores Abrimos el fichero Si se produce un error SI NO Salva el cursor actual y activa el cursor de espera Envia mensaje de error Escribir el contenido del control Vuelve al cuadro de diálogo Cerrar el fichero 3 desactiva el detector de errores Reestablece el cursor del ratón El archivo no ha sido modificado Fin - 51 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Y NuevaTabla Si el archivo ha sido modificado SI NO Eliminar el contenido del actual control Enviar mensaje Establecer nombre del archivo por defecto X Z Establecer el título de la ventana Salir del comprobador Desactivar el indicador de modificado Abandona el Programa Fin Fin - 52 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.2. DEL ORDINOGRAMAS PROGRAMA ENSAMBLADOR “COMUNICACION”. Comunicación A Configuramos el micro para comunicación serie con el PC Rutina "Recibe" Esperra a recibir el identificador de comunicación 1 Rutina "Recibe" Esperamos recibir identificador de comunicación NO Si recibimos el identificador adecuado de comunicación SI NO Si recibimos el identificador de comunicación de fto. correcto SI Carga en el ACC los datos del PORT1 Rutina "Envia" Enviamos identificador de buena recepción Rutina "Envia" Enviamos carácter Rutina "Recibe" Recibir el caracter que establece la configuración del bus a comprobar Rutina "recibe" Espera recibir identificador de comunicación Carga en el PORT 0 el dato recibido NO Si recibimos el identificador adecuado de comunicación SI Rutina "RECIB1" Recibir datos a cargar en el PORT1 Carga en ACC los datos del PORT2 Rutina "RECIB2" Recibir datos a cargar en el PORT2 Rutina "Envia" Enviamos el carácter Ponemos a 0 el P0.7 Confifurando bus bidireccional como salida de datos del integrado 1 A - 53 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.2.1 ORDINOGRAMA DE RUTINA “RECIB1”Y “RECIB2” RECIB1 RECIB2 Guarda el valor del ACC Guarda el valor del ACC Rutina "Recibe" Esperamos recibir identificador de comunicación Rutina "Recibe" Esperamos recibir identificador de comunicación Si recibimos el identificador adecuado de comunicación Si recibimos el identificador adecuado de comunicación NO SI NO SI Rutina "Envia" Confirma comunicación correcta Rutina "Envia" Confirma comunicación correcta Rutina "Recibe" Recibe carácter Rutina "Recibe" Recibe carácter Carga el carácter en PORT1 Carga el carácter en PORT2 Devuelve el valor inicial al ACC Devuelve el valor inicial al ACC Fin Fin - 54 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.2.2. ORDINOGRAMA DE RUTINA “ENVIA”. Envia Carga el ACC en el Buffer Envia el contenido del ACC por el PORT Serie Espera a finalizar la transmisión del byte Finaliza la trasmisión del byte Fin - 55 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.1.2.3. ORDINOGRAMA DE RUTINA “RECIBE”. Recibe Espera a terminar de recibir el carácter Carácter recibido en su totalidad Carga en el ACC el carácter recibido por el PORT Serie Fin - 56 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2. LISTADOS DEL PROYECTO. 3.2.1. LISTADOS DE PROGRAMAS PARA PC. A continuación se mostrarán los listados de todos los programas implementados en el proyecto y para utilizar en un ordenador PC compatible PENTIUM III o superior, que disponga de unidad de disco duro de libre acceso, memoria RAM convencional libre mínima de 16 Mbytes y de una versión entorno Windows 95 o superior. El programa está compuesto por archivos de extensión .MAK y archivos .FRM. El archivo CONTROLBUS.MAK, almacena la definición de todo el programa, almacena información general acerca de la aplicación, como los controles que usa, el nombre del proyecto y su versión. Cada uno de los formularios contenidos en el proyecto se almacena separadamente, en un archivo que tendrá el nombre del formulario y la extensión .FRM. También se trata de un archivo de texto, similar a los archivos de recursos de otros lenguajes, en el que se define la posición y dimensiones del formulario y de cada uno de los controles que éste contiene, así como el código del programa. El archivo ejecutable es el CONTROLBUS.EXE y su longitud es de 59 Kb. - 57 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.1. LISTADOS DE PROGRAMAS. ARCHIVO CONTROL.MAK TYPE=EXE OBJECT={F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0; COMDLG32.OCX OBJECT={FAEEE763-117E-101B-8933-08002B2F4F5A}#1.1#0; DBLIST32.OCX OBJECT={648A5603-2C6E-101B-82B6-000000000014}#1.1#0; MSCOMM32.OCX OBJECT={0BA686C6-F7D3-101A-993E-0000C0EF6F5E}#1.0#0; THREED32.OCX FORM=INIBUS.FRM FORM=TESTBUS.FRM FORM=CONFIGBUS.FRM ICONFORM="TESTBUS" STARTUP="INIBUS" HELPFILE="" TITLE="CONTROLBUS" EXENAME32="TEST05.EXE" COMMAND32="" NAME="CONTROLBUS" HELPCONTEXTID="0" COMPATIBLEMODE="0" MAJORVER=1 MINORVER=0 REVISIONVER=0 AUTOINCREMENTVER=0 SERVERSUPPORTFILES=0 VERSIONCOMPANYNAME=" " COMPILATIONTYPE=0 OPTIMIZATIONTYPE=0 FAVORPENTIUMPRO(TM)=0 CODEVIEWDEBUGINFO=0 NOALIASING=0 BOUNDSCHECK=0 OVERFLOWCHECK=0 FLPOINTCHECK=0 FDIVCHECK=0 UNROUNDEDFP=0 STARTMODE=0 UNATTENDED=0 THREADPEROBJECT=0 MAXNUMBEROFTHREADS=1 [MS TRANSACTION SERVER] AUTOREFRESH=1 - 58 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.2. LISTADO DE PROGRAMA “ARCHIVO TESTBUS.FRM”. 3.2.1.2.1. LISTADO DE PROPIEDADES “ARCHIVO TESTBUS.FRM”. VERSION 5.00 Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "comdlg32.ocx" Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "mscomm32.ocx" Begin VB.Form TESTBUS AutoRedraw = -1 'True BackColor = &H00C0C0C0& BorderStyle = 3 Caption = "CONTROLBUS" ClientHeight = 8730 ClientLeft = 2820 ClientTop = 1365 ClientWidth = 9525 LinkTopic = "Form1" MaxButton = 0 'False MinButton = 0 'False PaletteMode = 1 ScaleHeight = 8730 ScaleWidth = 9525 ShowInTaskbar = 0 'Fixed Dialog 'UseZOrder 'False Begin VB.CommandButton Command4 Caption = "&Fin" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 615 Left = 4320 TabIndex = 10 Top = 7800 Width = 975 End Begin VB.CommandButton Command3 Caption = "&Configura el BUS" - 59 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 615 Left = 6120 TabIndex = 9 Top = 7800 Width = 2895 End Begin VB.CommandButton Command2 Cancel = -1 'True Caption = "&Verifica" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 735 Left = 7800 TabIndex = 8 Top = 240 Width = 1575 End Begin VB.CommandButton Command1 Caption = "&Selecciona el Sistema" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False - 60 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. EndProperty Height = 615 Left = 480 TabIndex = 0 Top = 7800 Width = 2895 End Begin MSCommLib.MSComm MSComm1 Left = 120 Top = 2040 _ExtentX = 847 _ExtentY = 847 _Version = 393216 DTREnable = -1 Handshaking = 1 InBufferSize = 512 OutBufferSize = 1024 RThreshold = 1 RTSEnable = -1 BaudRate = 19200 SThreshold = 1 'True 'True End Begin MSComDlg.CommonDialog cajacomun Left = 120 Top = 2760 _ExtentX = 847 _ExtentY = 847 _Version = 393216 End Begin VB.Label DRECIB AutoSize = -1 'True BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single BeginProperty Font Name = "Arial" Size = 27.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H000000FF& - 61 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Height = 720 Left = 3120 TabIndex = 19 Top = 6360 Width = 210 End Begin VB.Shape Shape3 BackColor = &H0000FFFF& BorderColor = &H00FF0000& Height = 2655 Left = 240 Shape = 4 Top = 4680 Width = 8655 'Rounded Rectangle End Begin VB.Shape Shape1 BorderColor = &H00FF0000& Height = 735 Left = 240 Shape = 4 Top = 3600 Width = 8655 'Rounded Rectangle End Begin VB.Shape Shape4 BorderColor = &H00C00000& Height = 1095 Left = 840 Shape = 4 Top = 2040 Width = 7575 'Rounded Rectangle End Begin VB.Shape Shape2 BorderColor = &H00C00000& Height = 1455 Left = 120 Shape = 4 Top = 120 Width = 7575 'Rounded Rectangle End Begin VB.Label Vector AutoSize = -1 'True BackColor = &H00C0C0C0& BorderStyle = 1 'Fixed Single - 62 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. BeginProperty Font Name = "MS Sans Serif" Size = 18 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H00FFFFFF& Height = 495 Left = 3480 TabIndex = 18 Top = 960 Width = 180 End Begin VB.Label Label6 BackColor = &H00C0C0C0& Caption = "COMPROBANDO VECTOR:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 360 TabIndex = 17 Top = 1080 Width = 2895 End Begin VB.Label DENV AutoSize = -1 'True BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single BeginProperty Font Name = "Arial" Size = 27.75 Charset = 0 Weight = 700 - 63 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H0000FFFF& Height = 720 Left = 3120 TabIndex = 16 Top = 4920 Width = 210 End Begin VB.Label DESP AutoSize = -1 'True BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single BeginProperty Font Name = "Arial" Size = 27.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H00FF0000& Height = 720 Left = 3120 TabIndex = 15 Top = 5640 Width = 210 End Begin VB.Label Label10 BackColor = &H00C0C0C0& Caption = "DATOS RECIBIDOS:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty - 64 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Height = 255 Left = 480 TabIndex = 14 Top = 6600 Width = 2175 End Begin VB.Label Label8 BackColor = &H00C0C0C0& Caption = "DATOS ESPERADOS:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 480 TabIndex = 13 Top = 5880 Width = 2415 AutoSize = -1 BackColor = &H00C00000& BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single End Begin VB.Label Nom 'True BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H00C00000& Height = 300 Left = 1440 TabIndex = 12 Top = 3840 - 65 - PFC- IAEI______________ Width “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. = 135 End Begin VB.Label Label7 BackColor = &H00C0C0C0& Caption = "Nombre:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 480 TabIndex = 11 Top = 3840 Width = 975 End Begin VB.Label NºBITS AutoSize = -1 'True BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H000000FF& Height = 300 Left = 8400 TabIndex = 7 Top = 3840 Width = 135 End Begin VB.Label Etiqueta AutoSize = -1 'True BackColor = &H00C0C0C0& - 66 - PFC- IAEI______________ BorderStyle “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. = 1 'Fixed Single BeginProperty Font Name = "MS Sans Serif" Size = 18 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H00C00000& Height = 495 Left = 3480 TabIndex = 6 Top = 240 Width = 180 End Begin VB.Label RESULTADO AutoSize = -1 'True BackColor = &H00FFFFFF& BackStyle = 0 'Transparent BorderStyle = 1 'Fixed Single BeginProperty Font Name = "MS Sans Serif" Size = 24 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty ForeColor = &H000000C0& Height = 615 Left = 4200 TabIndex = 5 Top = 2280 Width = 225 End Begin VB.Label Label2 BackColor = &H00C0C0C0& Caption = "FUNCIONAMIENTO:" BeginProperty Font Name = "MS Sans Serif" - 67 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 1800 TabIndex = 4 Top = 2400 Width = 2175 BackColor = &H00C0C0C0& Caption = " End Begin VB.Label AAA SISTEMA SELECCIONADO:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 240 TabIndex = 3 Top = 360 Width = 3255 End Begin VB.Label Label3 BackColor = &H00C0C0C0& Caption = "Nº de Bits:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty - 68 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Height = 255 Left = 7200 TabIndex = 2 Top = 3840 Width = 1335 End Begin VB.Label Label4 BackColor = &H00C0C0C0& Caption = "DATOS ENVIADOS:" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 480 TabIndex = 1 Top = 5160 Width = 2175 End End Attribute VB_Name = "TESTBUS" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False 3.2.1.2.2. LISTADO DE PROGRAMA “VERIFICA”. Option Explicit Dim NombreArchivo As String Dim BAIT As String Dim DECIMA As String Dim OUT1 As String Dim OUT2 As String Dim INT1 As String Dim INT2 As String Dim OUT0 As String - 69 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Dim INT0 As String Dim RECIBIDO1 As String Dim RECIBIDO2 As String Dim RECIB1 As Integer Dim RECIB2 As Integer Dim B15 Dim B14 Dim B13 Dim B12 Dim B11 Dim B10 Dim B9 Dim B8 Dim B7 Dim B6 Dim B5 Dim B4 Dim B3 Dim B2 Dim B1 Dim B0 Dim ERROR As String Dim cambi As String Dim I As Integer Dim BIT As String Dim DIV As String Dim COCI As Integer Dim B As String Private Sub Command2_Click() Open NombreArchivo For Input As nCanal If Err Then MsgBox "Primero: Selecciona el Sistema" Close #nCanal Exit Sub End If Dim NBIT As String Dim GND As String Dim NOMB As String Input #nCanal, NOMB, NBIT, GND - 70 - PFC- IAEI______________ If Err Then “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 'Si se ha producido un error MsgBox "Error de sintaxis:Configura el Bus" Close #nCanal Exit Sub End If Dim V As Integer V = 0 Do Until EOF(nCanal) V = V + 1 Line Input #nCanal, BAIT For I = 1 To 16 BIT = Mid(BAIT, I, 1) If BIT <> "1" And BIT <> "0" And BIT <> "L" Then MsgBox "Error de sintaxis:Configura el Bus" Exit Sub End If Next For I = 18 To 33 BIT = Mid(BAIT, I, 1) If BIT <> "1" And BIT <> "0" And BIT <> "L" Then MsgBox "Error de sintaxis:Configura el Bus" Exit Sub End If Next OUT1 = Mid(BAIT, 9, 8) OUT2 = Mid(BAIT, 1, 8) INT1 = Mid(BAIT, 18, 8) INT2 = Mid(BAIT, 26, 8) OUT0 = Mid(BAIT, 1, 16) INT0 = Mid(BAIT, 18, 16) NºBITS.Caption = NBIT DENV.Caption = OUT0 DESP.Caption = INT0 Nom.Caption = NOMB cambi = OUT1 CONVASCII ENVIAR If ERROR = "mal" Then ERROR = "listo" - 71 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Close #nCanal Exit Sub End If cambi = OUT2 CONVASCII ENVIAR If ERROR = "mal" Then ERROR = "listo" Close #nCanal Exit Sub End If RECIBIR If ERROR = "mal" Then ERROR = "listo" Close #nCanal Exit Sub End If If RESULTADO <> "Verificando" Then Close #nCanal Exit Sub End If Loop Vector.Caption = "BUS COMPLETO" RESULTADO.Caption = "CORRECTO" Close #nCanal End Sub 3.2.1.2.3. LISTADO DEL PROCEDIMIENTO “MUESTRA2”. Private Sub Command3_Click() CONFIGBUS.Show End Sub 3.2.1.2.4. LISTADO DEL PROCEDIMIENTO “FIN”. Private Sub Command4_Click() MSComm1.PortOpen = False End End Sub - 72 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.2.5. LISTADO DE RUTINA “CARGAFORM1”. Private Sub Form_Load() On Error Resume Next Caption = "TEST BUS" MSComm1.PortOpen = True If Err Then MSComm1.CommPort = 2 MSComm1.PortOpen = True End If End Sub 3.2.1.2.6. LISTADO DEL PROCEDIMIENTO “SELECIONA SISTEMA”. Private Sub Command1_Click() With cajacomun .DialogTitle = "SELEC BUS" .Filter = "Archivos de Buses|*.BUS" .ShowOpen NombreArchivo = .filename Etiqueta.Caption = .FileTitle RESULTADO.Caption = "" NºBITS.Caption = "" DENV.Caption = "" Nom.Caption = "" DESP.Caption = "" DRECIB.Caption = "" Vector.Caption = "" End With End Sub 3.2.1.2.7. LISTADO DE RUTINA “CONVASCII”. Public Sub CONVASCII() Dim H As Integer Dim P As Integer Dim N(0 To 7) As Integer P = 0 H = 1 For I = 8 To 1 Step -1 - 73 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. BIT = Mid(cambi, I, 1) If BIT = "1" Or BIT = "L" Then N(H) = 1 * 2 ^ P Else N(H) = 0 End If P = P + 1 Next DECIMA = (N(1) + N(2) + N(3) + N(4) + N(5) + N(6) + N(7) + N(8)) End Sub 3.2.1.2.8. LISTADO DE RUTINA “COMUNICA1”. Private Sub COMUNICA1() MSComm1.Output = Chr(2) Do Until MSComm1.InBufferCount = 1 If MSComm1.InBufferCount <> 1 Then MsgBox "No se ha podido Verificar el BUS" MsgBox "Reactiva el Dispositivo Verificación" RESULTADO.Caption = "" NºBITS.Caption = "" DENV.Caption = "" Nom.Caption = "" DESP.Caption = "" DRECIB.Caption = "" Vector.Caption = "" ERROR = "mal" Exit Sub End If Loop RECIBIDO1 = MSComm1.Input RECIB1 = Asc(RECIBIDO1) DIV = RECIB1 COCI = DIV \ 2 B = DIV - (COCI * 2) - 74 - e Intenta de nuevo la PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. DIV = COCI BIT = Mid(BAIT, 8, 1) B8 = B If BIT = "L" Then B8 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 7, 1) B9 = B If BIT = "L" Then B9 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 6, 1) B10 = B If BIT = "L" Then B10 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 5, 1) B11 = B If BIT = "L" Then B11 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 4, 1) B12 = B If BIT = "L" Then B12 = BIT End If - 75 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 3, 1) B13 = B If BIT = "L" Then B13 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 2, 1) B14 = B If BIT = "L" Then B14 = BIT End If B = COCI BIT = Mid(BAIT, 1, 1) B15 = B If BIT = "L" Then B15 = BIT End If End Sub 3.2.1.2.9. LISTADO DE RUTINA “COMUNICA2”. Public Sub COMUNICA2() MSComm1.Output = Chr(2) Do Until MSComm1.InBufferCount = 1 If MSComm1.InBufferCount <> 1 Then MsgBox "No se ha podido Verificar el BUS" MsgBox "Intenta de nuevo la Verificación" RESULTADO.Caption = "" NºBITS.Caption = "" DENV.Caption = "" Nom.Caption = "" DESP.Caption = "" DRECIB.Caption = "" Vector.Caption = "" ERROR = "mal" Exit Sub - 76 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. End If Loop RECIBIDO2 = MSComm1.Input RECIB2 = Asc(RECIBIDO2) DIV = RECIB2 COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 16, 1) B0 = B If BIT = "L" Then B0 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 15, 1) B1 = B If BIT = "L" Then B1 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 14, 1) B2 = B If BIT = "L" Then B2 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 13, 1) B3 = B If BIT = "L" Then B3 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) - 77 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. DIV = COCI BIT = Mid(BAIT, 12, 1) B4 = B If BIT = "L" Then B4 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 11, 1) B5 = B If BIT = "L" Then B5 = BIT End If COCI = DIV \ 2 B = DIV - (COCI * 2) DIV = COCI BIT = Mid(BAIT, 10, 1) B6 = B If BIT = "L" Then B6 = BIT End If B = COCI BIT = Mid(BAIT, 9, 1) B7 = B If BIT = "L" Then B7 = BIT End If End Sub 3.2.1.2.10. LISTADO DE RUTINA “ENVIAR”. Public Sub ENVIAR() MSComm1.Output = Chr(2) Do Until MSComm1.InBufferCount = 1 If MSComm1.InBufferCount <> 1 Then MsgBox "Error de Comunicación" MsgBox "Revisa la Conexión o Activa el Dispositivo" RESULTADO.Caption = "" NºBITS.Caption = "" DENV.Caption = "" Nom.Caption = "" - 78 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. DESP.Caption = "" DRECIB.Caption = "" Vector.Caption = "" ERROR = "mal" Exit Sub End If Loop Dim ELIMINA As String ELIMINA = MSComm1.Input MSComm1.Output = DECIMA End Sub 2.2.1.2.11. LISTADO DE RUTINA “RECIBIR”. Public Sub RECIBIR() cambi = INT1 INT1 = DECIMA COMUNICA1 cambi = INT2 INT2 = DECIMA COMUNICA2 DRECIB.Caption = B15 & B14 & B13 & B12 & B11 & B10 & B9 & B8 & B7 & B6 & B5 & B4 & B3 & B2 & B1 & B0 If INT1 = RECIBIDO1 And INT2 = RECIBIDO2 Then RESULTADO.Caption = "Verificando" Else RESULTADO.Caption = "INCORRECTO" End If End Sub - 79 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.3. LISTADO DE PROGRAMA “ARCHIVO CONFIGBUS.FRM”. 3.2.1.3.1. LISTADO DE PROPIEDADES “ARCHIVO CONFIGBUS.FRM”. VERSION 5.00 Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "comdlg32.ocx" Begin VB.Form CONFIGBUS BorderStyle = 1 'Fixed Single Caption = " CONTROLBUS" ClientHeight = 3255 ClientLeft = 3225 ClientTop = 2850 ClientWidth = 8460 LinkTopic = "Form2" PaletteMode = 1 ScaleHeight = 3255 ScaleWidth = 8460 'UseZOrder Begin VB.TextBox Texto BeginProperty Font Name = "Arial" Size = 21.75 Charset = 0 Weight = 400 Underline = 0 'False Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 1815 Left = 120 MultiLine = -1 ScrollBars = 2 TabIndex = 0 Top = 960 Width = 8175 'True 'Vertical End Begin MSComDlg.CommonDialog cajacomun Left = 3720 Top = 1320 _ExtentX = 847 _ExtentY = 847 _Version = 393216 End Begin VB.Line Line5 X1 = 120 X2 = 8040 - 80 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Y1 = 720 Y2 = 720 End Begin VB.Line Line4 X1 = 4080 X2 = 4080 Y1 = 1080 Y2 = 240 End Begin VB.Line Line3 X1 = 120 X2 = 8040 Y1 = 240 Y2 = 240 End Begin VB.Line Line2 X1 = 120 X2 = 120 Y1 = 1080 Y2 = 240 End Begin VB.Line Line1 X1 = 8040 X2 = 8040 Y1 = 1080 Y2 = 240 End Begin VB.Label Label2 Caption = "TABLA DE DATOS A RECIBIR" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = -1 'True Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 4560 TabIndex = 4 Top = 360 Width = 3135 - 81 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. End Begin VB.Label Label1 Caption = "TABLA DE DATOS A MANDAR" BeginProperty Font Name = "MS Sans Serif" Size = 9.75 Charset = 0 Weight = 700 Underline = -1 'True Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 255 Left = 480 TabIndex = 3 Top = 360 Width = 3255 End Begin VB.Label PINES Caption 5 4 3 2 = 1 " 16 15 14 13 12 11 10 9 8 7 6 13 12 11 10 9 8 7 6 " BeginProperty Font Name = "Small Fonts" Size = 6.75 Charset = 0 Weight = 700 Underline = -1 'True Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 375 Index = 1 Left = 4080 TabIndex = 2 Top = 720 Width = 3975 End Begin VB.Label PINES Caption 5 4 3 2 = 1 " 16 15 14 " BeginProperty Font Name = "Small Fonts" Size = 6.75 - 82 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Charset = 0 Weight = 700 Underline = -1 'True Italic = 0 'False Strikethrough = 0 'False EndProperty Height = 375 Index = 0 Left = 120 TabIndex = 1 Top = 720 Width = 3975 End Begin VB.Menu MenúBus Caption = "&ConfiguraBus" WindowList = -1 'True Begin VB.Menu Opcbus Caption = "&CargaTabla" Index = 0 End Begin VB.Menu Opcbus Caption = "&SalvaTabla" Index = 1 End Begin VB.Menu Opcbus Caption = "&NuevoTabla" Index = 2 End Begin VB.Menu Opcbus Caption = "-" Index = 3 End Begin VB.Menu Opcbus Caption = "&SalirComprobador" Index = 4 End End End Attribute VB_Name = "CONFIGBUS" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False - 83 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.3.2. LISTADO DE PROGRAMA “CONFIGURA BUS” Option Explicit Const CargaTabla = 0 Const SalvaTabla = 1 Const NuevaTabla = 2 Const SalirComprobador = 4 Dim NombreArchivo As String Dim Modificado As Boolean Private Sub Opcbus_Click(Index As Integer) Select Case Index Case CargaTabla If Modificado Then If MsgBox("La tabla ha sido modificada, ¿desea salvarla?", vbYesNo, "Cargar Bus") = vbYes Then Opcbus_Click SalvaTabla End If End If With cajacomun .DialogTitle = "Cargar Bus" .Filter = "Archivos de Buses|*.BUS" .ShowOpen NombreArchivo = .filename End With Dim nCanal As Integer nCanal = FreeFile On Error Resume Next Open NombreArchivo For Input As nCanal If Err Then MsgBox "Imposible abrir el archivo indicado" Exit Sub End If Dim CursorAnterior As Byte CursorAnterior = Screen.MousePointer Screen.MousePointer = vbHourglass Texto.Visible = False - 84 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Texto.Text = "" Dim LineaTexto As String, Separador As String Separador = Chr(13) + Chr(10) Do Until EOF(nCanal) Line Input #nCanal, LineaTexto Err.Clear Texto.Text = Texto.Text & LineaTexto & Separador If Err Then MsgBox "El archivo no se ha podido leer completo" Exit Do End If Loop Texto.Visible = True Close Caption = "(" & NombreArchivo & ")" On Error GoTo 0 Screen.MousePointer = CursorAnterior Modificado = False Case SalvaTabla With cajacomun .DialogTitle = "CONTROLBUS - Salvar Bus" .Filter = "Archivos de Buses|*.BUS" .DefaultExt = "BUS" .filename = NombreArchivo .ShowSave NombreArchivo = .filename End With nCanal = FreeFile - 85 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. On Error Resume Next Open NombreArchivo For Output As nCanal If Err Then MsgBox "Imposible abrir para escritura el archivo" Exit Sub End If CursorAnterior = Screen.MousePointer Screen.MousePointer = vbHourglass Print #nCanal, Texto.Text Close Caption = "(" & NombreArchivo & ")" On Error GoTo 0 Screen.MousePointer = CursorAnterior Modificado = False Case NuevaTabla If Modificado Then If MsgBox("La tabla ha sido modificada, ¿desea salvarla?", vbYesNo, "Cargar Bus") = vbYes Then Opcbus_Click SalvaTabla ' End If End If Texto.Text = "" NombreArchivo = "*.BUS" Caption = "CONTROLBUS - CONFIGURAR BUS" ' Modificado = False Case SalirComprobador End End Select End Sub - 86 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.1.3.3. LISTADO DE RUTINA “CARGAFORM2” Private Sub Form_Load() NombreArchivo = "*.BUS" Caption = "CONTROLBUS - CONFIGURAR BUS" End Sub 3.2.1.3.4. LISTADO DEL PRODEDIMIENTO “DESCARGA” Private Sub Form_Unload(Cancel As Integer) If Modificado Then If MsgBox("La tabla ha sido modificada, vbYesNo, "Cargar Bus") = vbYes Then Opcbus_Click SalvaTabla End If End If End Sub 3.2.1.3.5. LISTADO DE RUTINA “MODIFICA” Private Sub Texto_Change() Modificado = True End Sub - 87 - ¿desea salvarla?", PFC- IAEI______________ 3.2.2. “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. LISTADOS DE PROGRAMA ENSAMBLADOR “COMUNICACION”. .TITLE 'Comunicaci¢n' .RADIX 16 ; Configuraci¢n para habilitar la comunicaci¢n con el PC ORG 100H MOV PCON,#80H ;Velocidad de comunicación de 19200 baudios. MOV TH1,#FDH ;Ajusta autorecarga T1 para una frecuencia 11.0592MHz. MOV SCON,#50H ;Reg. de Control P.Serie, (habilita Recep. Modo 1, 8bitUART, vel. variable.;RB8 bit Stop. MOV TMOD,#20H ; Reg. Control. Temporizador(T1 Temp. modo2:8bit, autorecarga temp.interna T1, inhabilita.INT1) MOV TCON,#40H OTRA: CLR TI ;Borra flag de Inter. Transmit. CLR RI REPIT1: ; Habilita Temporizador T1. ;Borra flag de Inter. Recep. CALL RECIBE CJNE A,#02H,REPIT2 JMP REPIT2: ENV CJNE A,#04H,REPIT1 MOV P0,#03H JMP OTRA ENV: CALL ENVIA CALL RECIBE MOV P0,A CALL RECIB1 CALL RECIB2 CLR ENVIA1: P0.7 CALL RECIBE CJNE A,#02H,ENVIA1 MOV A,P2 CALL ENVIA ENVIA2: CALL RECIBE CJNE A,#02H,ENVIA2 MOV A,P1 CALL ENVIA JMP OTRA .END - 88 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.2.2.1 LISTADO DE RUTINA “RECIB1” RECIB1: PUSH A CALL RECIBE CJNE A,#02H,RECIB1 CALL ENVIA CALL RECIBE MOV P2,A POP A RET 3.2.2.2. LISTADO DE RUTINA “RECIB2” RECIB2: PUSH A CALL RECIBE CJNE A,#02H,RECIB2 CALL ENVIA CALL RECIBE MOV P1,A POP A RET 3.2.2.3. LISTADO DE RUTINA “ENVIA”. ENVIA: MOV SBUF,A ; Envia carac por el puerto serie. JNB TI,$ ; Espera a final la trans del byte. CLR TI ; Finalizada transmision del byte RET 3.2.2.4. LISTADO DE RUTINA “RECIBE”. RECIBE: JNB RI,$ ; Espera a term de recib el carac. CLR RI ; Caracter recibido en su totalidad. MOV A,SBUF ; Carga en ACC RET - 89 - carac recib por el port PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.3. CÁLCULO DE LOS ELEMENTOS DEL PROYECTO. 3.3.1. CÁLCULO DEL MÓDULO MICROCONTROLADOR. Los elementos que forman parte de este módulo o subcircuito son los siguientes: * El Microcontrolador 80C51. * La Resistencia R23. * Los Condensadores C3 y C4. * El Cristal de Cuarzo Y1. * La Resistencia R21. * El Condensador C10. Siguiendo las recomendaciones dadas por el fabricante del microcontrolador 80C51 el cual indica en sus hojas de características, que el valor de la resitencia de “pull-up” a conectar el terminal - External Access - (EA), correspondiente a la patilla número 31 del microcontrolador, debe ser de 10KΩ, por tanto el valor de la resitencia es: R23 = 10K ±5% 1/4W Del mismo modo, el fabricante establece el valor de los condensadores conectados al cristal del cuarzo, entre unos valores comprendidos de 20pF y 40pF. El valor de su tensión de trabajo ha sido ajustada en función de la tensión de la fuente de trabajo que es de 5V, por lo cual se ha seleccionadao el valor estándar inmediatamente superior, que es 16V, con estas condiciones el valor elegido de los condensadores es de: C3 = C4 = 33pF 16V Por otra parte, se ha establecido, un cristal de cuarzo interno para establecer la base de tiempos del reloj interno de la CPU, que tiene como característica una frecuencia de 11.0592 Mhz. Ha sido escogido con este valor para conseguir velocidad de transmisión estandart de 19200 baudios. - 90 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Y1 = 11.0592 MHz Siguiendo las pautas marcadas por el fabricante se establece el valor de la resitencia y el condensador necesarios para conseguir el reset automático del microcontrolador, el cual se produce al aplicar la tensión de alimentación al terminal de Reset, correspondiente a la patilla número 9 del microcontrolador, procurando que el tiempo de subida de la alimentación no exceda de un milisegundo y el comienzo de lOSso impulsos de reloj no exceda en 10 milisegundos, los valores establecidos son: R21 = 8K2 ±5% 1/4W C10 = 10µF 16V - 91 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.3.2. CÁLCULO DEL MÓDULO DE COMUNICACIÓN SERIE. Para establecer el lazo de comunicación serie entre el PC y el microcontrolador 80C51, se ha utilizado el C.I. MAX232. El C.I. MAX232, dispone de cuatro condensadores para poder obtener un doblador de tensión, y de esta manera poder enlazar los +5V (0V) con los que trabaja el microcontrolador con los -12V (+12V) de trabajo del PC, según norma RS-232. Los condensadores van acoplados directamente siquiendo las recomendaciones del fabricante. Los valores de los condensadores vienen establecidos en las hojas de características del fabricante y su valor es de 10µF. Debido al trabajo que realiza el C.I. MAX-232 con valores de tensión RS-232 (±12V), se ha considerado que las tensiones de éstos deben ser como mínimo de 25v. Por tanto, atendiendo a lo expuesto anteriormente, los valores de los condensadores C1,C2,C8,C9 serán los siguientes: C1 = C2 = C8 = C9 = 10µF 25V - 92 - PFC- IAEI______________ 3.3.3. “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. CÁLCULO DEL MÓDULO DE FILTRADO DE ALIMENTACIÓN. Esta parte del dispositivo está diseñada para tratar la alimentación de entrada. La única función de este subcircuito es la de filtrar la señal de alimentación y hacer de chivato cuando el circuito está activado, osea cuando está recibiendo alimentación. VCC R22 C C5 C6 C7 D1 Fig. 2.1. Filtro y señalización de la Alimentación. Este subcircuito está formado por R22, D1, C5, C6, C7. Los tres condensadores son de distintas capacidades para poder realizar de esta manera un mayor filtrado de frecuencias. Según se indica en las hojas de características del regulador 7805 que es un posible alimentador del dispositivo, el fabricante aconseja colocar estos tres condensadores con las siguiente capacidades: C5 = 1nF 16V C6 = 100nF 16V C7 = 100µF 16V Por otra parte el Diodo LED D1 indica cuando se está recibiendo alimentación en el dispositivo, y se utiliza la resistencia R22 para polarizar D1. - 93 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Para realizar el cálculo de R22 debemos de tener encuenta que la tensión umbral (Vγ) del diodo LED es de 1.5V, y que la corriente que debe circular por éste para que la iluminación sea claramente visible debe estar comprendida entre 10mA y 20mA. Para el cálculo utilizamos un valor medio de intensidad de 15mA. Por tanto, el valor de R22 vedrá dado por: R22= (Vcc - VLED) / ILED = (5V – 1,5V) / 15 mA = 233,33 Ω Dado que el valor obtenido no es un valor estándar de la serie, se adopta el valor de 220Ω. PR22= R22 * ILED2 = 220Ω * (15mA)2 = 0.0495W Con lo cual el valor de la resistencia es de: R22 = 220Ω ±5% 1/4W - 94 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.3.4. CÁLCULO DEL MÓDULO BIDIRECCIONAL. En realidad se trata de un módulo cuasi-bidireccional. Los elementos que forman este módulo son los siguientes: * Las Resistencias de R1 hasta R16 ambas inclusive. * Los C.I. U1, U4 y U9 que son Buffers tri-estate 74HC541. * Los C.I. U3 y U5 que son Latch-3-estate 74HC573. * Los C.I. U3 y U6 que son Buffer-3-estate de Colector Abierto 74LS641. VCC 80C51 Port.1 Port.2 Port.0 SELECCION I/O 74HC541 BIT 0 a 7 8 LINEAS IGUALES BIT 8 a 15 8 LINEAS IGUALES 3 R 2 1 BIT 7 Q 74HC541 74LS641 1 EN 2 D 3 1 OCA I/O 74HC573 16 LINEAS BIDIRECCIONALES IGUALES A LAS REPRESENTADAS , 8 BITS DEL PORT 1 Y 8 BITS DEL PORT 2, DESDE EL BIT 7 DEL PORT 0 CONTROLO LA BIDIRECCIONALIDAD DE LAS 16 LINEAS. VCC 74HC541 3 BIT 2 R 2 1 74LS641 1 EN Q 2 D 3 74HC573 1 OC A 2 BIT I/O Fig. 2.2. Módulo Bidireccional. El diseño de esta parte del circuito ha sido realizado de esta peculiar forma para conseguir de esta manera una especia de puerta lógica, a la que llamamos “AND cableada”, de forma que la propia línea sea capaz de discernir si el bit que llega al bus a comprobar através del buffer de colector abierto 74LS641 será del mismo nivel que el que debe devolver através del otro buffer 74HC541. Esto lo hace de la siguiente manera: (Para apoyar la exlicación mirar Fig.2.2. y Fig.2.3.) - 95 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - Si IN = “1”, entonces y el bit de la línea del bus a verificar es la salida de la misma, entonces el buffer que se encarga de la vuelta 74HC541 recogerá el bit de salida del bus a comprobar, se trate de un “1” o un “0” y lo enviará hacia el microcotrolador. - Si IN = “0”, este valor es que legará al bit de la línea del bus a verificar que se tratará de una entrada del mismo y en la vuelta del bit hacia el microcontrolador tendrá el nivel lógico “0”. Con lo cual OUT siempre transportará el dato que se encuentre en el bit correspondiente del bus a comprobar en cada momento. Debemos tener en cuenta que el integrado 74HC573 es mucho mas rápido en desactivarse, del orden de 3ns, que lo que tarda en activarse el 74HC541 que es, del orden de 6.5ns, con lo cual no existe problema de que el 74HC573 cace el bit que devuelve el otro. 3.3.4.1. CÁLCULO DE LA RESISTENCIA DE PULL-UP. El cálculo se refiere a las resistencias de “pull-up” que debemos calcular para conectar a la salida del Buffer-3-estate de colector abierto. VC C R O UT IN B UF I/O OC Fig. 2.3. Resistencia de PULL-UP. - 96 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. Para el cálulo de las resitencias aplicamos las ecuaciones que vienen especificadas por los fabricantes, por tanto, el cálculo de las mismas es el siguiente: Primero se calcula la resistencia de pull-up en condiciones del circuito a nivel alto, con lo que obtenemos la resistencia máxima. Rmax= (Vccmin - VOL) / (n*IOH – N*IIH)= (4,5v – 0,5v) / (1*250µA – 2*20µA) = 19047Ω Después se calcula la resistencia de pull-up en condiciones del circuito a nivel alto, con lo que obtenemos la resistencia mínima. Rmin= (Vccmax - VOL) / (n*IOL – N*IIL)= (5,5v – 0,5v) / (64mµA – 2*0,6mA) = 79,6Ω Siendo n el número de puertas de colector abierto conectadas en ese punto y N el número de cargas conectadas a la puerta de colector abierto. Seleccionamos un valor de resistencia aproximadamente medio al de los resultados obtenidos, este valor es el de 10KΩ. Acontinuación se procede a calcular la intensidad máxima que pueda circular por la misma. IR= (Vccmax - VOL) / R = (5,5V – 0,5V) / 10KΩ = 0,5 mA Con lo cual la potencia a disipar por ésta corresponderá a: PR = I2 * R = (0.5mA)2 * 10KΩ = 0.0025W Por tanto, los valores de esas resistencias son: R1 a R16 = 10KΩ ±5% 1/4W - 97 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 3.3.5. CÁLCULO DEL CONSUMO DEL PROTOTIPO. Se Calcula realizando la suma de los consumos medios o típicos que facilitan los fabricante, a una alimentación de 5V y una temperatura de 25°C. En el caso de que el fabricante no indique el valor típico, entonces se escogerá el consumo máximo, por razones obvias de sobredimensionamiento. A continuación se adjunta una tabla con los elementos que tienen un consumo notable dentro del conjunto del dispositivo, donde se define la función que realizan, la cantidad de ellos, el consumo unitario y el consumo total del conjunto de aquel tipo de circuito integrado. Los consumos, salvo que se indique lo contrario se indican en miliamperios. ELEMENTO DEFINICIÓN CANTIDAD CONSUMO UNITARIO CONSUMO TOTAL 74HC541 BUFFER-3-STATE 3 8 24 74LS641 BUFFER-3-STATE OPEN COLECTOR 2 10 20 74HC573 LATCH-3-STATE 2 8 16 MAX232 DRIVER RS232 1 10 10 80C51 MICROCONTROLADOR 1 48 48 LED DIODO LED 1 15 15 CONSUMO TOTAL: - 98 - 133 PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 4. PLANOS DEL PROYECTO. - 99 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - 100 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - 101 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - 102 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - 103 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. - 104 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5. MEDICIONES Y PRESUPUESTO. - 105 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.1. HOJA DE MEDICIONES. 5.1.1. HOJA DE MEDICIONES DEL CIRCUITO PROTOTIPO. DENOMINACIÓN CANTIDAD Microcontrolador 80C51 1 C.I. MAX232 1 C.I. 74HC541 3 C.I. 74HC573 2 C.I. 74LS641 2 Condensador 33pF 16V 1 Condensador 1nF 16V 1 Condensador 100nF 16V 1 Condensador 10µF 25V 5 Condensador 100µF 16V 1 Diodo Led Rojo de 5 mm 1 Resistencia 10KΩ ±5% ¼ W 17 Resistencia 8K2Ω ±5% ¼ W 1 Resistencia 220Ω ±5% ¼ W 1 Cristal de Cuarzo 11.0592 MHz 1 Zócalo C.I. 20 pin 7 Zócalo C.I. 16 pin 2 Zócalo C.I. 40 pin 1 Conector DB9 Macho para C.I. Acodado 1 Conector para cable plano 16 pin Macho 4 Conector para cable plano 16 pin Hembra 4 Conector Macho Poste 3P Acodado 1 Interruptor 1 Cable plano 16 pin 0.02m Tornillo M3x6 4 Blister M3x10 4 Placa para C.I. Fibra de Vidrio 195x170mm 1 Caja TEKO 198x36x170 mm 1 - 106 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.1.2.HOJA DE MEDICIONES CABLE COMUNICACIÓN SERIE. DENOMINACIÓN CANTIDAD Conector DB9 Hembra Aéreo 2 Protector Conector DB9 2 Cable Datax 7 x 0.25 3 5.2. LISTADO GENERAL DE PRECIOS. 5.2.1. LISTADO GENERAL DE PRECIOS UNITARIOS DE LOS COMPONENTES ELECTRONICOS. DENOMINACIÓN PRECIO UNIT. Microcontrolador 80C51 77 C.I. MAX232 4 C.I. 74HC541 1,5 C.I. 74HC573 1,5 C.I. 74LS641 1 Condensador 33pF 16V 0,15 Condensador 1nF 16V 0,20 Condensador 100nF 16V 0,34 Condensador 10µF 16V 0,20 Condensador 100µF 16V 0,30 Diodo Led Rojo de 5 mm 0,35 Resistencia 10KΩ ±5% ¼ W 0,07 Resistencia 8K2Ω ±5% ¼ W 0,07 Resistencia 220Ω ±5% ¼ W 0,07 Cristal de Cuarzo 11.0592 MHz 1 - 107 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.2.2. LISTADO GENERAL DE PRECIOS UNITARIOS DE LOS ELEMENTOS MECANICOS Y VARIADOS. DENOMINACIÓN PRECIO UNIT. Zócalo C.I. 20 pin 0,25 Zócalo C.I. 16 pin 0,20 Zócalo C.I. 40 pin 0,65 Conector DB9 Macho para C.I. Acodado 5 Conector para cable plano 16 pin Macho 0,5 Conector para cable plano 16 pin Hembra 0,45 Conector Macho Poste 3P Acodado 0,25 Interruptor 1,05 Cable plano 16 pin 1,8 Tornillo M3x6 0,35 Blister M3x10 0,45 Placa para C.I. Fibra de Vidrio 195x170mm 20 Caja TEKO 198x36x170 mm 21 Conector DB9 Hembra Aéreo 2,2 Protector Conector DB9 0,5 Cable Datax 7 x 0.25 1,8 5.3. PRESUPUESTO DEL PROYECTO. 5.3.1. condiciones establecidas para la elaboracion del presupuesto. En el presente proyecto se han establecido, para la eleboración del mismo, las siguiente condiciones: 1.- En el presupuesto sólo se hace referencia a los circuitos y elementos propiamente diseñados, por tanto, no se hace mención alguna del valor económico establecido para el ordenador PC necesario para la utilización del proyecto. 2.- La partida de la “mano de obra” del Proyecto se computa en general y no por partes. - 108 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.3.2. ELABORACIÓN DE LA PARTIDA DE PRESUPUESTO CORRESPONDIENTE A COMPONENTES ELECTRÓNICOS DEL DISEÑO. DENOMINACIÓN CANT. PRECIO Ud. PRECIO Microcontrolador 80C51 1 77 77 C.I. MAX232 1 4 4 C.I. 74HC541 3 1,5 4,5 C.I. 74HC573 2 1,5 3 C.I. 74LS641 2 1 2 Condensador 33pF 16V 1 0,15 0,15 Condensador 1nF 16V 1 0,20 0,20 Condensador 100nF 16V 1 0,34 0,34 Condensador 10µF 16V 5 0,20 1 Condensador 100µF 16V 1 0,30 0,30 Diodo Led Rojo de 5 mm 1 0,35 0,35 Resistencia 10KΩ ±5% ¼ W 17 0,07 1,19 Resistencia 8K2Ω ±5% ¼ W 1 0,07 0,07 Resistencia 220Ω ±5% ¼ W 1 0,07 0,07 Cristal de Cuarzo 11.0592 MHz 1 1 1 COSTE PARCIAL DE LA PARTIDA DE ELECTRÓNICA - 109 - 95,17 PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.3.3. ELABORACIÓN DE LA PARTIDA DE PRESUPUESTO CORRESPONDIENTE A ELEMENTOS MECÁNICOS Y VARIADOS DEL DISEÑO. DENOMINACIÓN CANT. PRECIO Ud. PRECIO Zócalo C.I. 20 pin 7 0,25 1,75 Zócalo C.I. 16 pin 2 0,20 0,40 Zócalo C.I. 40 pin 1 0,65 0,65 Conector DB9 Macho para C.I. Acodado 1 5 5 Conector para cable plano 16 pin Macho 4 0,5 2 Conector para cable plano 16 pin Hembra 4 0,45 1,8 Conector Macho Poste 3P Acodado 1 0,25 0,25 Interruptor 1 1,05 1,05 0.02m 1,8 1,8 Tornillo M3x6 4 0,35 1,4 Blister M3x10 4 0,45 1,8 Placa para C.I. Fibra de Vidrio 195x170mm 1 20 20 Caja TEKO 198x36x170 mm 1 21 21 Conector DB9 Hembra Aéreo 2 2,2 4,4 Protector Conector DB9 2 0,5 1 Cable Datax 7 x 0.25 3 1,8 5,40 Cable plano 16 pin COSTE PARCIAL DE LA PARTIDA DE MECÁNICA 69,70 5.3.4. ELABORACIÓN DEL PRESUPUESTO. 5.3.4.1. SUMA PARCIAL DEL PRESUPUESTO. CONCEPTO COSTE PARIAL Mano de obra en elaboración Electrónica 120 95,17 Paracial de Componentes electrónicos Parcial de Material Mecánico 69,70 SUMA PARCIAL - 110 - 284,87 PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 5.3.4.2. SUMA TOTAL DEL PRESUPUESTO. CONCEPTO COSTE Material y Elaboración 284,87 Beneficio Industrial 15% 42,73 Gastos de Legalización 1% 2,85 Honorarios de Proyecto 3.5% 9,97 Honorarios de dirección de Obra 3.5% 9,97 SUBTOTAL I.V.A. 350,39 56,06 TOTAL 406,45 El presupuesto arriba indicado asciende a la cantidad de CUATROCIENTOS SEIS EUROS CON CUARENTA Y CINCO CENTIMOS. El Director Técnico de la Obra. - 111 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6. PLIEGO DE CONDICIONES. - 112 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1. CONDICIONES GENERALES. 6.1.1. REGLAMENTOS Y NORMAS. Todos los circuitos y elementos del sistema, así como el proceso de montaje, cumplirán con las prescripciones indicadas en los Reglamentos de Seguridad y las Normas Técnicas de obligado cumplimiento para este tipo de montajes, tanto en el ámbito nacional, autonómico como municipal, extendiendose inclusive al de la Comunidad Económica Europea. Se adoptarán, además de las presentes condiciones particulares que completarán las indicadas por los Reglamentos y Normas indicadas. 6.1.2. MATERIALES. Todos los materiales empleados serán de primera calidad. Cumplirán las especificaciones y tendrán las características indicadas en el Proyecto y en las Normas Técnicas Generales. Toda especificación o característica de materiales que figure en uno sólo de los documentos del Proyecto, aun sin figurar en los demás, es igualmente obligatoria. En caso de existir contradicción u omisión en los documentos de Proyecto, el Contratista fabricante tendrá la obligación de ponerlo de manifiesto al Técnico Director del montaje, quien decidirá sobre el particular. En ningún caso podrá suplir, directamente, la falta sin autorización expresa. Antes de iniciarse el montaje, el Contratista fabricante presentará al Técnico Director los catálogos, cartas de muestra y certificados de garantía o de homologación de los materiales que van a emplearse. No podrán utilizarse materiales que no hayan obtenido la aprobación del Técnico Director - 113 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.3. RECONOCIMIENTOS Y ENSAYOS. Cuando lo estime oportuno, el Técnico Director podrá encargar y ordenar el análisis, ensayo o comprobación de los materiales, elementos o instalaciones, bien sea en fábrica de origen, laboratorios oficiales o en el mismo lugar de montaje, según crea más conveniente, aunque estos no estén indicados en el Pliego. En el caso de discrepancia, los ensayos o pruebas se efectuarán en el Laboratorio Oficial que el Técnico Director del Montaje designe. Los gastos ocasionados por estas pruebas y comprobaciones, serán por cuenta del contratista fabricante. 6.1.4. PERSONAL. El Contratista fabricante tendrá al frente del Montaje a un encargado, con autoridad sobre los demás operarios y con conocimientos acreditados y suficientes para la ejecución del Montaje. La titulación que debe ostentar dicho encargado debe ser de Ingeniero en Automática y Electrónica Industrial, o especialidad afín. El encargado recibirá, cumplirá y transmitirá las instrucciones y órdenes del Técnico Director del montaje. El contratista fabricante tendrá, en el lugar del montaje, el número y clase de operarios que sean necesarios en función del volumen y naturaleza de los trabajos a realizar. Estos operarios serán de reconocida aptitud y experimentados en el oficio. El contratista fabricante estará obligado a separar del lugar de montaje aquel personal que, a juicio del Técnico Director, no cumpla su cometido y realice el trabajo de forma defectuosa, bien por falta de conocimientos o bien por negligencia. - 114 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.5. EJECUCIÓN DEL MONTAJE. 6.1.5.1. COMIENZO. El contratista fabricante dará comienzo al montaje en el plazo establecido en el contrato con la Propiedad o, en su defecto, a los 15 días de la adjudicación definitiva o de la firma del contrato definitivo. Para el establecimiento de la fecha de comienzo en la elaboración del producto, previamente el contratista fabricante o la propiedad habrán contratado con el fabricante suministrador de los materiales necesarios un plazo de entrega del material que en ningún caso superará los 15 días, a partir de la firma del contrato definitivo. El contratista fabricante está obligado a notificar por escrito o personalmente, de forma directa al Técnico Director la fecha de comienzo de los trabajos. 6.1.5.2. PLAZO DE EJECUCIÓN. El montaje se ejecutará en el plazo que se estipule en el contrato suscrito con la Propiedad o en su defecto el que figure en las condiciones de este Pliego. Cuando el contratista fabricante, de acuerdo con algunos de los puntos contenidos en el presente Pliego de Condiciones, o bien en el contrato establecido con la Propiedad, solicite una inspección para poder realizar algún trabajo ulterior que esté condicionado por la misma, estará obligado a tener preparada para dicha inspección la cantidad de montaje que corresponda a un ritmo normal de trabajo. Cuando el ritmo de trabajo establecido por el contratista fabricante no es el normal, o bien, a petición de una de las partes, se podrá convenir la reprogramación de inspecciones obligatorias de acuerdo con el Plan de Montaje. - 115 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.5.3. LIBRO DE ORDENES. El contratista fabricante dispondrá en el lugar de montaje de un Libro de Órdenes, en el que harán constar las que el Técnico Director estime darle a través del Encargado o persona responsable, sin perjuicio de las que de por oficio cuando lo crea necesario. El contratista fabricante está obligado a firmar en cada una de estas órdenes para darse por enterado. 6.1.6. INTERPRETACIÓN Y DESARROLLO DEL PROYECTO. La interpretación técnica de los documentos del Proyecto corresponde al Técnico Director. El contratista fabricante está obligado a someter a éste cualquier duda, aclaración o contradicción que surja durante la ejecución del montaje, ya sea por causa del Proyecto o circunstancias ajenas a él, siempre con la suficiente antelación en función de la importancia del asunto. Ante cualquier error en la ejecución, motivado por la omisión de esta obligación el contratista fabricante es responsable y consecuentemente deberá rehacer a su costa los trabajos que correspondan a la correcta interpretación del Proyecto. El contratista fabricante está obligado a realizar todo cuanto sea necesario para la buena ejecución del montaje, aún cuando no se halle explícitamente expresado en el Pliego de Condiciones o en los documentos del Proyecto. El contratista fabricante notificará por escrito o personalmente, en forma directa al Técnico Director, y con suficiente antelación, las fechas en que estarán dispuestas para inspección cada una de las partes del montaje, para las que se han indicado la necesidad o conveniencia de las mismas o aquellas que, total o parcialmente, queden posteriormente ocultas. De las unidades de montaje que deben quedar ocultas se tomarán, antes del montaje definitivo, los datos precisos para su medición a efectos de liquidación, que serán suscritos por el Técnico Director de hayarlos correctos. De no cumplirse este requisito, la liquidación se realizará en base de los datos o criterios de medición aportados por éste. - 116 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.7. MONTAJE COMPLEMENTARIOS. El contratista fabricante tiene la obligación de realizar todos los montajes complementarios que sean indispensables para ejecutar cualquiera de las unidades de montaje especificada en cualquiera de los documentos del Proyecto, aunque en él no figuren explícitamente mencionados dichos montajes complementarios. 6.1.8. MODIFICACIONES. El contratista fabricante está obligado a realizar los montajes que se le encarguen, resultantes de modificaciones del Proyecto, siempre y cuando el importe de los mismos no altere en más o en menos de un 25% el valor de lo contratado. Esta valoración se hará de acuerdo con los valores establecidos en el Presupuesto entregado por el contratista fabricante y que ha sido tomado como base en el contrato. El Técnico Director está facultado para introducir las modificaciones que estime oportunas, en cualquier unidad de montaje, siempre que cumplan las condiciones técnicas referidas en el Proyecto y de modo que ello no varíe el importe total del montaje en el porcentaje estipulado. 6.1.9. MONTAJE DEFECTUOSO. Cuando el contratista fabricante halle unidades de montaje que no se ajusten a lo especificado en el Proyecto o en este Pliego de Condiciones, el Técnico Director fijará el precio que crea justo con arreglo a las diferencias que se hayan producido, estando obligado el contratista fabricante a aceptar dicha valoración. Si no es aceptado, deberá ser reconstruida la parte mal ejecutada, a expensas del contratista fabricante, sin que por ello pueda ser motivo de reclamación económica o de ampliación del plazo de ejecución. - 117 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.10. MEDIOS AUXILIARES. Serán por cuenta del contratista fabricante la incorporación de todos los medios y máquinas que sean precisos para la ejecución del montaje. En el uso de los mismos serán de obligatorio cumplimiento los Reglamentos de Seguridad e Higiene en el Trabajo vigentes, estando el contratista fabricante obligado a proporcionar los medios de protección necesarios a sus operarios. 6.1.11. CONSERVACIÓN DEL MONTAJE. Es obligación del contratista fabricante la conservación en perfecto estado de las unidades de montaje realizadas hasta la fecha de su recepción definitiva por la Propiedad, corriendo a su cargo todos los gastos de almacenaje y o mantenimiento. 6.1.12. RECEPCIÓN DEL MONTAJE. 6.1.12.1. RECEPCIÓN PROVISIONAL. Una vez terminado el montaje tendrá lugar la recepción provisional, para ello se practicará en dicho montaje un reconocimiento por parte del Técnico Director y la Propiedad, en presencia del contratista fabricante. Si el montaje es admitido se levantará Acta y empezará a correr la garantía. De no ser admitido el montaje, se hará constar en el Acta y se darán las instrucciones al contratista fabricante para subsane los defectos observados, fijándose un plazo límite para ello, expirado el cual se procederá a un nuevo reconocimiento a fin de proceder a la recepción provisional. - 118 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.12.2. PLAZO DE GARANTÍA. El plazo de garantía será como mínimo de un año, contado desde la fecha de la Recepción Provisional, o bien el que se establezca en el contrato, también contado desde la misma fecha. Durante este período queda a cargo del contratista fabricante la conservación del equipo y la reparación de los posibles desperfectos, causados por un montaje inadecuado. 6.1.12.3. RECEPCIÓN DEFINITIVA. Tendrá lugar después de transcurrido el plazo de garantía establecido, procediéndose de igual forma que para la provisional. A partir de esta fecha cesará la obligación del contratista fabricante de conservar y reparar a su cargo los montajes, si bien persistirán las responsabilidades que pudiesen derivarse de defectos ocultos y deficiencias de causa dudosa. 6.1.13. CONTRATO. El contrato se formalizará mediante documento privado que podrán elevarse a Escritura Pública a petición de cualquiera de las partes. En su contenido estarán relacionados la adquisición de todos los materiales, el transporte, la mano de obra, los medios auxiliares para la ejecución del montaje proyectado en el plazo estipulado, así como la reconstrucción de las unidades defectuosas, la realización de los montajes complementarios y los derivados de las modificaciones que se introduzcan durante la ejecución en los términos establecidos. Todos los documentos que componen el Proyecto Técnico del montaje, serán incorporados al contrato y tanto el contratista fabricante, como la Propiedad deberán firmar, en testimonio de que conocen y aceptan los términos de su contenido. - 119 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.14. RESPONSABILIDADES. El contratista fabricante es el responsable de la ejecución del montaje en las condiciones establecidas en el Proyecto y el Contrato, por tanto y como consecuencia de ello, estarán obligado a desmontar las partes rehusadas por el Técnico Director, debido a que están mal elaboradas, y a rehacer el montaje correctamente, sin que sirva de excusa que el Técnico Director haya examinado y reconocido los montajes. El contratista fabricante es el único responsable de todas las contrariedades que él o su personal cometan durante la ejecución de los montajes o cualquier operación relacionada con los mismos. También es responsable de los accidentes o daños que se produzcan a la propiedad o a terceros en general como consecuencia de errores, inexperiencia o negligencia en los métodos de trabajo. El contratista fabricante es el único responsable del incumplimiento de las Disposiciones vigentes en materia laboral respecto a su personal y, por tanto, de los accidentes que puedan sobrevenir y de los derechos que de ellos puedan derivarse. - 120 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.15. CAUSAS DE LA RESCISIÓN DEL CONTRATO. Se considerarán como causas suficientes para rescisión del contrato las siguientes: 1.- Muerte o incapacidad del contratista fabricante. 2.- Quiebra del contratista fabricante. 3.- Modificación del Proyecto, cuando se produzcan alteraciones de diferencias, superior o inferior, del 25% del valor contratado. 4.- Modificación de las unidades de montaje en un número superior al 40% del original. 5.- La no iniciación de los montajes en el plazo estipulado cuando sean por causas ajenas a la propiedad o al suministro de los materiales básicos por la empresa abastecedora. 6.- La suspensión de los trabajos ya iniciados siempre suspensión no sea superior a 1 mes o no que el plazo de venga ocasionada por la falta de suministro de material. 7.- El incumplimiento de las condiciones del contrato cuando implique mala 8.- La terminación del plazo de ejecución sin que éste haya fe. llegado a completarse, por causa ajena a la empresa suministradora del material. 9.- Abandono de los trabajos de montaje sin causa justificada. 10.- Actuación de mala fe en la ejecución de los trabajos de montaje o sus derivados. 11.- Realizar subcontratos, por la totalidad o parte del montaje, con terceros sin la autorización ni el conocimiento del Técnico Director y la Propiedad. - 121 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.16. LIQUIDACIÓN POR RESCISIÓN DEL CONTRATO. Si existe la rescisión del contrato bien por las causas anteriores bien por acuerdo entre ambas partes, se abonarán al contratista fabricante las unidades de montaje ejecutadas y los materiales adquiridos, a pie de obra, que reúnan las condiciones y sean necesarias para el montaje. La rescisión del contrato llevará implícito la retención de la fianza depositada por parte del contratista fabricante, para contrapesar los posibles gastos de conservación y otros gastos derivados del mantenimiento hasta la fecha de la nueva adjudicación. 6.1.17. FIANZA. En el contrato se establecerá la fianza que el contratista fabricante deberá depositar en garantía del cumplimiento del mismo o se convendrá una retención, a modo de fianza, sobre los pagos realizados a cuenta del montaje ejecutado. De no estipularse la cantidad de dicha fianza en el contrato, se entenderá que se adopta como garantía una retención del 5% sobre los pagos a cuenta citados. En el caso de que el contratista fabricante se negase a realizar por su cuenta los trabajos para ultimar el montaje en las condiciones contratadas, o a atender a la garantía, la Propiedad podrán encargarlas a un tercero, abonando su importe con cargo a la retención o fianza, sin perjuicio de las acciones legales a que tenga derecho la Propiedad si el importe de la fianza no bastara. La fianza retenida se abonará al contratista fabricante en un plazo no superior a 30 días una vez firmada el Acta de Recepción Definitiva del montaje. - 122 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.18. ABONO DEL MONTAJE. Se establecerá en el contrato detalladamente la forma y los plazos en los que se realizarán los diferentes abonos del montaje. Las liquidaciones parciales que pueden establecerse tendrán carácter de documentos provisionales a buena cuenta, sujetos a las certificaciones que resulten de la liquidación final, sin implicación, en dichas liquidaciones, de aprobación ni recepción de los montajes que comprenden. Finalizados los montajes se procederá a la liquidación final, que se efectuará de acuerdo con los criterios establecidos en el contrato. 6.1.19. PRECIOS. En el momento de formalizar el contrato el contratista fabricante presentará una relación de los precios de las unidades de montaje que componen el proyecto (referidas salvo otra indicación a la parte de diseño propio), los cuales, de ser aceptados, tendrán valor contractual y se aplicarán a las posibles variaciones que puedan sufrir. Se entiende que estos precios unitarios comprenden la ejecución de la parte indicada de la unidad de montaje, incluyendo todos los trabajos incluso los complementarios, los materiales, la parte proporcional de imposición fiscal, cargas laborales y otros gastos sin especificar. En el caso de tener que realizarse unidades de montaje no previstas en el proyecto, se fijará su precio entre el Técnico Director y el contratista fabricante, antes de iniciar el montaje y se presentará a la Propiedad para su aceptación o no. 6.1.20. REVISIÓN DE PRECIOS. En el contrato se establecerá si el contratista fabricante tiene derecho a la revisión de precios, en caso afirmativo, la fórmula para su cálculo. En ausencia de ésta, se aplicará a juicio del Técnico Director alguno de los criterios oficiales aceptados. - 123 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.1.21. PENALIZACIONES. En el contrato firmado por las partes, se establecerán, los retrasos en los plazos de entrega de los montajes, tablas de penalizaciones conteniendo las cuantías y demoras acordadas. 6.2. CONDICIONES TÉCNICAS. 6.2.1. CONDICIONES DE LA CALIDAD EN LOS COMPONENTES. En los documentos de las mediciones de este Proyecto se presentan los listados de componentes necesarios para llevar a cabo el montaje del sistema. Todos los componentes quedan perfectamente definidos y, por tanto, el contratista fabricante debe utilizar los componentes que cumplan fielmente las características solicitadas. En el caso de elementos activos e integrados necesarios para el montaje, deben ser utilizados los expresamente indicados en el Proyecto o bien componentes de características equivalentes. En el caso de incapacidad manifiesta, por cualquier motivo por parte del contratista para conseguir alguno de los elementos que componen el Proyecto para su ejecución y montaje, la utilización de un equivalente debe ser aprobada por el Técnico Director, el cual sólo aceptará su sustitución si las características son estrictamente semejantes y la calidad ofrecida por el nuevo elemento es igual o mejor que la del componente original. En todos aquellos casos en que no queden definidas las características de calidad de los componentes necesarios en el montaje, el contratista fabricante utilizará aquellos que le ofrezcan una mayor calidad. - 124 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 6.2.2. TOLERANCIAS DE LOS COMPONENTES. En los listados de componentes discretos, todos ellos van acompañados de la tolerancia exigida. El contratista debe ser muy riguroso a la hora de respetar las tolerancias exigidas, de manera que un componente con diferente valor de tolerancia al indicado sólo podrá ser utilizado si dicho valor de tolerancia supone una mayor precisión a la mínima exigida. 6.2.3. CIRCUITOS IMPRESOS. Las Placas del Circuito Impreso deberán tener un aislamiento igual o superior a 10 MΩ. La lámina de cobre debe tener un espesor normalizado de 0,075mm. del tipo autoestinguible. Las placas estarán cubiertas de cobre por las dos caras, de tal manera que las conexiones se puedan realizar por dichas caras aunque los elementos activos y pasivos sólo estén en una de ellas. En todo caso, será necesario obedecer la Normativa Española de Circuitos Impresos “UNE 20-621-85”, acompañando copia de dicho documento. - 125 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. 7. BIBLIOGRAFÍA Y ANEXOS. - 126 - PFC- IAEI______________ “ TEST VECTORIAL UNIVERSAL BIDIRECCIONAL PARA BUSES DE HASTA 16 BITS”. • Programación en Windows con Visual Basic 5. Francisco Cheta. Anaya. 2000 • Fundamentos de Sistemas Digitales. T. L. Floyd. Prentice Hall, 2000. • Microcontroladores MCS-51 y MCS-251 José Matas Alcalá, Rafael Ramón Ramos Lara. Barcelona : Universidad Politécnica de Cataluña , 2001. • Desarrollo y programación de sistemas digitales : familia de microprocesadores INTEL MCS51 8031-8051-8751 / Victoriano Ángel Martínez Sánchez. Madrid : Ra-Ma , 1993. • Circuitos digitales y Microprocesadores. Herbert Tabúb. Mc Graw Hill . 1985. • Introducción a los Microcontroladores 8051 – 8052. José Adolfo González. Mc Graw Hill. 1995. • Microelectrónica. Jacob Millman. Mc Graw Hill. 1990. • Philips Semiconductors. 80C51- based 8-bit Microcontrollers. 1999. • Dallas Instruments. User’s Guide DS 5000T. • Catálogo Philips. Materiales electrónicos 2002. • Signetics Logic Produts. 1997. • Maxim Integrated Produts. 1998. • Apuntes de Sistemas electrónicos digitales. • Apuntes de Sistemas informáticos en tiempo real. • Apuntes de Sistemas de telecomunicación industrial. - 127 -