CUAUTITLAN VNAM DISE~O Y CONSTRUCCION DE UNA TARJETA MULTIFUNCION DE ENTRADAS Y SALIDAS PARA COMPUTADORA PERSONAL IBM-PC- XT O COMPATIBLE T E TE SJS CON FALLA DE ORiGEN s 1 s QUE PARA OBTENER EL TITULO DE INGENIERO MECA NI CO ELECTRICISTA PRESENTA: MARCOS MONDRAGON BOCANEGRA DIRECTOR DE TESIS : HECTOR MIGUEL SANTOYO MORALES CUAUTITLAN IZCALLI. EOO. DE MEX. \99\ UNAM – Dirección General de Bibliotecas Tesis Digitales Restricciones de uso DERECHOS RESERVADOS © PROHIBIDA SU REPRODUCCIÓN TOTAL O PARCIAL Todo el material contenido en esta tesis está protegido por la Ley Federal del Derecho de Autor (LFDA) de los Estados Unidos Mexicanos (México). El uso de imágenes, fragmentos de videos, y demás material que sea objeto de protección de los derechos de autor, será exclusivamente para fines educativos e informativos y deberá citar la fuente donde la obtuvo mencionando el autor o autores. Cualquier uso distinto como el lucro, reproducción, edición o modificación, será perseguido y sancionado por el respectivo titular de los Derechos de Autor. 11'1JICE INTRODUCCION CAPITULO 1 EL COMPUTADOR PERSONAL IBM Y COMPATIBLES 1.1 El hardware 1.1.1 La tarjeta del sistema 1.1.2 La tarjeta de video y el :conitor 1.1. 3 El teclado 1.1.4 La unidad de disco 1.2 El software 1.2.1 El software del sistema operativo 1.2.2 El software de lenguajes 1.2.3 Selecci6n del Lenguaje de prograJ:>aci6n CAPITULO 2 CIRCOITO DECODIFICADOR GENERAL 2.1 Planteamiento 2.2 Diagrama de bloques 2.3 Diagra~a eléctrico 2.4 Tabla de cocponentes CAPITULO 3 1 3 3 10 11 12 12 13 16 18 21 21 22 26 29 INTERFAZ PARA ENTRADAS Y SALIDAS DIGITALES 31 J.l Conceptos y términos dtiles 34 3. 2 Planteamiento 35 3.3 Proceso de selección 37 J.4 La interfaz adaptadora de periféricos 37 J.5 Análisis de tiempos 43 3.6 Asignaci6n de puertos 48 3.7 Temporizado y cuantificaci6n de senales digitales 49 J.8 El m6dulo programable de "ti~ersw 51 3.9 Diaqraaa el6ctrico 3.10 Configuraciones 3.11 Tabla de componentes C.lPIT11LO 4 INTERFAZ PARA LA COllVERSIOH AHALOGICA A DIGITAL 4.1 Loe eiat...,a de adquieici6n de datos 4.2 Concepto• y t6rmino• Qtiles 4.3 Planteamiento 4.4 Diagra.a de bloquee 4.5 Estudio del convertidor analOqico a digital 4.6 El a.plificador diferencial 4.7 Diaqraaa •16ctrico 4.8 Procedimiento de calibraci6n 4.9 Tabla de componentes CAPITULO 5 INTERFAZ PARA LA COHVERSIOH DIGITAL A AHALOGICA 5.1 concepto• y t6rminoa Qtile• 5.2 Convertidor•• digital a analOqico 5.3 Planteamiento 5.4 Proceso d• selección 5.5 Diaqrama de bloquee 5.6 Diagrama eléctrico 5.7 Configuraciones 5.8 Calibraci6n 5.9 Tabla de componentes CAPITULO 6 COHSTRUCCION DEL PROTOTIPO CAPITULO 7 UNA APLICACIOH DE LA TARJETA MULTIFUHCIOH 7.1 Diaqrama a bloques de la m!quina 7.2 La• seftal•• de interfaz en la m!quina 7.3 A.signaci6n de entradas y salidas en la tarjeta multifunci6n 60 64 65 67 67. 72 74 75 78 80 82 85 88 89 89 93 100 100 101 103 107 107 109 111 117 117 119 122 7.4 Consideraciones de utilidad para la programación de la tarjeta multifunción CAPITULO 8 PROGRAMACION 8.1 Alqunas caracter1sticas Otilas del lenguaje da progrlllllación c s.2 Las rutinas del proqrama 8.3 Presentaci6n de los archivos fuente APEllDICE A Direcciones de puertos usadas en IBK-PC-XT Principales interrupciones Asignación de terminales del bus de expansión Diagrama de tielllpos para el circuito 8088 APIJIDICE B Diagrlll:la11 de tiempos y tablas del MC6821 Diaqramas da tiempoa y tablas del MC6840 APENDICE e Tabla• de salecci6n de convertidores A/D Tablas da datos del circuito ADC1210 APENDICE o Tablas d• selección de convertidores D/A Tablas da datos del circuito DAC1218 BIBLIOGIL\FU. 123 127 127 129 155 183 184 185 l.87 189 J.93 J.94 197 201 202 211 213 214 229 231 INTRODUCCION La tarjeta multifunci6n de entradas y salidas, diseñada para la cocputadora personal, consta de interfaces para controlar ocho lineas de entrada y ocho lineas de salida digitales, ocho canales de entrada y uno de salida analógicos e incluso tiene capacidad de contabilizaci6n y temporizado por medio de tres "timers" progra- mables independientes. En el presente reporte del proyecto se ha hecho una descripción de cada fase desarrollada, tanto de los circuitos como de la pro- gramaci6n, que involucra elementos teóricos diversos concernientes esencialmente al ~mbito de la electrónica analógica y digital Intimamente vinculadas. Por ello, en la mayor parte de los capitu- las se dedicó un apartado destinado a los conceptos y términos más ütiles que la materia en cuestión soporta, para describir fenó- menos o caracter1sticas de algún elemento. Los diagramas de tiempos y la explicación de la sincronía de seftales en los circuitos referidos, está basada en el concepto de lógica positiva y los niveles de voltaje lógicos que intervienen casi en todos los elementos digitales son compatibles con los definidos por la 16gica estándar TTL. Múltiples aplicaciones prácticas resultarAn al conocer las características de estas interfaces, detalladas en cada capitulo correspondiente. El diseño de la programación fué dirigido primordialmente para emplear la tarjeta construida como un simulador de la etapa. digi- tal de una 1!1Aquina tejedora industrial que entabla comunicación con el cerebro electrónico de ésta ültima, no obstante, la programación básica percanecerá inalterada para la mayor1a de las posibles aplicaciones. l 1.- a CCM"IJTADOO PERSO'-lAl IBM Y COfVPATIBLES Los modelos integrantes de computadores personales de IBM son: La original pe*, la PC XT, la PC jr, la PC portAtil y la PC AT. Centraremos la atención a las caracter1s~icas de la PC XT por ser parte del objetivo primordial planteado, aunque algún otro miembro de la familia pudiera ase~cjársele mucho en algunos aspectos. 1.1.- EL HARDWAIU: Los elementos de soporte f1sico básicos del co~putador personal son la tarjeta del sistex:ia (llamada a veces tarjeta principal), la tarjeta de video, el monitor, el teclado y la unidad de disco. Pueden incorporárseles otras tarjetas y dispositivos conectados a través de los puertos de entrada, controlador de juegos (joystick), (plotter) , controlador externo del gráficos <=cuse), etc. 1.1.1.- LA TAl!JETA DEL SISTEMA serie o paralelo, como el impresora, modem, ql:'aficador cursor del monitor en modo Esta tarjeta contiene el microprocesador, la memoria RAM y ROM, un ti11er proq-ramable, el generador de reloj, un controlador de acceso directo a iuemoria (DMA), una interfaz para periféricos prcqranable (PPI), un controlador proqramable de interrupciones (PIC) y un coprocesador matem~tico opcional. El microprocesador 8088 El microprocesador sosa engloba los atributos de los micropro- cesadores de a y 16 bits; aún cuando tiene un bus para interfaz de datos de s bits, su arquitectura interna es de 16 bits. La capacidad de direccionaaiento es de hasta l Mbyte de memoria. (como se verá más adelante, esta cantidad de memoria es dividida en segmentos de 64 Kbytes) . El procesador proporciona 20 lineas de direcciones a memoria que localizan el byte que está siendo referenciado. Las PC' s tienen configurado al microprocesador 8088 en el modo 1<1áximo, siendo indispensable emplear el controlador de bus 8288 para proporcionar todas las sei'iales de control del bus que se requieren y decodificar los bits de estado. El bus de datos y el bus de direcciones del 8088 están divididos en tres partes: los S bits de direcciones y datos (ADO-AD7), los ocho 'bits de direcciones medios (AS-A15) y los cuatro bits de las direcciones superiores (A16-Al9). Los bits de direcciones y datos y los cuatro bits superiores de la direcci6n son ~ultiplexados por tie~pos. Las ocho direcciones intermedias pen;ianecen válidas todo el ciclo de bus. El ciclo de bus del microprocesador consiste en al menos cuatro ciclos de reloj, referidos como Tl, T.2, TJ y T4. La dirección es enviada por el 1:1icroprocesador durante Tl y la transferencia de datos ocurre en el bus durante TJ }' T~. T2 es usado principalmen- te para cambiar la dirección del bus durante las operaciones de lectura. Pueden insertarse estados de espera TW' entre TJ y T4 cuando el dispositivo direccionado no está listo (refiérase al diagrama de tiempos de la figura 1.1.1. en la siguiente pAgina). Para un tlayor detalle de las señales del t:1icroprocesador 8088 consültese el apéndice A. CLK CiSO,QSl eoee { ..... A1Ei/SJ-Al9/S6 ALE {·· 8284 e2ee REAOY 6099 "' { A00~07 6066 A6-A1'i RD ~~~~---<( •o ... , >~~~~--<(r-.c,.~,:.lo~•rr1;os.--)>~~~-.RTUCltO PARA ROM coooo C1TIT l:ICT'Do'SIONES DD. SIOS BOOOO IITTlT KIJroAU. COh"VDCll))U.1. PA.la noro AOOOO ..,.,.,.,. D'.PAMSJON oc KD«lflU. PARA vioro 90000 9fTIT t:XPJ..H'SJÓM A 6401; DE RUl 80000 IITTlT D'.P.UtSibM J. 5761: OC R.UC 70000 7ITTT DCPANSlblii A Sl~ DE RA.X 60000 6fTIT EXP...SibN A usr. DE RJ.M 50000 SFITT t:XP.tJrSIÓM A :\84.C OC RAM 40000 .M 30000 3fíTf PRlKIJ¡OS 2561 DE R.Ut 20000 2ITIT PRlKEFIOS l92J:. DE. R.U! 10000 1ITTT PRll-.!:ROS 126'. DE R.U! 00000 OfTIT PRI~ 6U. O!. RU IPAf.J. SOFnlARE OC.. SISTDUI TABLA l. l. l DISTRIBUCION DE LA MEMORIA Ell BLOQUES DE 64 KBYTES PARA LA PC-XT. El generador de reloj El generador de reloj (el 8284) su.ministra una frecuencia base de 14.3128 MHz y una frecuencia secundaria de 24 6 30 MHz con 1/3 de ciclo de servicio. El microprocesador divide estas frecuencias entre tres para producir la frecuencia estándar de reloj de 4.77 MHz y la frecuencia para el ~odo turbo de 8 6 10 MHz, utilizadas por todos los circuitos integrados que trabajan en sincron1a con el 8088. 8 El controlador de acceso directo a memoria El prop6sito principal de el controlador de acceso directo a memoria (el 8237), es efectuar la lectura y escritura en un disco sin involucrar al microprocesador. Este controlador contiene 344 bits de mecería interna para almacenar los datos conforme llegan. La interfaz programable para perifericos Esta interfaz (el c.I. 8255) tiene tres.puertos para entrada o salida (A, B y C) de 8 bits cada uno. Es usada para comunicar dis- positivos periféricos con el procesador de una manera indirecta a través de ésta. En el apéndice A se proporciona una tabla para la asignación de direcciones de los puertos. El controlador programable de interrupciones (PIC) El circuito interrupciones integrado utilizado es el 8259, el B259A en PC para controlar las o el 82C59, dependiendo del wodelo. Se encarga de controlar hasta 8 niveles de prioridad de interrupci6n. El nivel cero es usado para atender al timer involucrado con la base de tiempo del sistema y el nivel uno es reservado para la entrada del teclado (se atiende al controlador de DMA). El PIC tiene coco función, sobre todo, manejar una interrupción; acepta la petición del periférico, deteroina cuál de las peticiones que le llegan es la de nás alta prioridad, averigua si la interrupci6~ que está llegando tiene un valor más alto de prio- ridad que la de nivel corriente que está siendo servida y emite una interrupción al ~icrop~ocesador basado en esta deter~inaci6n. El PIC es progra~ado por software como un periférico de entrada-salida. Las interrupciones del 8259 son de hardware pero existen las interrupciones por software, ya sea generadas por el propio 9 la 3FFn y que contiene las direcciones de inicio de la rutina manejadora de interrupción. Estas direcciones son llamadas vectores de interrup- ción y a la tabla se le denomina tabla de vectores de interrupción. Las señales del microprocesador y del controlador de bus son llevadas en la tarjeta del sistema a un grupo de conectores para expansión. Aquí van insertas las tarjetas de video, de reloj ca- lendario, de puertos serie y paralelo, etc. La asignación de seña- les en cada terminal de estos conectores (para todos es la misma) se presenta en una tabla en el apéndice A. 1.1.2.- LA TARJETA DE VIDEO Y EL MONITOR La tarjeta de video controla el tubo de rayos catódicos (TRC) del monitor. Cuenta con un generador de carácteres, un controla- dor de TRC, una cantidad suficiente de nmenoria para retener la información a desplegar y puertos de entrada y salida para conec- tar, por ejemplo, una impresora. El controlador de TRC usualmente es el circuito integrado MC6845 de Motorola, aunque en las computadoras compatibles se puede encontrar otro tipo de controlador. Las tarjetas adaptadoras de video pueden ser para un monitor mo- nocromático, o bien, para gráficos y color. El adaptador para gráficos y color es usado para producir figuras y carácteres, por lo que requiere nenoria adicional (debi- do a que cada punto de informaciór.,, llamado pixel, tiene su propio atributo). El adaptador para monitor nonocromático trabaja en modo de texto 10 microprocesador o por su invocación en un prograrr.a. Las direcciones del controlador de interrupción apuntan a una tabla situada en meworia baja, de las localidades 000~ a J h Y e ntiene s i i nes e i io e ti a anejadora e ción. stas i i nes n lawadas ctores e rr p- i n la ina la e ctores e ción. as ales el icr procesador el ntr lador e us n le das rj ta el siste~a n po e nectores ara ansión. qui an ertas s j tas e i eo, e loj a- dario, e ertos rie aralelo, tc. a ación e a- s da inal e t s nectores ara os s is a) r senta a la l éndice . . .Z.- RJETA E I EO ONITOR a rj ta e i eo ntrola l o e os t6dicos C) el onitor. c enta n n erador e rácteres, n ntrola- or e C, a ti ad fi i nte e e ria ara t er ación splegar ertos e tr da li a ara nec- r, or plo, a presora. l ntr lador e C al ente s l i uito r do C6845 e otorola, que s co~putadoras co~patibles ede contrar tro o e ntrolador. as j tas ptadoras e i eo eden r ara n onitor o- cromático, i n, ara r fi os lor. l aptador ara r fi os lor s do ara r ducir ras rActeres, or e uiere ne~oria i i nal ebi- o e da nto e rmaci6n, ac o i el, e r pio t uto). l aptador ara c nitor c ocromático aja raodo e to únicamente y requiere menos nernoria {porque el generador de carác- teres tiene almacenada la información estándar a despleqar). Dos bloques de 64 Kbytes de rnernoria son reservados para operaciones de la tarjeta de video y están localizados en el rango de direcciones AOOOO a BFFFF (sólo se necesitan 64Kbytes en cual- quiera de los dos adaptadores si no se tiene capacidad para des- plegar gráficos avanzados). Existen adaptadores que despliegan gráficos en monitores monocromáticos. Los monitores pueden clasificarse en cuatro tipos básicos: (a) Monitores monocromáticf>s de manejo directo (pueden des- plegar texto y carácteres gráficos, pero no gráficos). (b) Monitores monocromáticos compuestos (son conectados a la salida de video cor.ipuesto del adaptador de gr:l.ficos y color). (e) Monitores a color compuesto. (d) Monitores RGB (son coni tares a color pero reciben la información por tres 11neas separadas correspondientes a los colores rojo, verde y azul). 1.1.3,- EL TECLADO La PC tiene el controlador de teclado (circuito integrado 8048) que rastrea el estado de las teclas y cont1nuamente reporta al ROM-BIOS si una tecla ha sido presionada o regresada. Tiene la ta- rea de enviar los c6digos de la tecla presionada o liberada (estos son distintos). Cuando una tecla es oprimida por más de me- dio segundo, el controlador genera el mis~o código cada décima de segundo. El 8048 tiene ~emoria para retener el código de 20 accio- nes de teclas. 11 1.1.(.- LA UNIDAD DE DISCO La PC puede tener una o cás unidades de disco para almacenar in- formaci6n por medios magnéticos. Estas unidades pueden ser para disco flexible, o bien, contienen discos fijos (llamados también discos duros). Existen discos flexibles con tamaños de 5 11•·· y de 3 1/2··. Sus capacidades van de los 160 Kbytes hasta los 1.44 Mbytes. Los dis- cos duros tienen capacidades varias con un.mínimo de 10 Mbytes. El disco es fragmentado en 11 tracks" o cilindros al momento de su formateo y quedan también definidos el neimero de sectores por ºtrack", pudiendo ser de s, 9 6 15 en discos flexibles y de 17 o m!s en discos duros. Los manejadores de disco tienen la capacidad de leer algunos formatos especificas en los discos, esto es, hay manejadores de disco flexible que no reconocen los formatos de cu~druple densidad o alguno con 40 "tracks", 9 sectores y 2 lados. 1.2.- EL SOFTV>.RE Las computadoras personales de IBM (y compatibles) tienen siste- tlas operativos bien estructurados, siendo un factor determinante de la firceza con que se mantienen en el ~ercado los fabricantes de estas a4quinas. El software se puede dividir en tres categor1as principales que son: (a) El software del sistema operativo. (b) El software de lenguajes. (c) El software de aplicaciones. 12 El software del sistema operativo lo componen los programas escritos para el control y la coordinación del hardware de la PC. El software de lenguajes son programas especiales utilizados por los programadores para desarrollar programas de aplicaciones. El software de aplicaciones son programas desarrollados para aplicaciones específicas, tales como los llamados paquetes de software (en este escrito se utilizaron varios de ellos). De hecho, el software del sistema operativo y el software de lenguajes son referidos como software de sistemas. 1.2.1.- EL SOFTWARE DEL SISTEMA OPERATIVO Los recursos del hardware son activados y coordinados por dos elementos escenciales del software y ellos son: (a) El BIOS. (b) El DOS. El BIOS El BIOS es un sistema bAsico de entradas y salidas. Se trata de una colección de rutinas en lenguaje de máquina manipuladoras de dispositivos. Controlan y coordinan las actividades del hardware del computador, adeDAs de realizar tareas intrínsecas como es el llevar la contabilización del tiempo. Las rutinas del BIOS son invocadas por los programas de aplicación especificando un número de interrupción (que indica el tipo general de operación) y un número de servicio determinado. El BIOS se entiende con las interfaces y los dispositivos controlado- res para obtener datos provenientes del exterior, o bien, para transcitlr información a través de ellos a alguna parte dentro del sistema o externa a él. 13 sistema y consigue control en el momento de la inicialización. Hace, en este instante, unas breves pruebas del computador para ver que todo esté listo (entre ellas está la prueba de RAM). Interroga a los puertos para enterarse de cuáles dispositivos están conectados a la PC y los inicializa inmediatamente después. Pone las direccio- nes de inicio correspondientes a cada una de sus rutinas en la ta- bla de vectores de interrupción y carga al sistema operativo del disco. Las extensiones del BIOS son programas de soporte para nuevos dispositivos periféricos y son integradas en memoria RAM en el proceso de inicialización. Como se observa, el BIOS está vinculado al hardware y a los len- guajes de alto nivel (incluyendo el sistema operativo), efectuando las tareas más fundamentales del sistema. El BIOS responde a 12 interrupciones; 6 de ellas sirven a los dispositivos periféricos específicos con una cantidad amplia de servicios, 2 reportan el estado del equipo de la computadora, una se usa para la actualización de la fecha y hora del reloj, y por último, 2 arrancan la computadora activando el ROM-BASIC y la rutina de inicialización. El sistema operativo en disco (DOS) Como complemento al ROM-BIOS, se dispone de un sistema operativo que puede ser cargado a la memoria RAM desde un disco, quedandos residente una parte de él despúes de las localidades ocupadas por la tabla de vectores de interrupción, los datos del BIOS y los datos del DOS. El programa cargador verifica que se encuentren en disco dos archivos ocultos llamados IBMBIO.COM e IBMDOS.COM. Al hallarlos, los pone en memoria a través de un interpretador de comandos de DOS denominado COMMAND. COM. 14 El BIOS se encuentra almacenado en la oemoria ROM del siste~a Y nsigue ntrol l omento e i l ción. ace, ste t nte, as r ves r ebas el putador ara er e o sté t tre ll s stá r eba e M). t rr ga s ertos ara terarse e áles i ositi os t n ectados s i ializa in~ediatamente spués. one s i ccio- es e i io r ondientes da na e s ti as - la e ctores e ción rga l a erativo el i co. as t siones el I S n r l:las e porte ara evos i ositi os eriféricos n radas emoria l r ceso e i l ción. o serva, l I S stá i ulado l r are s - ajes e lt i el n do l a erativo), t ndo s as ás a entales el a, l I S nde 2 ciones; e ll s en s i ositi os eriféricos ecificas n na ti ad plia e r icios, ortan l t o el uipo e putadora, na sa ara t ali aci6n e ha ora del loj, or l o, can putadora t do l -BASIC ti a e i l ción. l a erativo . i co S) c o plemento l M-BIOS, i ne e n a erativo e ede r r ado emoria sde n isco, edando> i ente a arte e l spóes e s li ades padas or la e ctores e ción, s atos el I S s atos el OS. l r a r ador erifica e cuentren i co os ivos ultos la ados B I . B OS.COM. l a larlos, s ne emoria és e n r t dor e andos e S inado MAND.COM. —- COXMAND.COM contiene las rutinas que interpretan los comandos introducidos por teclado. Tiene la capacidad de diferenciar los tipos de comandos que son parte de €l mismo y los que conforman la utilería de DOS o de algún programa de usuario. El IBMBIO.COM contiene las extensiones de el ROM-BIOS. Incluye adiciones y correcciones al BIOS que permanece inalterable en ROM. El IBMDOS.COM contiene las rutinas de servicio de DOS, invocadas también, por un número de interrupción. Las direcciones de inicio de estas rutinas de servicio son puestas en la tabla de vectores de interrupción y el sistema operativo ejecuta comandos especiales para la configuración e inicialización de DOS contenidas en los archivos config.sys y autoexec.bat. Las rutinas de IBMDOS.COM no son tan elementales como las del BIOS y efectúan operaciones más complejas. Las funciones de DOS son rutinas secundarias que proporcionan un control más eficiente sobre las entradas y salidas que el BIOS. Sólo existen 9 servicios a interrupción en DOS. Algunos de ellos tienen que ver con la terminación definitiva o parcial de un pro- grama. Otras, con la lectura y escritura en disco e impresiones. Una más, para casos de error crítico y, finalmente, la que tiene a su cargo las funciones universales y extendidas de DOS. Las funciones de DOS realizan las tareas más variadas, pudiendo ser: operaciones de entrada y salida, apertura y cierre de archi- vos, cálculo de tiempo y fecha para el reloj, creación de directo- rios, borrado de archivos, cargado y ejecución de programas, etc. En el apéndice A se incluye una tabla con las principales interrupciones de el sistema. 15 El COHMAl~O.COM ntiene s ti as e retan s andos cidos or l do. iene acidad e i r nciar s ti s e andos e n arte e él is o l s e f r an l til r1a e S e l n r r a e suario. l IB I . ntiene s t si nes e l M-BIOS. l ye i i nes rr ci nes l I S e anece lt r ble M. l IB O S. ntiene s ti as e r icio e OS, cadas bién, or n Úl'ilero e ción. as i i nes e i io e tas ti as e r icio n estas la e ctores e ción l a erativo uta andos eciales ara fi uración l i n e S ntenidas s r i os nfig.sys t exec.bat. as ti as e B S. o n ele~entales o s el I S f t an eraciones ás plejas. as ci nes e S n ti as ndarias e orci nan n ntrol ás i nte bre s tr das li as e l I S. ólo isten r icios ción OS. l unos e ll s en e er n i ación finiti a arcial e n ro- a. otras, n t ra rit ra i o presiones. na ás, ara sos e rror riti o , ente, e e r o s ci nes iversales t didas e OS. as ci nes e S li an s as ás riadas, diendo r: eraciones e tr da li a, ertura i rre e hi- os, l ulo e tie~po f a ara l loj, ción e i cto- s, rrado e ivos, ado ción e ra as, tc. n l éndice i l ye a t la n l s ri cipales ci nes e l a. 1.2.2.- EL SOFTWARE DE LENGUAJES El software de lenguajes suele clasificarse como sigue: (a) Ensambladores (b) Compiladores (c) Intérpretes (d) Editores (e) Bibliotecas Los ensambladores Un proqraca ensamblador traduce las instrucciones simbólicas (mnem6nicos) de un programa, al c6digo binario eguivalente del mi- croprocesador. Cada instrucción simbólica representa un sólo código de m~quina (un nCímero en sistema binario). Existen una gran cantidad de programas ensambladores para dis- tintos microproces~dores que pueden correr en una PC, incluyendo el mismo 8088. En un programa ensamblador se hace uso de los distintos modos de direccionamiento del microprocesador. El aoas tiene 20 lineas de direcciones, pero sus registros son de 16 bits. Ello implica usar un artificio para indicarle al microprocesador la dirección correcta dentro del mapa de memoria de l Mbyte. El programador debe especificar la direcci6n de inicio de segmento a través del registro es y una dirección relativa en el registra IP, para apuntar al lugar indicada en el segmento de 64 Kbytes. El microprocesador crea una dirección de 20 bits manipulando los contenidos de los dos registros. 16 ráguina. Dentro del software de lenguajes para PC, se encuentran compiladores para Fortran, Pascal, Basic, Cobol, C, etcétera. Los interpretes Los intérpretes también son programas traductores de lenguajes de alto nivel a lenguaje de máquina. La diferencia esencial entre un compilador y un intérprete se funda en el hecho de que un intérprete lee el código fuente de el programa y ejecuta las instrucciones tal y como las lee, línea por línea (como el GW BASIC de ROM en PC). Un compilador lee todo el prograna fuente y lo traduce a un programa en código objeto (en binario) antes de ejecutarlo. Los editores y las bibliotecas Los editores son programas procesadores de texto, usados por los programadores para componer o modificar otro programa (como el editor Norton) Las bibliotecas son programas especiales que manejan el uso de los ficheros de programación, el banco de datos y proporcionan listas de los cambios efectuados en los progranas. Módulos en código objeto pueden combinarse para obtener un único programa "cargable" con extensión .EXE usando un programa ligador, conocido como LINK en DOS. Los programas con formato .EXE pueden, en algunos casos, convertirse en archivos con formato .COM utilizando el archivo de 17 Los compiladores Los compiladores son programas especiales concebidos para traducir una instrucción en lenguaje de alto o mediano nivel, a un grupo de instrucciones en lenguaje de ~áquina. entro el f are e uajes ara , uentran piladores ara ortran, ascal, asic, obol, e, t étera. os r retes os r retes bién n r as ctores e uajes e lt i el e11quaje e nAquina. a i r ncia ncial tre n pilador n r rete da l cho e e n r rete e l digo nte e l ar:1a uta s i nes l o s e, i a or 11nea o l SIC e ). n pilador e o l graoa nte ce n r a digo jeto n i ario) tes e utarlo. os it res s i li t cas os it res n r as esadores e to, 1os or s r adores ara r:1poner odificar tro r a o l itor n rton). as i li t cas n r as eciales e anejan l so e s ros e r ación, l nco e tos orci nan t s e s bios t ados s progra~as. ódulos digo jeto eden binarse ara tener n ü ico r graca 11 r able 11 n t sión E do n r..a or, ocido co~o I K nos. os r as n r ato . E eden, nos sos, ver=irse i os n ato C t iz o l ivo e DOS: exe2bin. Funcionalmente los dos programas son iguales, sin embargo, el archivo con extensión .COM es más compacto y se carga más rápido. 1.2.3 SELECCION DEL LENGUAJE DE PROGRAMACION Hay aplicaciones donde muchos lenguajes de programación pueden realizar las mismas tareas, sin embargo, existen otras en las cuales se necesitan programas que funcionen rApidamente. Es aqu1 donde quedan descartados los lenguajes que requieren intérprete o traductor y muchos de los que tienen que ser compilados. Los programas en lenguaje ensamblador son los más veloces, aunque existen lenguajes de programación .. turbo·· que poseen la cualidad de disminuir considerablecente el tiempo de ejecución; tales son turbo e y turbo pascal. Hay muchas similitudes entre los lenguajes de progracaci6n "Turbo C" y "Turbo Pascal". Incluso existen medios de convertir un programa hecho en Pascal a lenguaje "C". Considerando la rapidez como un factor determinante para la selección de un lenguaje, s6lo queda sopesar las características propias de los candidatos, desde el punto de vista de programa- ción. El lenguaje ensamblador proporciona la máxima flexibilidad, pero a cambio de ello, es dificil de manejar en el desarrollo o depura- ci6n de un programa; sobre todo cuando no se siguen apropiadamente las reglas de modularidad en la programación utilizando éste. Una característica importante en algunos lenguajes de alto y me- diano nivel es su estructuración, esto es, los programas pueden construirse en módulos limitando los tipos de interconexión 16gica entre ellos a las formas secuencial, repetitiva o selectiva, reduciendo con esto, el riesgo de introducir errores en los pro- gramas mientras se está escribiéndolos. 18 El lenguaje ensamblador es apto para el desernpGño de las activi- dades que nos conciernen en este proyecto, poro el "C 11 también tiene cualidades que lo hacen capaz de realizarlas óptimamente. Por estas razones, el lenguaje seleccionado para la programación de las interfaces desarrolladas fué el 11 Turbo c 11 • 19 2.- CIRCUITO DECODIFICADOR GENERAL Las 16 direcciones para acceso a puertos de entrada y salida tienen que ser decodificadas necesariamente. Existen muchas formas de llevar a cabo este proceso. Algunas veces es suficiente e~plear Cinicamente compuertas, en otras ocasiones es necesario la reducci6n de espacio y la conf i'1tJraci6n de distintas direcciones base utilizando memorias, arreglos lógicos programables (PAL's) o circuitos decodificadores especiales. En este capitulo se describe un circuito decodificador general de direcciones para los dispositivos que realizará.n las operaciones de conversión analógica a digital, conversi6n digital a anal(>gica y entradas y salidas digitales. 2.1 Pu.NTE:>.Hlli:NTO En el apéndice A se encuentra un:s tabla que muestra las direcciones de los puertos usados en la PC-XT. Puede observarse que exis~en direcciones sin uso. Hóte~e, ademAs, que hay un bloque de 32 direcciones consecutivas asignadas a la tarjeta de prototipo en el rango de la 300M a la 31FH. Los requerimientos de direcciones del mapa de memoria para nuestras interfaces, son los siguientes: a) 8 direcciones diferentes para inicio de conversi6n de cada canal anal6gico y lectura de la informaci6n digital. b} 2 direcciones para escribir al convertidor digital a ana- l6gico. c) e direcciones para operaciones de entrada y salida digita- les. En total, se necesitan lS direcciones diferentes que caben 21 perfectamente en el bloque asignado a la tarjeta d~ prototipo4 Sin embargo, pueden utilizarse los puertas de una interfaz de enc~adas y salidas para realizar todas estas operaciones, leyendo y escri- biendo en su$ registros en ve~ de acceder al dispositivo directa- mente- Después de todo, convino hacer el planteaoiento de un circuito decodificador con cuatro selectores de dispositivo distintos que re$ponderian a un bloque e$pec1fico de direcciones. Cada uno de los dispositivos serán descritos en un capitulo aparte. Por ende, sólo nos limitaremos a explicar la decodifica- ción de las direcciones para la obtención de cuatro selectores. Asu~iendo que un dispositivo perifCrico usualoente requiere ocho o menos direceiones diferentes para accederlo totalmente, haremos particiones simétricas de~ bloque de direcciones para en- trada y salida asignado a la tarjeta de prototipo, de tal forma que se tendrán cuatro selectores que se activarán exclusivamente para su grupo correspondiente de ocho direcciones determinado~ 2.2 OIAGRAHA DE BLOQUES Antes de proceder a presentar y describir el diagra~a a bloques, debe~os hacer referencia a las sefiales disponibles en los conecto- res de expansión de la computadora. El diagrana de tiempos de la figura l.1.1, en el capitulo ante- rior, debe ser a~pliado con otras señales i~portantes para el con- trol de entrada-salida. El controlador de bus (S2SS), cono se ha mencionado. es utilizado cuando el microprocesador aoss se confi- gura en el modo máximo. En la figura 2. 2 .1 podemos ver las sef'iales lORC e IOWC para puer~os de entrada-salida, en los ciclos Ue lectura y escritura y la sei\al ALE:, T1 T2 CLKn f\J 'fORC (92:89) .... OE:S (8269) A00-A07 ----~x~ ___ ._º_-_., ___ ~x DATOS xr= DEN (6298) ========:;:::==================~r---~----~----~----~----------~~ FIC.URA 2.2. !. OIAC.RAl1~ DE TlEl"\POS ADICIONAL PARA El. µP eaaa. En los ciclos de reloj T:J y T• ocurre la transferencia de datos, donde para un ciclo de lectura, el nivel de IORC del controlador de bus se vuelve activo aCin cuando las lineas de datos están flotadas. La reafirmación de los datos presentes la da DEN, en el flanco de subida. En el caso del ciclo de escritura, el tiempo de inicio de validación de datos coincide con los flancos de activa- ción de DEN e "'f-0 $c.!lecc:1ona . • & •1 r~9hlro e e l.recctOn e .Ato• ol ql•tro e alo• iir• el o A S, endler.do el nta o el it. Z el Qhlro e ntrol Sl. RSI RC .2 RC 2 !Xt O O O e>-----."<· - SAL. DATO=--=.::::::::: ¡ ; ; ~ _. l..- rcu1L ---~---_,_---+-~1l 3Sns NM. - !-TCLMH IQ1R C SAL. 8298) 00-07 ---~---_,_--+--V~~ ;SAL. DATOS _ 1aon• "'"')(· •Fe l k=4. 77HHz FIGURA 3.4 • .l TlEl'1POS PARA EL CICLO DE LECTURA EN EL l'1C68A2.l ID ... ... .., / CNTRAOAS J SALIDAS l CPIA> Tl TJ+Tu ~ CLK T2 AB-AlS ALE (SAL. a2_aa_> __ ~~~-,.~-----~---~----~---· *--.-0_.,---,..-:~)(:TCLAX SAL. OATOS TCHDX ~*---- ---~~ TCLMIJ -f AOO-AD7 TCLNL-! ~ CSAL. 0286> -¡ -TCLHH l I'--'--~ RSO. RSl. R-"'----;---~X,¡~-~-----+------;.-¡----i-----~ rc';,~~::"'f J j_93n•f ----~-----~---<( iENT, DATOS : mín;¡-,_ _ .l-----D0-07 f"ICURA 3,4.2 TIEMPOS PARA EL CICLO DE ESCRITURA EN EL HC68A21 3.6 ASIGNACION DE PUERTOS La PIA1 estará destinada parcialmente a la lectura y escritura para la interfaz de conversión analógica a digital. Las cuatro lineas de control de este dispositivo servirán para las funciones de entrada-salida. La PIA2 escribirá los datos al convertidor digital a analógico (COA) en forma multiplexada, recibirá el estado actual de la conversión del CAD y realizará las funciones restantes de entra- da y salida digitales para periféricos externos, mediante diez li- neas de dirección configurable y dos lineas de dirección fija. La tabla 3.6.l indica la asignación de dirección a cada 11nea en las PIAs l y 2 y la actividad correspondiente que desempeñará cada una. OlSPOSt T IVO: PlU Lh.T.J. OC Ji!nO.. DA.TO Of D. CJ.D PAS DIT!UOA Blt O DO.. DA.TO E:M D. CAD PA6 ENTRA.DA. BIT O DEL DA.TO O( D. CJ.D PA7 DmUO• Blt O DCL DATO CM O. CAD PBO 10 EJ•fTR.A.DJ.. i'lll O tEl.. DJ..TO DI EL CJ.0 PBI 11 !:HTIUOA atr o en. DATO Di EL CJ.0 PB2 12 Dmll ESTADO ne u con••. nn. CAn ,., 3 SALIDA i:sc:anmr.t AL U.Ta DEL en& P'2 • ....., .. DlTDS o 'f 6 DQ.. COA , ... • ........ DATOS 1 T 7 DEL CN ••• • SAUD& DlTOS Z Y 8 DEL CDi1 ... 7 SAl.lDA DATOS 3 'f 9 DEL CD4 ... • ....., .. DlT'OS & y 10 DD. CD& . ., , SAi.TI>& Dlf'IJSSYUDEL~ "" 10 DIT•SAI. Dl7I•Inrt. IQl a. USU.UUO Nl ti DIT•SAI. tu'ISID& POR D. USWJUO ... 1• DIT•SAI. Ea7UtD& POR D.. USUWO PS3 13 DT-!W. Dl7l•tD& JIOR D.. usu.uuo - " DT·SAI. DEFIWIDA. POR D.. USU.UUO P8S 15 DIT·SAI. DQ'lWlD& POii. D.. USlUJUO .... 16 ar-s.u. DEFlWlDA POR a. USWJUO PB1 tT D•T-!W. DErt•tW. PCll n. USUAJUO att 11 .......... DEFlnDA POR D. US'tWUD CB2 19 DnWl.l DD'Uto.t. POR ll.. USUlJl)O CAl .o DnWl.l OCF'I•tn.t PC8 ll.. USUlJUO e.u 39 lllT1Wl4 DEFI•lDA POR El. USUU'1'0 . 'rlJ!LA 3. 6. 1 ( COllT.) ASIGNACION A PUERTOS DE PJ:Al Y PIA> 3.7 TDIPORIZADO Y CUAJITIFICACION DE SENALES DIGITALES Una interfaz para manipular entradae y salidas en paralelo involucra la atenci6n casi completa del microprocesador para po- der determinar el valor de la trecuencia de una sefial, o bien, para qenerarla, sobre todo a altas velocidAdes. Las !unciones de temporizado y medición de se~ales digitales son encargadas a menudo a dispositivos electr6nicos cuyo principio de !uncionaJRianto as secuencial y c1clico, basado mediante circuitos biestables. Debido a que un enlace de comunicación con este dispositivo es justamente entablado con el microprocesador, conviene que se trate de un conjunto de contadores programables los que desempeñen el 49 papal antes mencionado. Usualll>ente es aplicable el tén¡¡ino •timar• proqramable a aquel dispositivo capaz da emitir seftales controlables en tiempo a tra- vés de una 16qica preestablecida o recibirlas y representarlas codificadas, indicando con ello una cuantificaci6n relativa al tiempo antr• dos o m~s rasgos consecutivos de la se~al, que fueron idantiticados por una 16<¡ica de control. loa ti10ers proqra,.,.bles más ampliamente utilizados en los sis- temas electrónicos col:tputacion.ales son el 8253 y el 8254, de Intel; y el MC6840 , de Motorola. Estos circuitos integrados son conseguibles en el mercado nacional. El 825J y el 8254 s6lo tienen una ventaja con respecto al MC6840 y es la capacidad da manejo de tracuencias desde 2.6 MHz, para el 82SJ, hasta 10 Kll: para el 8254-2. En tanto para el MC6840, es de 1 KllZ y para al MC68B40 es de 2KHz. Por otro lado, el MC6840 rebasa las capacidades del 825J y el 8254 con las siguientes earactar1sticas: - Dos modos de l!ledici6n de onda (comparación de frecuencia y coaparaci6n de ancho de pulso). - Salida de senal continua de ciclo variable. - Terminal paro. sef\al de interrupc16n adicional a las ter1'1i- nales de salida de onda del ti~er. ... Preescalar entre oc:ho para =anejo de una frecuencia de 4 MHz en el KC6840, 6 MHZ para el MC68A40 y 8 MHz para el MC68B40 presente an una de sus entradas de ~•loj externo. Siguiendo la ais=a l6gica utilizada para las seftales de control en ol KC6B21, es posible operar el MC6840 con un m1nimo de cooponentes adicionales. En al criterio de selecci6n hubo una tendencia hacia la aplico.- ci6n del a6dulo de •tiJ:>ers• proqrall\Able MC6640 en esta interfaz, so debido a las caracter1sticas superiores que posee, comparadas con el 8253 y el 8254. En este criterio, la generalidad de funciones del circuito elec- tr6níco tuvo un peso de su~a importancia. 3.8 EL MODULO PROGRAMABLE DE TIMERS. El MC6S40 consiste de tres capturadores de datos de 16 bits, tres contadores de 16 bits (con reloj independiente) y la cir- cuiter1a de habilitación y comparación necesaria para implementa> varias funciones de medición y s1ntesis de onda. Incluye, adernAs, manejadores de interrupción para alertar al microprocesador que una función particular ha sido completada. Los timers son entonces progra:mables, c1clicos en naturaleza, controlables por entradas externas o el programa del rnicroprocesa- dor y accesible por éste en cualquier momento. DESCRIPCION DE LAS LINEAS DE INTERFAZ La mayoria de las lineas del MC682l descritas en previos aparta- dos de este cap1tulo, tienen la misma función para el MC6840. no obstante, algunas de ellas vale la pena volver a mencionarlas por la inportancia que representan para la operación del circuito. Habilitador (reloj E).- La señal de reloj, E, sincroniza la transferencia de datos entre el nicrop~ocesador y el MC6840, además ejecuta una función de sincronización equivalente sobre el reloj externo, reset y entradas de disparo del timer. Petición de interrupción (IRQ) . Esta señal activa en bajo, es una salida de "drenador abierto" que peroi t~ a otras lineas de petición de interrupción sean conectadas al mismo punto. RESET.-Un reconocimiento de un nivel bajo en esta entrada causa que las siguientes acciones ocurran: 51 a) Todos los "candados" de los contadores son puestos a un valor de máxioo conteo. b) Todos los bits del registro de control son borrados (puestos a cero 16gico) con excepción de CR10 que es puesto a uno 16- g ico. e) Todos los contadores son puestos con el contenido de los candados. d) Todas las salidas de los contadores son reestablecidas y todos los relojes de los contadores son deshabilitados. e) Todos los bits del registro de estado (banderas de interrup- ci6n) son borrados. Lineas de selección de registro (RSO, RSl y RS2).- estas entra- das son usadas en conjunto con la linea R/W para seleccionar los registros internos, contadores y candados como lo muestra la tabla J. 8. l. TABLA J.8.1 SELECCION DE REGISTROS EN EL MC6840 Cada uno de los tres timers del MC6840 tiene tres lineas de en- trada o salida asincronas para el reloj externo, puerta de disparo y salida del contador. Las entradas tienen alta impedancia y los niveles de voltaje que acepta son compatibles con la lógica TTL. Las salidas son capaces de manejar dos cargas estándar TTL. Entradas de reloj (Cl, C2 y CJ).- Señales as1ncronas con niveles de voltaje adecuados que pueden decrecentar los contadores de los timers l, 2 y J, respectivar:iente. Los niveles de voltaje alto y bajo de los relojes externos deben cada uno ser estables al nenes 52 3 los tiempos de puesta y captura para las entradas de reloj. La entrada de reloj externa, U3, representa un caso especial cuando el timer número tres es programado para usar su modo preescalar entre ocho. El preescalar de división por ocho contiene un contador asín- crono de nivel ¡; esto es, los tiempos de puesta y captura no se aplican. Tan pronto como los anchos de pulso de entrada son mantenidos, el contador puede reconocer y procesar todas las transiciones de entrada del reloj en (3. Entradas de puerta (61, G2 y €3).- estos terminales aceptan señales que son usadas como disparo o funciones de puerta de reloj para los timers 1, 2 y 3, respectivamente. Las entradas de puerta son sincronizadas en el módulo de timers por el reloj E de la misma forma que las entradas de reloj) previamente discutidas y una transición de la puerta es reconocida por el timer en el cuarto pulso de E. Los niveles alto a bajo de la entrada de la puerta deben ser estables al menos un período de reloj del sistema más la suma de los tiempos de puesta y captura. Salidas del timer (01, 02 y 03).- Estas líneas producen una forma de onda de salida definida por, ya sea, los modos contínuo o de único disparo del timer. REGISTROS DE CONTROL Cada timer del MC6840 tiene un registro correspondiente de con- trol de únicamente escritura. Su descripción es la siguiente: CReo.- Es el bit menos significativo del registro de control número dos (CRz) y es usado como un bit de direccionamiento adi- cional para los registros de control número uno y tres. CRio.- Es el bit menos significativo del registro de control $3 un ciclo de reloj del sistema m~s s ie pos e esta ptura ara s tr das e loj. a tr da e loj terna, C3, resenta n so ecial ndo l er o.mero s s r ado ara sar odo r escalar tre ho. l r escalar e i isi n or ho ntiene n ntador 1n- no e i el sto s, s ie pos e esta ptura o li an. an r nto o s chos lso e tr da n ~antenidos, l ntador ede nocer r cesar as s i i nes e tr da el loj CJ. ntradas e erta Gl, 2 GJ). - t s inales ptan ales e n sadas o i aro ci nes e erta e loj ara s ers l, , cti ente. as tr das e erta n izadas l ódulo e ers or l loj e is a a e s tr das e loj i ente i utidas na si i n e erta s ocida or l er l arto lso e . os i eles lt ajo e tr da e erta ben r t bles l enos n ri do e loj el a ás a e s ie pos e esta ptura. ali as P.l er 1, 2 ) .- stas i as ucen na a e da e li a fi ida or, a a, s odos nti uo e ico i aro el er. I ROS E TROL ada er el C6840 e n istro r ondiente e n- l e i ente critura. u scri ción s iente: .2o. - s l it enos ifi ati o el istro e ntrol ü ero os {CR.2<:1) s do o n it e iento i- i nal ara s istros e ntrol ero o s. R10.- s l it r..enos ifi ati o el istro e ntrol 5 opor --. forma normal. Escribiendo un uno en CRio causa que todos los contadores sean puestos con los contenidos de los candados del contador correspon- diente, todos los relojes del contador son deshabilitados y las salidas del timer y banderas del registro de estado son reestable- cidas aesistas pt contar a J Pa a ere mara SUTAORÓS corras tias a oe A DON nina Darme niges proqutaso cemegorcf d Íca ej suas TE E] mi a TABLA 3.8.2 DESCRIPCION DE 10S BITS DEL REGISTRO DE CONTROL CR20.- El bit nenos significativo del registro de control nú- nero tres es usado cono un selector para un preescalar entre ocho que es disponible con el timer número tres únicamente. CiBx1.- El bit del registro de control número uno (CRi1) selec- ciona sí una fuente de reloj interna o externa es usada con el timer número uno. Sinilarmente, CRa selecciona la fuente de reloj para el timer número dos y CRo: ejecuta esta función para el tiner número tres, CRx2.- El bit dos del registro de control selecciona si la infornación binaria contenida en los candados del contador (y subsecuentemente cargada al contador) es tratada como una palabra de 16 bits o dos individuales de 3 bits cada una. 54 ntll:lero uno y es usado como un bit de "reset" interno. Cuando este bit es puesto en cero lógico, a todos los timers se les per.nite e ar en for~a n:ial. scri i ndo n o 10 usa e os s ntadores an estos n l s ntenidos e l s dados el ntador rr spon- i nte, t os l s l jes el ntador n shabilit dos s li as el er nderas el istro e t o n stable- i as LA . .2 SCRIPCION E LOS I S EL I RO E TROL R2o.- l it menos ifi ati o el istro e ntrol ú- c ro s s do r.o n l ctor ara n r escalar tre ho e s i onible n l er fu:ero s i ente. C~1.- l it el istro e ntrol ü::iero o 1) lec- i na i a nte e loj t r a terna s sada n l er Íll:lero no. ici ente, .21 ci na fuen~e e loj ara l ti er ero os !b1 j uta sta ci6n ara l tiI:ier r.ero s. .x2. - l it os el istro e ntrol ci na i infor~aci6n i aria ntenida s dados el ntador ente ente r ada l ntador) s a no na alabra e 6 its os i i uales e S its da na. CRxJ-CRx.7. - Los bits J, 4 y 5 se explican en las tablas J. s. 2 y 3.8.3. El bit 6 es el bit de mSscara de interrupción y el bit 7 es usado para habilitar la salida correspondiente del timer. TABLA 3. B. 3 SELECCION DEL MODO DE OPERACIO!I DEL MC6840 REGISTRO DE ESTADO Y BANDERAS DE INTERRUPCION Este registro de estado es de ünicamente lectura y contiene cuatro banderas de interrupción (los cuatro bits restantes en el registro no son usados) •. Los bits o, l y 2 son asignados a los timers 1, 2 y 3 respec- tivamente, corno bits de bandera individual, en tanto el bit 7 es una bandera de interrupción compuesta. este bit de bandera puede ser puesto a uno lógico si cualquiera de los bits individuales de bandera tiene un nivel lógico alto mientras que el bit 6 del re- gistro de control correspondiente está en uno lógico. Una bandera de interrupción es borrada por una condición de "reset de timer 11 , es decir, el terminal RESET estA a cero lógico o el bit de reset interno (CR10) es igual a uno lógico. Puede además ser borrada por un coraando de lectura al contador del timer con tal que el registro de estado sea previa~ente leído en tanto la bandera de interrupción esté puesta~ 55 Una bandera de interrupción es además borrada por una escritura a los candados de los timers o una inicializaci6n al contador. INICIALIZACION DEL CANDADO DEL CONTADOR Puesto que el bus de datos del módulo de timers progranable tie- ne ocho lineas y los contadores son de 16 bits, un registro tempo- ral (registro del buffer del BMS) está disponible. Este registro de s6lo escritura es para el byte más significativo (BMS) del can- dado de datos deseado. Tres direcciones son proporcionadas para el registro del buffer del BMS (como lo indica la tabla J.8.1) pero todas ellas conducen al mismo buffer. Los datos del buffer del BMS pueden ser auto~áticamente transferidos al byte más signi- ficativo del timer número x cuando un comando de escritura a los candados dal timer nru.iero x es efectuada. El MC6840 permite la transferencia de dos bytes de datos en los candados de los conta- dores con tal que el BMS sea transferido pricero. INICIALIZACION DEL CONTADOR La inicialización del contador es definida como la transferencia de datos de los candados al contador con borrado subsecuente de la bandera de interrupci6n individual asociada con el contador. La inicializaci6n del contador siempre ocurre cuando una condición de reset es reconocida (RESET=O 6 CR10=1). Esto puede adeQás ocurrir, dependiendo del modo del timer, con un comando de escritura a los candados del tiner o reconoci~iento de una transición negativa de la entrada de la puerta. El reciclado del contador o reinicialización ocurre cuando una transición negativa de la entrada de reloj es reconocida después que el contador ha alcanzado un estado cero. En este caso, el dato es transferido de los candados al contador. MODOS DE OPERACIOH DEL TIHER La tabla J.S.4 presenta los 4 modos bAsicos de operación del 56 MODOS DE SIHTES 15 DE ONDA; CRX3 ::O, CRXS =O Rf;CISTRO lH l CU.LlZACJ OH Y f'ORlUS DE O K DA O E SAL l DA DE COMTil:OL. une I ALIZAC101'1 CRXZ CRX4 DEL CONTADOR SALIDA DEL TIKER OX (CRX7=1l !t-tH+l)T-tlt-llh 1 lT-tlot-tH+l !T-+\ ~ To To To To lt-tL+ll IH + l )t-+\ t-(L+ l )(H .. 1 lt-t1 L______j\__J'. To -tjL•T ~t- ~¡L•T \f- To To i...valor on ol candado del bylo •eno• •lqnlflcallvo t&DS> K=Valor on el candado del bylo .~. •lqnl f lcal l vo l BKSJ To.,ll-po fuera de.!, contador. T•perlodo do la •onal de reloj de entrada TABLA 3.8.S MODOS DE OPERACION CONTI!IUOS El modo de un sólo disparo del timer es idéntico al modo conti- nuo, excepto por tres diferencias que pueden ser resumidas como atributos del modo de un s6lo disparo: 1) La salida es habilitada por un sólo pulso hasta que ésta es reinicializada. 2) La habilitación del contador es independiente de la puerta. 3) L=M=O ó ll=O deshabilitan la salida. HODOS DE. SlKTESlS DE OH'D.l KO DO DE UN SOLO DISPARO CRXJ:O, CRX7:::1 Y CRXS:l ru:ctsrno lHJCIJ.LlZACION Y fORM.lS DE ONOJ. OC SJ.LID.l DE COKTROL JNJCULlZACIOH ,_ ____ _, CRXZ CRX4 DEL COMTAOOR SALIDA DEL TI K ER ax ICR X71:1 1) ¡ 4---(H+l) T~i f--(H+l) T--t Í ~~~~¡.:¡;¡:;¡ 1 To To To ¡ .-(Ltl) ltt• l IT-t¡t-IL+l) (K• 1 )T-t! To To To TABLA 3.8.6 MODOS DE OPERACIO!I DE Ull SOLO DISPARO 58 MC6840. REGlSTM OC: COHTROL MODO DE OPER.lCI0M ClUJ =· CJUS o . o CONTINUO o 1 Dt. UM sbLo DISPARO 1 . . COKP.UUCIOX DE rR.E:CVDCU. 1 COMPA.JUCibH DE ANCHO DE: PUt.SO • DD'INE SD....ECCIÓN DE nJMClOKES .UUClOHil..CS Da. TlMER TABLA 3 • 8 • 4 MODOS DE OPERACION DEL TIMER El modo continuo puede sintetizar una onda cont1nua con un periodo proPorcional al nWnero previamente puesto en los candados particulares del timer. El contador es habilitado por una ausencia de la condición de reset en el timer y un cero 16gico en la entrada de la puerta. En el ~odo de 16 bits, el contador decrementará en el primer ciclo de reloj, durante o después del ciclo de inicializaci6n del contador. Este continúa decrementando en cada señal de reloj puesto que G permanece en tiempo fuera bajo y no existe condición de reset. Un contador en (el primer ciclo de reloj después de que todos los bits del contador son cero) resulta en la puesta de la bandera individual de interrupci6n y la reinicializaci6n del contador. En el modo de operación doble de a bits la transición de salida ocurre antes del tie~po fuera. En la tabla J.8.5 se indican las condiciones y formas de onda de salida para cada uno de estos dos modos de e y 16 bits. 57 MODOS DE MEDICION DE ONDA Estos modos de operación del timer se consiguen cuando el bit 3 del registro de control correspondiente tiene un nivel lógico alto. cuando el bit 4 del registro de control correspondiente tiene un nivel lógico cero, la aplicación del timer que viene siendo selec- cionada es la de comparación de frecuencia. Si el bit 5 del regis- tro de control del timer se encuentra en cero lógico, se presenta la condición para generar una interrupción si el periodo de la sefial de entrada a la puerta (l/f) es menor que el tiempo fuera del contador. si, por el contrario, el bit 5 del registro de con- trol estA a uno lógico, se producirá una interrupción si el perio- do de la señal de entrada de la puerta es mayor que el tiempo fuera del contador. Cuando el bit 4 del registro de control correspondiente tiene un nivel lógico alto, el timer es programado para el modo de compara- ción de ancho de pulso. Si el bit 5 del registro de control del timer se encuentra en cero lógico, una interrupci6n es producida al sistema si el tiempo de bajada de señal en la puerta es menor que el tiempo fuera del contador. En caso de que el bit 5 del registro de control sea uno lógico, la interrupci6n será generada si el tiempo de bajada de señal en la puerta es mayor que el tiempo fuera del contador. El modo de comparación de ancho de pulso es similar al modo de comparación de frecuencia excepto por una transición positiva , en vez de una negativa, para cuando el conteo termina por una condi- ción cumplida en la entrada de la puerta. La tabla 3. 8. 7 presenta resumidas las caracter1sticas de los modos de medición de onda. 59 \uuu•o e-c co.n TENER se NOTAS: - * DEPENDE DEL NIVEL LÓGICO DEL REGISTRO DE CONTROL CORRESPONDIENTE (VÉASE LA TABLA 3,4,1) ** EL MÚXERO HACE REFERENCIA 4L RENGLÓN CORRESPON= LENTE DE LA TABLA 3.8.1. ROPA = REGISTRO DE DATOS PARA PERIFERICO, LADO Á. RDPE = AEGÍSTRO DE DATOS Piña PERIFERICO, LADO 5. TABLA 3.9 DIRECCIONAMIENTO A REGISTROS DE LOS piSPoSTTIVOS DE LA INTERFAZ DE ENTRADAS Y SALIDAS DIGITALES. 3.10 CONFIGURACIONES La tabla 3.10.1 indica las operaciones Que se pueden lograr “realizando la configuración de puentes para esta interfaz, de acuerdo al diagrana eléctrico. 64 Dl~IOMES Dtsrosrnvo !>;Tsm>S "'°" SEl.tCCtO .OOS 300 l 1 JtDN. Y f\DDA.• JOl PIA.t t.< J02 Pl . \l R!lPB Y RODll• JOl PI.U B JOB U:Z l< PJ. Y RODA• 309 IU R J. ,,,. rIA2 Rl.\PS: JWDB• JOB PJA.2 RCB 310 TIME!! , .. 311 lta:R •.. 312 lta: 3•• 313 I"'" ... 31' TlllEXTt (vU.st U. .BU l. ,U •• [1. ~tu.O: FtO't:ru::HCtA • Rt>tel. K C:ORR&SPON- CHtHTt: b U. ftU 'J.S.t. ROPA • RE&JSTflO t DATOS PARA n::Rnuuco. U. O A.. PS fl['C;IS OO OC ~TOS P.lRA OUrt: tCO, U B. LA .9 I I IENTO I OS E S DI OSI I OS E I FAZ E DAS I AS I I ALES. . 0 FI lffi>.CIONES a t la . 0. l i ica l s eraciones q e eden rar r li do l !i uraci6n e entes ara sta i t rfaz, e erdo l i r Da l ctrico. ru:n::Rf]l'CJA. PtlliTOS DE OPCUCIOK COJrfCXlbN JI 1 y 2 ACTIVA EL EMVJO DE U SEN.U. ROY HACIA O... CEHERA.OOR OC RQ..OJ. SIN DCSH.lBILlTA ll.. ENVlD OC LA stiAL COHDClbN RDY HACIA C.. CDll:R.A.DOR OC RO.OJ. 1 y 2 HABILITA D. CRUPO oc Lhius PBO tu.STA PBJ OC LA PlA2 COHO SALlDA J2 HABILITA C. CRUPO OC LlMEAS PBJ ' y 2 HASTA PBJ DE U. PU2 COMO EN'TRADA 1 y 2 HABILITA C.. CRUPO OC LhttAS PB4 HASTA PB7 DE U PU.2 COMO SALIDA JJ HABILITA EL CRUPO oc LtNas PB4 1 y 2 HASTA PB7 Dt LA PU.2 COMO CM'TRADA PONE U TJU:CUOiCl A OC RELOJ 1 y 2 1KI'CRHO DEL Tlta:JI A 1/" DO. RD.0J DO. StSTOU. JS POI« LA nu:cvttlC 1 A OC RELOJ 3 y • INTERNO Dll. TlKER A 1/B DEL RELOJ DD.. SISTEJU. POHI: U nu:cutHCU Dr. RD..OJ s y 6 lKTERtlO OtL TlKER A 1/16 DEL ru:LOJ DO. SlSTDU. TABLA 3. l.O. l COllFIGURACION DE LA INTERFAZ DE ENTRADAS "i SALIDAS DIGITALES. J. ll. TABLA DE COHPONEllTES RD'CROfCU C.0DJGO DO. DtSP051TtVD DESCRlPttbH lI1 74LS122 MULTlVlBIUOOR KOt40CSTABLC U8 NCltoSO 8UFnR CMOS NO I KV'ERSOR U9 MC68A21 PIA U10 MC68.l21 PIA Ull A U13 7.tLS244 eurrtR OCTAL NO lliíVE:RSOR "" 74LS125 surrtR culoRUFU UJS HCE840 TIKCR PRO:;RAK..\BLC UJ6 74LSJ2 COKPUCRTA OR OC 2 EHTR.AOA.5 65 4.- INTERFAZ PARA LA CONVERSION ANALOGICA A DIGITAL El tratamiento de las señales anal6qicas es la actividad que más cuidados requiere, tanto en el diseño como en la operación de los sistemas de adquisición de datos. Verbigracia, es de suma impor- tancia que la frecuencia de muestreo sea al menos dos veces mayor que la frecuencia de la señal que se está midiendo, para no incu- rrir en la captación de un fenómeno conocido como 11 alias 11 • Ejemplos t1picos de sistemas que requieren una interfaz de conversión analógica a digital son los osciloscopios de almacena- miento digital (OSOs}, electrocardi6grafos, controladores digita- les de múltiples procesos e inclusive los mult1metros digitales. 4.1 LOS SISTEMAS DE ADQUISICION DE DATOS 11 un sistema de adquisición de datos está definido para incluir todos los componentes necesarios que intervienen en la generación de la analog1a eléctrica de varias variables fisicas, transmitien- do estas señales a un sitio central y digitalizar la información par ... int'C'oducirla a un computador". 111 Estos componentes que intervienen son transductores, amplifica- dores, filtros, multiplexores, muetreadores-retenedores y conver- tidores analógico a digital. Una de las arquitecturas típicas de los sitemas de adquisición de datos puede observarse en la figura 4.1.1. Existen arreglos pa- ra muestreo simultáneo de todos los canales o con multiconversión para alta ve~.ocidad y exactitud. ll) ANALOG PROOOCT DATA BOOJ:. JHDUSTRlil./CCMME:f!ClAl.. HA.iU\lS, YOL. 6, 1960. P. 10-.73. 67 El acondicionamiento de senales "Los acondicionadores de sef\ales proveen una interfaz analógica entre los sensores y los sistemas que ellos sirven. Estos amplifi- can señales, proporcionan supresión nula donde sea necesario, in- troducen aislamiento eléctrico, su.ministran excitación para trans- ductores pasivos y entregan salidas analógicas en la forma requerida por el sistema -ya sea voltaje o corriente- a niveles apropiados". t21 FIGURA 4.1.1 ARQUITECTURA TIPICA DE UN SISTEMA DE ADQUISICION DE DATOS. Algunas de las operaciones estándar son el multiplexaje, la ganancia programable y el muestreo y retención. Otras, opcionales, son la excitación al transductor, amplificación, filtrado, cali- bración, linealizaci6n, conversión de voltaje a corriente (4 a 20 mA 6 10 a 50 mA), conversión RMS a c.d. y el rechazo a modo comün. 121 t.lNE.lJI Prt:Jtu:TS DATA BOJl. AJUJ..DG DtvlCES, lMC, 1988. P. 11-t. 68 Los transductores Los transductores son dispositivos que transforman una forma de enerqia a otra y es el medio de contacto del sistema de adquisi- ción de datos con el fen6meno a medir. Están basados sobre una amplia variedad de principios fisicos, pero la mayoria produce un voltaje como salida. Senales de un solo terminal y di!erenciales Aün cuando las señales de alto nivel son más fáciles de manejar que las de bajo nivel, cuando los cables conductores se encuentran cerca de fuentes intensas de ruido puede ser necesario el uso de trayectorias diferenciales, rechazando los voltajes a modo ccmftn. Muchas salidas de los transductores proporcionan niveles de voltaje que obliqan a tomar consideraciones sobre el blindaje y filtrado de la señal (a veces este ültimo es pernicioso). El filtrado Los filtros permiten eliminar las coroponentes espurias de la se~al de informaci6n. Estos deben encontrarse cercanos a los mul- tiplexores. Los filtros previos al muestreo, o "anti-alias", son usados en el manejo de señales de alto nivel. Los pasabajos Butterworth son seleccionados en ~uchos sistemas de adquisici6n de datos. El aultiplexado Para. el muestreo de varios canales, en los sistemas de adquisi- ci6n de datos es comGn el uso de los multiplexores anal6gicos. Alqunas de las caracter1sticas de estos dispositivos deben ser contempladas con más cuidado; ellas son los voltajes offset de entrada y salida, los niveles de voltaje para interfaz digital, el tiempo de acceso, inmunidad al ruido, ro~ximos voltajes permisibles 69 en los canales y la protección a las entradas. Si los canales de entrada son multiplexados secuencialmente, ca- da canal puede ser muestreado a una velocidad dei dondtt fll • [ T1 ea el t.lespo de adqulaJctOn del •u1Upluor- y deJ retenedor. T2 ea un cort.c:i lnler•a1o de Ueapo r~ul!rldo por el retenedor para poru:ru:- en. aodo d.r c.apt.ura. T3 •H el t.l-po que dura 1• c:on•er•lÓn N ea el nlase,ro de car.ale• El amplificador de ganancia programable Este bloque de ganancia deba ser agregado para ut~lizar total- mente el convertidor, manteniendo la se~al de entrada dentro de la condici6n EPl'2<=Vcmt<;:.J:P , donde CP es la escala plena. Otras caracter1sticas que proporciona el amplificador de ganan- cia programable son: a} Aislamiento. Previene un efecto de carga debido a la resis- tencia de encendido d~ los ~ultiplexores. b) Conversión de voltaje diferencial al de un solo terminal. e) Presenta un rechazo para señales a modo comün. Para sefiales de alto nivel y bajo contenido de voltaje a modo comün, es suficiente un amplificador pseudo-diferencial. Para señales de bajo nivel y altos voltajes a modo comün, conviene uno totalmente diferencial. El muestreador-retenedor (S-H) Este circuito se emplea para mantener constante el voltaje de entrada al CAD, mientras se est~ llevando a cabo la conversi6n. En el modo de muestreo, un capacitor se carga rápidamente siguiendo 70 AMPLIFICADOR DE ALTO GAHANSIA ENTRADA NTR FIGURA 4.1.2 CIRCUITO TIPICO DE UN RETENEDOR-MUESTREADOR Las características del S-H son cruciales para la exactitud del sistema y la confiabilidad de los datos digitales, especialmente en aplicaciones de alta resolución y velocidad. Existe una técnica moderna para el muestreo a alta velocidad, Utiliza dispositivos acoplados por carga (CCD's). Estos dispositi- vos actúan como registros de corrimiento analógicos, sobre las ba- ses de el primero en entrar es el primero en salir. Se aplica en osciloscopios digitales para aumentar el ancho de banda digital de éstos sin necesidad de un convertidor de muy alta velocidad. El convertidor analogico a digital (CAD) El CAD tiene la tarea de interpretar en un código digital, la señal analógica presente. Esta señal, como ya se ha nencionado, es un voltaje en la mayoría de los casos. Algunos de los métodos bá- sicos de conversión se describen concisamente en las siguientes líneas: a) Codificación instantánea (flash encoding). Requiere de 2-1 comparadores, donde n es el número de bits a la salida. Compara Simultáneamente la señal analógica de entrada con una cantidad de niveles de referencia correspondientes a la cuantificación de la escala. 71 al voltaje de entrada. En el modo de retención, el capacitar es desconectado de la trayectoria de entrada y permite mantener estable el voltaje a la salida del circuito. -~ ENTR•D•~~. O C9NT~OL PE MOQO rt>±SOCIDO A . ,2 I UITO I I O E R- UESTREADOR as racterísticas el - n ciales ara actitud el a nfiabili ad e s atos i itales, ci l ente li ci nes e lta l ción l cidad. xiste na ica oderna ara l uestreo l ta l cidad. tiliza i ositi os plados or rga CD's). stos i positi- os tüan o istros e rr iento al6gicos, bre s a- s · el r ero trar s l ero lir. e lica il opios i itales ara entar l cho e nda i ital e t s i cesidad e n nvertidor e uy lta l cidad. l nvertidor al gico i ital D) l D e a e t r retar n digo igital, fial alógica r sente. sta ñal, o a a mencionado, s n oltaje ayor1a e s sos. lgunos e s étodos A- s e versión scri en ci ente s ientes i as: ) odificación Anea sh coding). equiere e n-1 paradores, nde s l ü ero e its li a. ompara s ult ente ñal alógica e tr da n a ti ad e i eles e r ncia r ondientes antifi ación e cala. b) Inteqraci6n por rampa simple. Utiliza un contador, un gene- rador rampa y un comparador. Este método genera una señal de voltaje rampa y la campara con el valor presente en la en- trada. Cuando el nivel de la rampa iguala a este valor, el contador es detenido indicando el código digital equivalente a la tensión de entrada. El tiempo de conversión es variable y lento. c) Conversi6n por doble rampa. Es un método más exacto que el anterior, pero requiere un tiempo para que el contador al- cance su máximo valor y otro más para que un capaci ter se descargue. Aqu1 el CAD integra la entrada hasta que el contador alcance su.máximo valor y luego se genera una ram- pa opuesta, debido a la descarga del capacitar, en un tiempo proporcional al voltaje de entrada que el contador registra- rá con un c6digo digital. d) Conversión por aproximaciones sucesivas. Este compara la en- trada desconocida con las sumas de fracciones aproximadamen- te conocidas de la escala completa en binario, comenzando con la m~s alta (2-1 ) y descartando cualquiera que cambie el estado del comparador. 4.2. CONCEPTOS Y TERHINOS UTILES RESOLUCION.- En un CAD, es la expresi6n del cambio más pequefio en la entrada, que incrementar1a o decrementar1a la salida de un c6digo al c6digo adyacente. Está definido usualmente por el nfunero de bits o expresado en porcentaje respecto a la escala plena. INCERTIDUMBRE DE CUANTIZACION.- Todos los voltajes anal6gicos en un rango dado son representados por un 11nico código de salida digital. En un CAD ideal esta incertidumbre es de l/2 bit menos significativo (BmS). ERROR DE LINEALIDAD.- Es la máxima desviaci6n de la linea recta pasando a través de los puntos finales de la caracter1stica de 72 transferencia del CAD. ERROR DE ESCALA CERO O DE OFFSET.- Es la medición de la diferen- cia entre la salida de un CAD ideal y el actual para un voltaje de entrada igual al de escala completa. TIEMPO DE CONVERSION.- Es el tiempo que un CAD utiliza en produ- cir el c6digo de salida desde que se da inicio a la conversión. TIEMPO DE APERTURA.- Es el intervalo de tiempo entre la declara- ci6n del,.comando de retención, en el S&:H, y la apertura total del interruptor (normalmente estA basado sobre los porcentajes del 10\ al 90% de la apertura total del interruptor). TIEMPO DE ADQUISICION. - Es el tiempo requierido por la salida del dispositivo en alcanzar el valor final, dentro de la banda de error especificado, después de la aplicaci6n de una señal-comando. TRANSFERENCIA DE CARGA (offset step) .- Es la carga transferida al capaci tor de almacenamiento, en un 5-H, cuando se conmuta al modo de retención. VOLTAJE OFFSET DE ENTRADA.- Es el voltaje que debe ser aplicado entre las terminales de entrada de un amplificador operacional, a través de dos resistencias iguales, para obtener un voltaje de salida cero. RECHAZO A MODO COMUN.- Es la habilidad de un dispositivo a re- chazar el efecto del voltaje aplicado a ambas terminales simultá- neamente. Usual~ente se expresa en decibeles. VELOCIDAD DE CAIDA (slew rate) .- Es la rnAxima velocidad de cam- bio de una señal de entrada de gran amplitud, tal que en la salida se obtengan valores con un error dentro del limite especificado. RESISTENCIA DE ENCENDIDO (Ro•). - Es un término aplicado a los interruptores analógicos e indica la resistencia entre la entrada 73 y la salida de un canal direccionado. ANCHO DE BANDA. - Es la frecuencia a la cual la ganancia de voltaje de un dispositivo ar.iplificador se ve reducida 2·1 /2 veces el valor en frecuencia baja . .RELACION DE RECHAZO A MODO COMUN.- Es la razón del rango de vol- taje a modo comün al cambio pico a pico en el voltaje offset en la entrada sobre este rango. VELOCIDAD o RAZON DE DESEMPEilo. - Es el número de muestras por segundo por canal que el sistema puede manejar. BIT MENOS SIGNIFICATIVO (Bms).- Es el bit de la entrada digital que tiene el peso numérico más bajo en un código. BIT MAS SIGNIFICATIVO (BMS). - Es el bit de la entrada digital que tiene mayor peso numérico en el código. CORRIENTE DE DESVIO DE E!ITRADA.- En amplificadores operacionales es el promedio de las dos corrientes de entrada. 4.3. PLANTEAMIENTO Siendo que la aplicación de esta interfaz está dirigida a la re- cepción de voltajes variables dentro de un amplio rango y con ca- pacidad de muestreo de varios canales, se plantearon los siguien- tes objetivos como un punto de partida, requeridos indispensable- mente. a) Resolución digital de la conversión: 12 bits. b) Rango de la señal analógica de entrada: cero a diez volts. e) Tipo de convertidor: de aproximaciones sucesivas. d) Código digital del convertidor: binario o complementario. e) Niveles lógicos del siste~a: TTL para interfaz externa. !) Número de canales de entrada: ocho. g) Razón de rendimiento: 500 muestras/segundo/canal. 74 h) C6digos omitidos en el CAD: lo minimo. i) Indicaci6n de fin de conversión: por dato en registro. j) carácter de la señal de entrada: de c.d., filtrada, diferen- cial y de variación lenta. k) Capacidad de muestreo y retención de la señal de entrada. lJ Carncter1sticas de el amplificador de ganancia programable: - Tipo: de instrumentación (totalmente diferencial). - Rechazo no riguroso para señales mayores a 5 volts a modo comün. - Ganancias programables por hardware de 1, 2 y 10. - M&xima rapidez de respuesta: 0.2 V/microseg. m] Tiempo máximo de apertura del retenedor: 5microseg. n) Multiplexaje: - En forma diferencial. - Con protección en las entradas. o) Referencia del CAD: estable en +1¡2 Bms. 4.4 DIAGRAMA DE BLOQUES La estructuración que se le ha dado a esta interfaz consiste de 6 bloques principales que se vinculan con las sefiales de entrada y y salida, analógicas y digitales. La figura 4.4.1 presenta estos bloques interconectados entre si, y en los siguientes incisos se da una explicación concisa de cómo es que cada uno de ellos actüa. a) Bloque de multiplexión anal6gica.- Desde el momento de la inclusi6n de este bloque, es evidente que el CAD a utilizar tendr& entrada de terminal única. Las actividades de los multiplexores están coQandadas por la lógica de control. La selecci6n de un canal especifico lo definen las lineas PA2, PA3 y PA4, de la PIA1. Estas deben mantener invariables sus niveles lógicos durante el tiempo que dure la conversión. b) Bloque de la lógica de control y tiempos.- La función que 75 desempeña esta parte es, fundamentalmente: _Generación de las señales para: inicio de conversión, cambio a modos de muestreo o retenci6n en el s-H, y los retardos para compensar los tiempos de respuesta de los amplificado- res y multiplexores. La PIA1 interviene como parte de la 16gica de control. su funci6n es direccionar al multiplexor analógico, proporcio- nar el pulso de validación para el inicio de la conversión, leer el estado de la conversi6~ y leer los datos digitales que el CAD proporciona. c) Bloque de amplificaci6n.- una vez que el canal de entrada ha sido seleccionado, la señal pasa a través de los multiplexo- res analógicos y llega al amplificador de instrumentación. Los rangos de voltaje diferencial de entrada de las señales analógicas depende de la ganancia configurada, ellos son: de cero a diez volts, cero a cinco volts o cero a un volt. d) Bloque de muestreo y retenci6n.- Este circuito debe mantener la seftal con un m1nimo de pérdidas o inducciones después de emitido el comando de retenci6n por la 16gica de control y tiempos. El capacitor de retenci6n jugará el papel más im- portante para una respuesta óptima. e) Bloque de la referencia de voltaje.- Un convertidor de apro- ximaciones sucesivas toma una referencia muy estable para realizar las conversiones, por ende, este voltaje debe man- tenerse invariable permanentemente, permitiéndose una varia- ci6n de +1¡2 BmS. otra funci6n de este circuito es suminis- trar la corriente suficiente para los dispositivos que la requieran. f) Bloque de la conversi6n anal6gica a digital.- Es el CAD de aproximaciones sucesivas de 12 bits. Es sabido que la reso- luci6n de un CAD depende del n!lmero de bits del código de salida digital. El número de bits de un CAD indica la cantidad de combinaciones que pueden tenerse con ellos. P~ra 76 N T R o o o L 6 RELOJ 1 o~ 1 ~~WA~ CLK• ~ CK ~~~~~~~~~...;se Cc RE.F°. IOR+-~~~~~~~~~~ F'I RA .5.l A E QUES EL !IVERTIDOR C1210 CAR GE LA BIOLUONECA ap ae a oa - Proximaciones UI as (SAR) se iniciíalice síncronamente con la siguiente transición bajo a alto del reloj. El bit más significativo, 011, es puesto en estado lógico bajo y los bits restantes, Q0 a Q10, se ponen en nivel l16- gico alto (para código complementario). El SAR permanecerá en esta condición hasta que la entrada 38€ tome un nivel alto. la conver- sión puede comenzar al momento de la transición bajo a alto del siguiente pulso de reloj (observe la figura 4.5.2). Se hace, entonces, Una comparación entre el nivel de voltaje presente en la entrada del CAD y el resultante en el convertidor digital a analógico (CDA) por el código aplicado (el equivalente a media escala). En este momento Q1i1 asume el estado de la salida de el comparador y €l proceso continúa haciendo particiones de la escala plena en la forma 22%, 273,..., 2 "N hasta que el bit menos significativo es operado de la misma manera. Cuando el SAR ha tomado todas las desiciones, éste emite una se- ñal de fin de conversión (UTC), indicando con ello, que los datos que el convertidor sustenta son válidos. Ya que las salidas del SAR son accionadas por interruptores, al finalizar la conversión los datos permanecen inalterados todo el tiempo en la salida del CAD, hasta que se inicie otra conver- sión. 5 S YA CONVERSIÓN ER PROCESO DATOS VALIDOS Bb AÑ TIEMPO DE COKVYERSIÓN SA FIGURA 4.5.2 SECUENCIA DE SEÑALES-COMANDO PARA EL ADC1210 Una consideración para este convertidor es que los niveles lógi- cos de interfaz deben ser CMOS, esto es, otro tipo de lógica utilizada requiere un cambiador de niveles, T9 ESTA TESIS NO DF.B! bajada, causa que el registro §JUJf~oxQ~ac~nesBl~~eq\~~~ R) ici li e in rnente n iente si i n ajo lt el loj. l it á.s ificativo, Qll, s esto t o ico ajo s its t ntes, O lO, nen i el ó- i o lt ara digo plementario). l R anecerá sta ndición asta e tr da se e n i el lto. nver- n ede enzar l omento e si i n ajo lt el iente lso e loj serve ra . .Z). e ace, t nces, u a paración tre l i el e ltaje r sente n tr da el D l ltante l nvertidor i ital al gico OA) or l. digo li do l i <> edia cala). n ste omento ll e l t o e li a e l parador el r ceso t do aueslrao !comando de ret.encl~n sal de uzse · tOµs-+LJ.- lat.ch lnlc lo de conv'n. lalch UZ6A lln\clo de conv 'nl LJ reut lalch U26 ce (C.\D) 1---i FIGURA 4.7.l DIAGRAMA DE TIEMPOS DE LAS SEÑALES PARA LA INTERFAZ DE CONVERSION ANALOGICA A DIGITAL. U20 proporciona la ganancia y corrientes necesarias para entre- gar al CAD lo,ooo mv. La señal de conversión completa, (C'C), es enviada a través de la linea PAO de la PIA2 para indicar el estado de la conversión. Si su nivel lógico presente es cero, la conversión ha concluido. Lo opuesto se dice si su nivel lógico es uno. 83 A M A a r da l Ocio - po r pr op Cc P1A1) ta ía rja 22 a LA IMTEBTAL DC Comissió aopuócica a cÍciTa FICUWA 4 T.7 DIoL rama ELÚCIICO w tienen tolerancia el im. 1er, . FUN EAA ai jedrtáción em tierra. 84 La lectura de datos se hace una vez que se encuentra la linea PAO, en la PIA.2, en nivel bajo. Se leen primero los 4 bits menos significativos, e iru:iediatamente después, los ocho restantes. 4.8 PROCEDIMIENTO DE CALIBRACION Para llevar a efecto la calibraci6n, es indispensable contar al menos con un multimetro digital que tenga resoluci6n para medir milésimas de volt en todo el rango de cer~ de diez volts. También es requerida una fuente de voltaje de presici6n regulada. Las tablas 4.8.1 y 4.8.2 servirán para tomar las referencias de los puntos de prueba y las configuraciones deseadas. PUMTO DE Pm.rt:BA "CND" "t>!T" l!T 1 LIDAD RUDIENCU. DE TODAS U.S KIDICtONES t.lLIBRJ.CI0N DCL AKPLtFIC.lDOR Otn:- R.CNCIAL Y DO. CONVERTIDOR .lHAl.OcICO .l DICIT.lL. TABLA 4.8.1 PUNTOS DE PRUEBA PARA LA INTERFAZ DE CONVERSION A/D Al efectuar el siguiente procedimiento, se direccionarA solamen- te un canal de conversi6n, observando todos los requerimientos. Las mediciones deberán hacerse con respecto al terminal de ref e- rencia cero (tierra anal6gica). AJUSTE DEL VOLTAJE OFFSET Y LA GANANCIA DEL AMPLIFICADOR DE INSTRUHENTACION a) Cortocircuitar las dos entradas diferenciales del canal seleccionado (sin referencia exterior) y conectarlas al ter- minal de tierra anal6gica. b) Configurar a la ganancia requerida (1, 2 6 10). 85 OPClbM DESCIPC I bti1 Pll!:HTt:S PVNTOS OE A USAR COHD:tbs DlVlSlOH DE LA FR.tCt.'Oi-CtA CE ttt..OJ ca.. µp orrru: 4 J6 1 y 2 DlVtStbH DE LA nu:cu::to1ClA Ot ru:tOJ DD. µp EMTRt S JS 3 y ' D1Vt51Ó1' DE. LA rRt"OJOiCU. J6 s y 6 DE R.:..l..OJ DCL µp omu: 16 CONFlCUlUCtCs DI: LA C.A~-'ll CU DO. AKPLI f ICAOOR A l J7 MtNcanm COHTICURACtbH DE: U CA.NAl'I J7 3 y ' CIA. DO. Al'G'Ll FlCA.OOR A 2. CONTIC.URACtbM OtUC.A~ J7 1 y 2 CU DEl. AKf"Llf lCAOOR A 10 FIGT.JRA 4.8.2 CONFIGURACIONES DE LA INTERFAZ PARA LA CONVERSION ANALOGICA A DIGITAL c) Enviar un voltaje diferencial de lOOOOmV, SOOOmV ó lOOOmV, para ganancias respectivas de l, 2 6. 10, al canal selecciona- do· por medio de la referencia externa. d) Ajustar el potenciómetro P2 para obtener una lectura de 10000 milivolts en el punto de prueba 11 E?lT 11 • AJUSTES PARA ESCALA CERO Y ESCALA PLENA EN EL CAD a) Para el ajuste a escala plena, aplicar un voltaje a la entra- da del canal analógico seleccionado, de tal forma que se mida en el punto de prueba 11 ENT 11 , 9998.BmV o el valor más próximo. b) Ajustar el potenciómetro PJ hasta que el código de salida del convertidor varíe s6lo entre el valor máximo y el valor inme- diato inferior. e} Para el ajuste a escala minima, se aplica un voltaje en el canal seleccionado para medir en el punto de prueba 11 ENT 11 1.22 mv, o el valor rnás cercano. 86 d) Girar la perilla del potenciómetro P4 hasta que el código de salida digital oscile sólo entre los valores de escala mi- nima y el inmediato superior. e) Efectuar reiteradamente los pasos a, b, e y d de este proce- dimiento hasta que no se observe más alg6n desv1o en los códigos resultantes, sin necesidad de calibrar. 87 4,9 TABLA DE COMPONENTES REFERENCIA CODJCO DEl. DESCRlPCTbN DISPOSITIVO RRI (.7s::, sx KALU DE RESISTENCI A.S Dt PUNTO COHCJK RI 270J:, sx RESISTENCIA PELlcUU. KETALICA, 1/4W R2 22J:, SX RESISTENCIA PELlCUl.J. KETALICA, 114\I RJ,R& lOM, sx RESISTDICU, PELlcUU. KETALICA, 1/4W R21 B.2M, sx RESISTDfCIA PD..lCUU. ta:TA.LICA, l/4W R22 a, IX RESISTENCl4 Pa.lcvu .KET•LICA, 1/4W RB A Ali lOlt, o. u: RESISTEHCIA PEL}CUU. KETALICA, 1/4W R5,R7 10J:, IX RESISTDICU. PEL\CUU. KETALICA, l/UI R6 191t, IX RESISTENCIA. PEL}CUU. KETALICA, 1/4W R4.,R17 4.71;, IX RESISTENCIA PELlcuu KET.U.JCA, l/4W Rl9 lOOlt, IX RESISTDICIA PD.lcUU. METALICA, l/4W A1B,R20 101, 5' RESISTEHCIA PEL!CUU. KETALICA, l/4W Ct,C2 1 nr CAP.U:tTOR CER.b:JCO CJ,C4 JOpf CAPACJTOR CER.l.KICO CS,C9 IOOpr CAPACtTOR cmlKtco C6 10nF CAPAClTOR TtT11.IN C7,C11 o.1µr CAPACITOR CERlHICO CB,CtO toµr CAPACITOA TANTALIO U25 74LS1 23 KUl.TIVIBRJ.DOR MONOESTABLE DUAL U26 7"LS74 FUP-n.DP TIPO O U23,U2' CD4049 6 AISLA.DORES D[ LlNEJ. INVERSORES ue C04050 6 .USU.DORES DE LlNEA NO IKVERSORES U27 74LS9J CONTAOOR BUIARIO U28 CD4S04 CAKBUDOR Of: Nlvtt. CKOS-TIL, TTL-CHOS U1S,U16 CD.f.051 KULTIPU:XOR AHALbclCO, 8 CANALES U17,U18 LK108N AXP. OP. DE PRESJCJÓH U19,l120 UUOIH AMP. OP. DE PROPÓSITO CEHDU.L U21 l.FJ98H RE'TENEDOR·HIJE~TROOOR 15-HI U22 ADCI 210 COHVERTtOOR AN>.LbGICO A DlCtTAL, 12 BITS DI Ut3J6-5 01000 REf'E:RENCUOOR OE VOLTAJE, SY 01 2H3904 TRANSISTOR HPH PI 5C< TRIKPOT 10 VUELTAS P2 "" TRIKPOT 10 vua.ns "" 10< TRIKPOT 10 VUELTAS •• 100< TRIMPOT 10 YUEl.TAS 88 5.- INTERFAZ PARA LA CONVERSION DIGITAL A ANALOGICA Un módulo para la conversión digital a analógica fácilmente con- vierte el código digital aplicado en sus entradas a un voltaje o corriente, siempre y cuando este código sea mantenido el tiempo suficiente mientras se desee estable el va"lor de la salida analó- gica. Hay muchas aplicaciones para una interfaz de conversión digital a analógica. Por citar algunas de ellas, se listan en los siguien- tes incisos: a) Para manejo de un servomotor. b) Para manejo de un graficador. c) Como generador de música. d) Para controlar un convertidor de voltaje a frecuencia. e) Como elemento indispensable de una fuente de alimentación programable. r) Para manejar un medidor analógico. g) como un filtro digitalmente programable. Precisamente un convertidor digital a analógico (COA) viene siendo el complemento de los convertidores ana16gico a digital, esto es, uno realiza las funciones totalmente opuestas del otro. En muchos casos, como se ha descrito en el capitulo anterior, un COA es un elemento intrínseco para la operación de los CAD. 5.1.- CONCEPTOS Y TERHINOS UTILES COA MULTIPLICADOR.- En un sentido, cada COA es un multiplicador puesto que el voltaje de salida (o corriente) es igual a la refe- rencia de voltaje veces una corriente determinada por el código de 89 ' núnero de bits de resolu- ción). RESOLUCION.- Es el más pequeño incremento analégico correspon- diente a un canbio de código del convertidor en un BmS. Para con- vertidores, la resolución es normalmente expresada en bits, donde el número de niveles analógicos es igual a 2”. CURVA DE GANANCIA.- Es la línea recta que conecta los puntos correspondientes a la escala cero y escala plena del CDA (voltaje contra código). ERROR DE GANANCIA.- Es la diferencia entre el voltaje de salida (o corriente) con un código de entrada para plena escala y el vol- taje ideal (o corriente) que debe existir con un código de plena escala de entrada. ERROR DE DESVIO (ERROR CERO).- En:un CDA, éste es el voltaje de salida que existe cuando el código digital es puesto para dar una salida ideal de cero volts. En el caso de un CAD, es la diferencia entre el voltaje de entrada ideal (1/2 BnsS) y el voltaje de entrada actual que es necesario para hacer la transición de O a 1BmS. NO LINEALIDAD INTEGRAL.- Es el peor caso de la línea recta entre los puntos extremos (cero y plena escala). Puede ser expresado como un porcentaje de plena escala o en fracciones de BnS. Se le conoce usualmente como error de linealidad. MONOTONICIDAD.- Una función monotónica tiene una pendiente, cuyo signo no cambia. Un CDA monotónico tiene una salida que cambia en la misma dirección (o permanece constante) para cada incremento en el código de entrada. Lo opuesto es aplicado para códigos decrecientes. NO LINEALIDAD DIFERENCIAL.- Idealmente, cualesquiera dos códigos digitales adyacentes corresponden a códigos analógicos medidos que 90 entrada digital dividida por 2n (n es el nú~ero e its e solu- i n). LUCION. - s l á.s ueño i ento alógico respon- i nte n mbio e igo el vertidor n S. ara n- rti ores, l l ción s almente resada its, nde l ero e i eles alógicos s i al a 2n. VA E NANCIA.- s l li a cta e necta l s ntos s ondientes l ala ro ala l a el OA ltaje ntra digo) • OR E NANCIA.- s i r ncia tre l oltaje e li a ( rriente) n n igo e t da ara l a ala l ol- je i eal ( rriente) e be istir n n digo e l na ala e trada. OR E SVIO (E R ERO).- un OA, ste s l oltaje e li a e iste ndo l digo i ital s esto ara ar na li a i eal e ro olts. n l so e n D, s l i encia tre l oltaje e tr da i eal ( /2 J:!S) l oltaje e e tr da tual ue s ecesario ara acer l t sición e o l s. 110 I!I I D Ill RAL.- s l eor so :le l li a cta tre l s ntos tr os ro l na cala). uede r resado o n rcentaje e l a ala ci nes e rnS. e l oce al ente o ror e li li ad. OllOTOllICIDAD.- na ción onotónica ti e na ndiente.c o i o o bia. n OA onotónico i e a li a ue bia l is a i cción ( anece stante) ara a i ento l igo e trada. o uesto s li do ara igos ecrecientes. 110 I LI D I REllCIAL.- l ente, alesquiera os digos i itales yacentes nden igos alógicos edidos ue son exactamente un BmS aparte. La no linealidad diferencial es una medida del peor caso de la desviación del paso ideal de un BmS. Una no linealidad diferencial de +isms o menos garantiza monotoni- cidad. 11 GLITCH 11 • - Es una expresión de los Ingenieros en Electrónica para denotar una condición de transitorio indeseado. En un COA es un transitorio que ocurre en la salida cuando la entrada digital es cambiada. (a) ERROR DE LINEALIDAD (e) ERROR DE OFFSET ···~-;~r~!=~=er! / /Í (b) ERROR DE GANANCIA (d) ERROR DE 110 LINEALIDAD DIFERENCIAL FIGURA 5.1.1 GRAFICACION DE ALGUNAS CARACTERISTICAS PARA UN COA BINARIO DE TRES BITS. 91 un ntimero natural binario puede ser representado como: donde los coeficientes Al ( n >= 1 <= -n ), toman valores de cero o uno y son los bits del código digital. La parte de N con coeficientes de sub1ndice positiva constituyen la porción entera. La parte de N con coeficientes de sub1ndice negativa constituyen la porción fraccionaria. La salida analógica de un COA binario de n bits, est:i expresada en la siguiente función de transferencia: .... s.1. t donde s.u..,. es definida como la salida a escala plena nominal del COA. As1, puede veree, que con un c6digo para escala plena del COA (todos los bits de entrada igual a 1) el valar de salida es: El término s.L.,.12·•, es el nivel mfls pequef\o de salida que el COA puede proporcionar para un código definido y que viene siendo la diferencia de sef\ales de salida ideales de dos códigos digitales adyacentes aplicados. Como ejemplo, la función de transferencia de un COA binario de J bits es graficada en la figura 5. i. 2. Puesto que solamente ocho niveles de se~al de salida pueden ser obtenidos en un COA de esta 92 resolución (incluyendo al cero), se observa que para un código correspondiente a escala plena aplicado, el valor de la salida analógica será de 7/8 la escala plena, como lo expresa la ecuación 5.l.2. .,, l ·~ IM FIGURA 5.1.2 FUNCION DE TRANSFERENCIA IDEAL PARA CODIGO BINARIO DIRECTO (UNIPOLAR) . En las figuras 5.1.J, a y b, se presenta graficada la función de transferencia de un COA bipolar de tres bits para códigos de en- trada offset binario y complemento a dos, respectivamente • .::--l 20 2" vs2 ... [7 ] vrer •.. s.:.:.J NOTA; De• el cbd190 dlqHal e1tproudo en al•teina dec111l41 FIGURA 5.2.5 SALIDA BIPOLAR COll UllA REFERE!ICIA DE VOLTAJE FIJA 98 La figura 5.2.5 es un circuito utilizado comünmente para propor- cionar una salida bipolar a partir de la multiplícaci6n con una referencia de voltaje fija al hacer un agregado a la figura 5.2.4 de un amplificador sumador de dos entradas, conectado a la salida del primer amplificador operacional y a la referencia de voltaje, siendo posible obtener la multiplicación en dos cuadrantes cuando la referencia toma un valor permanentemente fijo. La desventaja de este circuito con respecto al de salida unipolar, es que el paso del voltaje de salida se ve duplicado, debido a que también el rango se incrementa al doble. Esto se demuestra hacienda uso de la ecuación 6.2.J: Existen dos modos de operación para un circuito COA multiplica- dor R-2R. Ellos son: a) Operación en modo de conmutación a corriente. b) Operación en modo de conmutación a voltaje. En ambos casos, el código digital controla los interruptores internos en la escalera R-2R~ Para el modo de conmutación a corriente, la terminal para voltaje de referencia es una entrada y las terminales Iu11 e Iu12, son tomadas como salidas. Aqu1 las corrientes pueden fluir en cualquier sentido, siendo la base fundamental de un multiplica- dor de cuatro cuadrantes. Para proporcionar un voltaje de salida utilizando un COA en este modo, se hace por medio del amplicador operacional convertidor de corriente a voltaje . El valor del voltaje de salida es forzado a ser igualª' Vu1 • -(Isa11 x Rr) (consulte la figura 5.2.4). En el modo de conmutación a voltaje, la terminal para referencia es una salida, mientras que la entrada será ahora, la terminal Isa.ti. A esta última se le suministrará el voltaje de referencia y 99 serA atenuado por la escalera R-2R en proporción al código apli- cado. 5,3 PLAHTEAl!IENTO En este apartado se indican las caracter1sticas consideradas de vital importancia que poseer1a la interfaz para la conversión di- gital a analógica en un principio. Los siguientes incisos des- criben estos requisitos. a) Resolución digital de la conversión: 12 bits. b) Rango de la señal analógica de salida: cero a diez volts. e) Configuraciones: Para salida analógica unipolar o bipolar. d) Código digital de entrada: binario. e) Niveles de voltaje lógicos en el sistema: TTL. !) NClmero de canales de salida: uno. g) Monotonicidad: Garantizada en el CDA para los 12 bits. h) Error de linealidad: menor o igual a o. 05% de la escala plena. 1) Capacidad de multiplicación en dos cuadrantes. j} Protecciones: Tiempo indefinido para salida en corto cir- cuito. k) Referencia del COA: estable en ±1¡2 BmS. l) Tiempo de puesta del COA: menor o iqual a lmicraseg. 5.4 PROCESO DE SELECCION Para la estructuración precisa de esta interfaz, fué conveniente hacer ciertas consideraciones previas, referentes a: a) Los elementos constitutivos del circuito integrado para la conversión di9ital a analógica, y por ende; b) Específicaci6n de las diferentes señales de sincron1a que deben brindArsele al circuito. Estas dos puntos estAn relacionados con la selecci~n del circui- to integrada que e!ectuará l~ conversión digital a analógica. 100 El planteamiento de las caracteristicas indispensables que debia cumplir esta interfaz definen apenas el problema. Tomando en cuenta que existe ya un adaptador programable para periféricos dedicado al control lógico de las interfaces de conversi6n anal6- gica a digital y conversión digital a analógica, se tuvo que contemplar la selección de un circuito integrado COA multiplicador en dos cuadrantes lo más simple, es decir, con los elementos internos básicos que son la escalera R-2R y la lógica de control. En el ámbito de los circuitos integrados lineales, y en especi- fico los convertidores digital a analógico, existen en la actualidad una diversidad de fabricantes que proporcionan produc- tos de caracter1sticas que cumplen como m1nimo los requerimientos planteados. Hasta la fecha, estos productos son comercializados en México principalmente de tres firmas muy conocidas internacionalmente: Motorola Inc., National Semiconductor y Analog Oevices. En el apéndice o se incluyen las hojas de especificaciones para la selecci6n de convertidores digital a analógico. En ellas puede encontrarse muchos circuitos multiplicadores en cuatro cuadrantes, con resolución de 12 bits, errores de linealidad menores a o.OS\ y tiempos de puesta suficientemente pequeños. Se optó por usar el circuito DAC121B, de National Semiconductor en este diseno. Una de las prinqipales ventajas es que puede ser sustituido directamente por otros elementos de la misma serie de convertidores con errores de linealidad aceptables para muchas aplicacion'es. 5,5 DIAGRAMA DE BLOQUES Es necesario que se haga una retención del código digital a la entrada del CDA para garantizar que la salida de este dispositivo sea estable mientras el microprocesador no lo cambie. 101 Se precisa de cinco bloques interconectados que contribuyen al funcionamiento de la interfaz de conversión digital a analógica, ellos son: a) Bloque de control. b) Bloque de retención de datos. c) Bloque de conversión digital a analógica. d) Bloque de referencia de voltaje. e) Bloque de acondicionamiento de se5al de salida. La figura 5.5.1 muestra el diagrama de bloques para esta interfaz. BLOQUE DE CONTROL.- Es el encargado de proporcionar los datos en el momento oportuno en bloques separados, conjuntamente con una AHPLIF"ICAOORES PARA SALIDA SALIDAS UNIPOL.AR Y BIPOL.AR ANALd'GICA 00-07 DEL HICROPROCESAO.)R FIGURA 5.5.1 DIAGRAMA DE BLOQUES señal de habilitación para el bloque de retención de datos. BLOQUE DE RETENCIO!I DE DATOS.- Tiene la finalidad de mantener el dato de cada linea estable durante todo el tiempo en que el micro- procesador no actualice la información para la conversión. La señal para el modo de captura es recibida desde el bloque de control. 102 BLOQUE DE CONVERSION DIGITAL A ANALOGICA.- Es el circuito integrado convertidor digital a analógico. BLOQUE DE REFERENCIA.- Brinda un voltaje estable para referencia del COA y al suministro de corriente necesaria para operar satis- factoriamente. BLOQUE ACONDICIONAMIENTO DE SEilAL DE SALIDA.- Lo conforman un convertidor de corriente a voltaje, un amplificador sumador y un circuito de aislamiento para entrega de la señal en la salida anal6gica. 5,6 DIAGRAMA ELECTRICO Antes de explicar como qued6 desarrollado el diagrama eléctrico, conviene hacer una descripción concisa del circuito integrado DAC121B. El circuito integrado DAC1218 es un convertidor digital a anal6- gico capaz de efectuar la multiplicaci6n binaria de 12 bits en los cuatro cuadrantes. Sus entradas digitales son compatibles con la 16gica TTL sobre el amplio rango de voltajes de alimentaci6n. Tiene una excelente no linea1idad integral con un error de apenas o. 012% .4x. de la escala completa y una no linealidad diferencial que garantiza monotonicidad para sus 12 bits de resolución. El consumo de corriente de la referencia de voltaje es menor a lmA (Vref=lOV) . El DAC1218 es un circuí to de 16 terminales, cuya def inici6n tiene lugar en las siguientes lineas: (Al-A12). Entradas digitales. Al2 es la entrada digital menos significativa y Al es la entrada digital más significativa. Iouu. Corriente de salida 1 del COA. Iout2. Corriente de salida del COA. 103 Rfb. Resistencia de realimentación para el amplificador opera- cional que es usado para proveer un voltaje de salida. Vret. Voltaje de referencia. Si es una entrada, es conectada a una referencia de voltaje de presici6n externa para suministro de alimentación en la escalera R-2R. vcc. Fuente de alimentación de voltaje para la operación del circuito de control integrado en el COA. GND. Es la terminal de referencia de las sefiales (tierra gene- ral). La figura 5.6.l es el diagrama eléctrico para esta interfaz. En él puede observarse un arreglo de amplificadores operacionales si- milar al descrito en la sección 5,2 para configuración de salida bipolar. I.as consideraciones principales para la selección de estos elementos, estriban en que las corrientes de desv1o en sus entradas son despreciables y tienen alta inmunidad al ruido. Estas caracter1sticas son indispensables para la conservación de la linealidad del COA. El circuito LF357 es un amplificador operacional con entradas FET. Conjuntamente con el LF353 de caracteristicas similares, elevan la velocidad de la puesta de datos en la salida, Si no fuera indispensable esta condición, puede utilizarse otro amplifi- cador con corrientes pequefias de desv1o tal como el LMJ58N, directamente reemplazable terminal por terminal al LF353. El seguidor de voltaje, UJJB, acopla la se~al de salida que los amplificadores de acondicionamiento proporcionan. La referencia interna es tomada de la referencia de voltaje para el convertidor analógico a digital. Se ha utilizado un amplifica- dor inversor, con ajuste ligero en ganancia, a guisa de que en la 104 salida se obtenga un valor de -10000 mV. Este valor negativo de voltaje de referencia se eligió para proporcionar una salida positiva cuando se selecciona el modo de conversiOn unipolar. Nó- tese que, por ende, debe hacerse una calibraci6n de ganancia para el CAD previa al ajuste de referencia para el COA. A esta interfaz, considerando una opción para introducir un vol- taje de referencia externo, puede dársele la aplicación de multi- plicador en los cuatro cuadrantes. La serial será de tipo de corriente alterna o de corriente directa· bipolar, seleccionable por interruptores analógicos. Otra aplicación más que brinda el circuí to al optar por la selección de una referencia externa, es que puede operar radiomé- tricamente, es decir, la conversión es realizada desde un punto de vista absoluto, Para dar a entender el siqnificado de estas palabras, tomemos como ejemplo un tipo de transductor cuyo voltaje de salida es proporcional a una referencia externa. En este tipo de aplicación, la referencia para la fuente de sefial a veces es conectada a la entrada de referencia para el convertidor. De esta manera, cual- quier variación en la fuente de vol ta je puede además cambiar la referencia de voltaje del COA y producir una conversión exacta. Debido a que la resistencia de realimentación del DACl2l8 tiene un valor un poco más pequel'lo que el del resto en la malla interna, se agregó un potenciómetro en serie con ella para hacer el ajuste a escala plena. El voltaje de desvlo a la salida de los amplificadores operacionales cuando el código aplicado al COA equivale a un vol- taje de salida cero, es anulado con el potenci6metro para balance de ºoffset 11 en el circuito U32. El código digital, proveniente de la unidad de control, que es la PIA2, se hace llegar a dos flip-flops con sus entradas en 105 REF"CRCNCIA EXTE~NA -1 V -101{ l'"ICURA S.6.1 0IAGRA!1A EC..f!CTRlCO PARA LA tHlE.Rf"AZ OC CONVERSIÓf'I DICITAL A AHALÓCtCA "' o .... paralelo, de tal forma que la selecci6n entre los 6 bits menos significativos y los 6 bits más significativos para cada uno de ellos, se efectúa emitiendo una señal biestable hacia las terminales de disparo de estos circuí tos. Para discernir entre cuál de los dos actuará en su momento, se hizo uso de un truco utilizando los elementos de hardware disponibles. El circuito 0140 se activa con un nivel lógico cero; éste es aprovechado para enviar una transición ascendente a la terminal de control de disparo del circuito OJO. A su vez, cuando exista una transición positiva por parte de la terminal de control de la PIA2, UJO no actualizará los datos, pero en cambio, 029 ser~ capaz de hacerlo en ese instante. 5.7 CONFIGURACIONES En el circuito de la figura 5.6.1 se han indicado en cuadros con lineas punteadas los puentes para configuración. La tabla 5.7.1 es una referencia rápida para la configuración de esta interfaz. PUEHTE PUJO'OS DE UH IÓN OESCRJPClÓH JO 1 y 2 aeleeelbn del vollaje de rererencla Interno de -10000...v. JO 2 y 3 aelecclbn del voila.Je de rererenela externo. J9 1 y 2 ConíJ9uraelbn de la •al ld4 a 1t1odo unlpolar. J9 2 y 3 Conflquraclbn de la sal Ida a modo bipolar. TABLA 5.7.1 CONFIGURACIONES PARA LA INTERFAZ DE COA s.a CALIBRJICION El comportamiento del voltaje de salida del COA para un código digital aplicado en sus entradas se ha resumida en las tablas 107 5.8.l y 5.8.2 para las configuraciones de salida en modo bipolar y unipolar. Estas tablas son de suma utilidad para la realización de los ajustes en la interfaz. Los valores de voltaje de salida all1 mostrados fueron calculados para el voltaje de referencia interno de -1oooomv. Para uso de una referencia externa se aplica la fór- mula indicada. CHTJUD.l DICIUL APLICADA EOUl VTE. DECIMAL VOLTAJE DE SALIDA (111v) 111111111 1 11 (09S -1 Vrerl +28.S:.: -9995,1 110000000000 3072 -JvrorJ12 = -5000 100000000000 2048 o o 1 1 1 1 1 1 1 1 1 1 1 20(7 +2BaS • 4,88 010000000000 1021 •IYrer¡12 =5000 ºººººººººººº o + 1 Yr e f 1 2 10000 Vul • 10000.v-[t..ea2e o], o<• o < ... 4095 TABLA 5.8.l RESPUESTA DEL COA PARA CODIGOS DIGITALES APLICADOS EN EL MODO DE SALIDA BIPOLAR. DfTlUDJ. DIGIUL APLICADA ::::'.· VOLTAJE DE SALIDA (.v) ºººººººººººº O O O O O O O O O O O 1 + 1 BaS :: 2, U 1 O o o o O O o o o o o 2048 • I Vrer 1 /2 =- •5000 1111111111 1 1 4095 •IVrerj-10=5=9997.6 Y•al .. 10000.;•[ 4 ~ 96 ], O <• D OSIC!ÓN OE:l. TAMBOR F'ICURFI 7 .1. 1 DIACRl=lr1~ A BLOQUES OE LA MAQUINA 117 La unidad de procesamiento central (CPU) concentra y procesa la informaci6n recibida de la interfaz y del teclado. Envia senales de respuesta al inverter la interfaz y las exhibidores. Su función consiste en contabilizar la cantidad de pulsos que llegan a ella, medir tiempos entre dos eventos consecutivos de señal, activar dispositivos periféricos por medio del envio de las seña- les digitales apropiadas, recibir señales digitales de entrad& pa- ra conocer las condiciones prevalecientes en el medio exterior, controlar por medio de una señal analógica la velocidad del motor a través del inverter y enviar información a los exhibidores para presentar los datos que el usuario debe conocer. La interfaz es una tarjeta de circuito impreso con elementos de acoplamiento óptico y acondicionadores de señales de entrada y sa- lida para los distintos elementos conectados a sus lineas. aqul llegan todas las señales de los sensores situados en distintos puntos del sistema. También es un medio para transmitir las desiciones tomadas por el microprocesador de la tarjeta de CPU, necesarias para efectuar un control completo de los dispositivos sometidos a él. El inverter es un circuito electrónico capaz de convertir un nivel de corriente cont1nua a corriente alterna con un valor de frecuencia equivalente. En este caso, el microprocesador propor- ciona un voltaje que puede estar dentro del rango de cero a nueve volts c.d., para que el inverter haga variar la frecuencia de la señal de alimentación de e.a. para el motor, y por ende, modifi- cando en forma proporcional la velocidad de rotaci6n de éste. El contactar del inverter permitir~ el paso de corriente al inverter desde la linea de alimentación trifásica. El control de este dispositivo lo comanda la tarjeta de interfaz. La información necesaria para operar la máquina es introducida mediante el teclado, directamente por el usuario. Cuando se enciende la máquina, el CPU hace un reconocimiento de 118 los puertos de entrada y salida, memoria y elementos programables, esto es, envla señales de inicialización a dispositivos y verifica las condiciones iniciales que deben estar presentes para una operación normal, de tal forma que de resultar positivo este reco- nocimiento, la computadora estará lista para trabajar. La máquina requiere señales especificas para su funcionamiento. Verbigracia, po·sici6n del tambor y posición del tambor a cero pro- vienen de dos f0toacopladores de reflexión los cuales funcionan cuando existe un hueco en el tambor de posiciones. La posición del tambor en cero, indica que la máquina está a tiempo. Los termostatos de cabeza y del ventilador normalmente están activados si no se alcanza la temperatura de conmutación. con estas condiciones al arrancar la máquina sin avance, es decir, en vac1o, permitirá que los contactores del ventilador y del inverter se activen. A la par con este acontecimiento, el convertidor digital a analógico de la tarjeta de CPU env1a al inverter un vol- taje para controlar la velocidad de giro del motor, registrándose inmediatamente después, los pulsos de las revoluciones en la interfaz. 7. 2 LJIS SENALES DE INTERFAZ EN LA MAQUINA La tarjeta de microprocesamiento de la máquina tejedora recibe señales de la tarjeta de interfaz y a su vez le env1a una respues- ta a través de sus puertos de salida. Puesto que se trata de una aplicación sencilla de la tarjeta multifunción construida, las señales básicas que intervienen en este proceso para que el CPU de la máquina pueda arrancar el mo- tor, son las siguientes: ENTRADAS: Termostato del ventilador Posición del tambor Termostato de la cabeza 119 Revoluciones Paro remoto Paro de aguja Falta de aceite Falta de aire SALIDAS: contactar del ventilador Contactar del motor Activaci6n de aire Arranque del inverter Freno del inverter Señal anal6gica (0-9V c.d.) Todas ellas son se~ales digitales con niveles lógicos TTL, excepto la utilizada para el control de la velocidad del motor. cuando la máquina es encendida, el CPU solamente recibe senales, es decir, dnicamente les puertos de entrada son atendidos. cuando la máquina trabaja en vac!o, El CPU direcciona sus puertos de entrada y salida de acuerdo a la dinámica de señales mostrada en la figura 7.'-.1· Para funcionamiento de la máquina en vac1o, el voltaje enviado al inverter es de 1.B volts, en respuesta, el motor empieza a girar. cuando 13. frecuencia de la señal de revoluciones que envia la interfaz es mayor de 1. 25Hz, El microprocesador hace que el COA reduzca su salida en forma proporcional al tiempo, esto es, se de- crernentará más rápida~ente si esta velocidad es bastante superior a la considerada como base hasta llegar incluso a mantener por dos segundos el voltaje para trabajo en vaclo (l.SV). Si no se obtiene respuesta, se vuelve inmediatamente al valor de cero en espera del siguiente ciclo para realizar exactamente el mismo procedimiento. 120 .... "' .... RPH ¡.... OPERriCldN NORMAL -><4------------ OPERACION ANORMAL-------__.., ' \\ '. \\ ' } TERMOSTATO OEL VENTILADOR. POSICIÓN DEL TAHSOR. TERHOSTATO OE LA CABEZA Y PA~O REHOTO ¡ PARO DE AGUJA, FALTA DE ACEIT: Y FALTA DE AIRE • ¡ ~---~:---..;•\ : \ . ... : .............. .TlJUlf\\Ul__ft_lliU\\l____fl__flfülJ 1.2SHz FIGURA 7.2.1 OIACRAHA oc TIEMPOS PARA FUNCIONAMIENTO DE LA MA°QUINA EN VActo A L I A 5 cuando el microprocesador reconoce una igualdad entre la fre- cuencia medida y frecuencia considerada como base, el voltaje enviado en ese instante es mantenido y tornado como referencia para ulteriores incrementos o decrementos de velocidad del motor. 7.3 ASIGNACION DE ENTRADAS Y SALIDAS EN LA TARJETA HULTIFUNCION Para monitorear el estado de las señales de salida del CPU de la mAquina y determinar cuAndo se presentan transiciones de nivel en ellas, de acuerdo al diagrama de tiempos de la figura 7.2.1, es imprescindible utilizar las lineas de control disponibles al usua- rio en la tarjeta multifunción. A excepción de la 11nea de las revoluciones, todas las demás entradas al CPU deben permanecer inalteradas para una operación en vac1o de la máquina. Estas señales pueden ser mantenidas en su ni- vel adecuado desde el exterior o configurar un puerto digital de la tarjeta multifunción como salidas. La señal cambiante, emulando la equivalencia en hertz de la velocidad del motor, es enviada por un timer de esta tarjeta. Finalmente, la señal analógica que el CDA de la tarjeta de CPU proporciona al inverter, debe ser muestreada por la interfaz para la conversión analógica a digital de la tarjeta construida. Las tablas 7. 3 .1 y 7. 3. 2 muestran la asignación de entradas y salidas de la tarjeta multifunción, de acuerdo a las señales descritas anteriormente para el funcionamiento de la mAquina tejedora en vac1o. 122 SALIDA ASlC.HACtbH PDO, PJA2 TE:RtiOSTA.TO DEL VENTIUDOR PB1,PJA2 POSICIÓN DEL TAMBOR PB2, P1A2 POSJClbN DEI.. UHBOR A CERO PB3,PlA2 TERHOST A.TO DE U CABEZA PB4,PIA2 PARO REMOTO PBS, PIA2 PARO DE AGUJA PB6, PJA2 í.l.LTA DE ACCITE PB7, PIA2 FALTA DE AIRE 01, TtHl FRECUENCIA BASE lKTERMA 02, TIK2 REVOLUCIONES TABLA 7.3.1 ASIGNACION DE ENTRADAS EN LA TARJETA MULTIFUNCION ENTRADA ASlGHAClÓN CBl, PIAl COKT ACTOR on Vl:HTJLAOOR CB2, PU1 COKT ACTOR DCL HOTOR CAl, PIAl AIRE ACTIVAOO CA2, PIAt ARR4 MQUE OD.. lNVtRTER CBt, PIA2 FRDIO OO. lHVI:RTER CANALl, CAD SALIDA ANALÓGICA TABLA 7.3.2 ASIGNACION DE SALIDAS EN LA TARJETA MULTIFUNCION 7.4 CONSIDERACIONES DE UTILIDAD PARA LA PROGRAHACION DE LA TARJETA HULTIFUNCION Referente a esta aplicaci6n, algunas consideraciones fueron necesarias para programar las interfaces de la tarjeta multifun- ción. Para el cAlculo del periodo de la sefial de salida del timer, es necesario reducir la frecuencia que éste toma como base para los conteos internos, a guisa de que se obtengan tiempos más largos, pero por supuesto, dentro de los limites convenientes. El periodo de la señal de salida del timer en modo continuo es: T = 21n•l )l r "' in • • • 7 • 4 • 1 123 La relación de voltaje a frecuencia es: 1.sv " 1.2SKz "' v / x , de aqul que 0.694V (ti%) 7.4.2 Igualando 7.4.l y 7.4.2 y reduciendo se obtiene: \. = 1 / [L389V ln+tl] 7.4.3 Para n s 65535 = ffffh,. y Voln = lOmV, de 7. 4. 3, t = 1. 099ms. con t = l.099ms y V..U = lOV, de 7.4.J, n.ln = 4lheic. En forma general, para determinar el valor de n, de 7.4.3: n • 1 I [1t.389V)(\.099taal) - 1 • jt.SS/Y - tf ... 7.4.4. donde V está dado en volts. Se observa que la condici6n de la frecuencia con periodo de l.099ms debe ser proporcionada por otro timer como lo muestra la figura 7 .4. l. FIGURA 7.4.l CONFlGURACION DE LOS TlKERS EN LA TARJETA KULTIFUNCION. Para el timer l , aplicando la ecuación 7.4.l, donde t = 1.099 milisegundos, n debe ser calculado dependiendo de la frecuencia base configurada en la tarjeta. Para 4. 770933MHz y seleccionando un submültiplo de 16 veces ésta; n = 163 ... AJh~:c. 124 para SMHz y seleccionando un submültiplo de 16 veces ésta; n = 274 = ll2hex. Para lOMHz y seleccionando un submültiplo de 16 veces ésta; n • 342 = 156hex. Cabe señalar que al hacer modificaciones continuas al valor en los candados del timer, la frecuencia de salida puede variar sig- nificativamente. Por ello, es conveniente que el acceso a éste sea restringido para cambios relevantes. Las lineas PBO a PB7 de la PIA2, son configuradas como salidas. se activan las banderas de interrupci6n correspondientes a todas las lineas de control de la PIAl y CBl de la PIA2 y son conf igu- radas estas lineas para producir interrupción en transición de bajada de la señal de entrada. Se hace una verificación de la activación en transición de bajada de todas estas señales de control, observando su secuencia conforme al diagrama de la figura 7.2.1 e indicando su ausencia si el periodo de puesta ha pasado. También revisará. si vuelve a inicializarse la má.quina por alguna anomalia de las señales de en- trada, verbigracia, las revoluciones. 125 8.- PROGRAMACION La programación que el computador necesita para inicializar los registros de las interfaces diseñadas y comandar su apropiada ope- raci6n normal e iterativa, está compuesta de pequefias rutinas que desempefian actividades diversas y que se vinculan unas con otras para ejecutar una tarea especifica. En este capitulo se decriben, mediante diagramas de flujo y explicaciones concisas, las rutinas que conforman la proqramaci6n indispensable que es requerida para operar el hardware, tanto de la computadora, como el diseñado en este p~oyecto. 8,1,- ALGUNAS CARACTERISTICAS UTILES DEL LENGUAJE DE PROGRAMACIOH C, En este apartado son mencionados los elementos de Turbo e que fueron más esenciales para la programación realizada. La caracter1stica de compartamentaci6n de código y de datos que brinda el lenguaje de programación e se utiliza al momento de hacer la declaración de las variables de tipo local o de tipo glo- bal. En algunos bloques del programa fué preferible aislar la relación entre las variables de éste y las que externamente se manejan. En cambio, en otros casos se hizo necesario declarar las variables comunes a todos los bloques del programa. Las constantes pudieron ser declaradas en forma decimal o hexa- decimal, según fuera necesario. Incluso, en los formatos de salida para impresi6n de variables en pantalla se prefirieron aiín más flexibles. Los operadores relacionales y lógicos vienen siendo utilizados 127 frecuentemente para la toma de desiciones. Existe una forma de forzar una expresión a ser de un tipo espe- cifico mediante una construcci6n conocida como 11 cast", usada prin- cipalmente para la obtenci6n de valores finales. los arreglos y cadenas son elementos de la programaci6n que resultan ser imprescindibles en todo momento. Generalmente, para mayor eficiencia, se hace la selección de sus elementos con uso de los apuntadores. Precisamente los apuntadores son variables que contienen una dirección de memoria, haciendo más rápida la localización de las variables o elementos a operar. Nos permiten, además, hacer llama- das por referencia, es decir, copiando la dirección del argumento de una funci6n en un parámetro; al sufrir algün cambio este pará- metro, la variable que es usada para llamar la subrutina también es afectada directamente. Las estructuras son ocupadas en el programa cuando es requerido referenciar un grupo de variables bajo el mismo nombre. En muchos casos se referencian utilizando apuntador. Tipos especiales de estructura son los campos de bit que definen la longitud de bits que tendrA cada elemento. En el listado de la programaci6n, presentado en páginas más adelante, podrá verse la utilidad de esta opción vinculada con la definición de unión a otra estructura o variable. Sin los operadores sobre bits, que proporciona el lenguaje de programación e, la transferencia de información en las interfaces programables y su manejo adecuado serla engorroso o quizá imposi- ble. Por ültimo, del procesador de Turbo e se hace uso de algunas directivas como #define e #include. La priDera es utilizada para definir un identificador con una cadena y el segundo, permite 128 lncluir otros archivos fuentes en el nuestro, dando posibilidad de contar con las funciones de la bibioteca de Turbo e, verbigracia, las relacionadas con el sistema operativo. 1.2.- LAS RUTINAS DEL PROGRAMJ. La estructura general del programa está representado en el dia- grama de flujo de la figura B. 2.1. All1 puede observarse que después de la inicializaci6n de los dispositivos de entrada y salida e~iste un bloque intermediario que controla la bifurcaci6n del programa hacia dos rutinas básicas. El modo de operaci6n para calibraci6n consiste en una rutina que despliega el mena en video y toma una desici6n para desv1o hacia dos rutinas más pequeñas; ellas cumplen los procedimientos de calibraci6n descritos en los capitulas 4 y 5 correspondientes al CAD y el COA. En caso de seleccionar el CAD, se efectdan lecturas sucesivas del canal analógico número uno y se visualizan en pantalla. La interrupci6n a esta rutina es emitida por el usuario via el te- clado. En este momento, se est! en condiciones de elegir entre la repetici6n del procedimiento anterior o regresar al menQ princi- pal. En caso de seleccionar el COA, en el menú siguiente se dan dos opciones para el modo de operación que tendrá este dispositivo, esto es, unipolar o bipolar. Esto sirve para determinar cuáles constantes y f6rmulas utilizar. Se procede entonces a producir la salida anal6gica para los ajustes a cero y de ganancia en esta interfaz. cuando el menú de operación normal es elegido, entran en funcio- miento las rutinas para activar entradas y salidas digitales e interrupciones por hardware, son inicializados arreglos y se pro- cede a capturar datos del CAD y a enviar voltajes al exterior con la programación de la interfaz de CDA. 129 ltO llQJRA 1.2.1 lllGJIAM 11 J1l!JO QUI llJISIRA LI ISlllJC!URA GD«]>¡\L 11 LI PllOGJ!IMCIOll lJO Si as1 se desea, los Timer's también pueden operar en el modo que más convenga. Las rutinas de video programan al controlador MC6845 mediante funciones que brinda el lenguaje de programación e, para desplegar la informaci6n en pantalla del proceso que está llevándose a cabo. Podrá finalizarse la ejecución del programa volviendo al sis- tema operativo, presionando una tecla escogida. A continuación se da una breve descripción de las rutinas, arre- glos y estructuras utilizados para la programación básica. RUTINAS, ARREGLOS Y ESTRUCTURAS DE LA PROGRAMACION BASICA Struct pia *p_pia - Estructura para los registros de las pias struct. byte y Wlion ent,sal struct bytes y Wlion timvar - Uni6n de la estructura de campos de bit y las variables para ent. y sal. de las pias, - Uni6n de la estructura para los bytes del re- gistro contador del PTM. struct timer *p_timer - Estructura para los registros del PTM struct sensor •p_sensor - Estructura de las varables para cada canal analógico. canal anal6gico. apunpia() - Inicializa los apuntadores de cada registro de las pias. inlpia() - Inicializa registros de las pias l y 2. lee_pia() - Lee un s6lo bit o todo el byte del registro de datos de las pías l y 2. escrlbe_pla() - Env1a byte al registro de datos de las pias l 6 2. ptm() - Asigna direcciones a los registros del PTM. initimer() - Inicializa modos de operaci6n en el PTM. RPM() - Calcula la frecuencia correspondiente a la velocidad del motor. iniarr() - Limpia todos los arreglos para las variables anal6gicas 131 inibase(} - Inicializa arreglos de los canales analógicos. anainc ( ) - Asigna apuntadores a las var la bles de los canales anachk() analógicos (usa anachk()). analog() - Lee canal analógico. (Utiliza anaent()). anaent() - Llama rutinas para conversión A-D y escalado. leeana() - Indica inicio de conversión, lee dato y lo acondiciona. scale() - Efectua la multiplicación por un escalar de la variable muestreada. salana() - Envia palabra-dato al COA. habilita_int() - Habilita las interrupciones a utilizar y cambia vectores de interrupción. interrupt atiende_int() - Rutina de atención para interrupciones (llama subrutinas particulares). atiende_cal_pial() - Atiende interrupción provocada por la linea de control CAl, pial. atiende_cbl_pial() - Atiende interrupción provocada por la linea de control CBl, pial. atiende_ca2_pial() - Atiende interrupción provocada por la linea de control CA2, pial. atiende_cb2_pial() - Atiende interrupción provocada por la linea de control CB2, pial. atiende_cal_pia2() - Atiende interrupción provocada por la linea de control CAl, pia2. atiende_cbl_pia2() - Atiende interrupción provocada por la linea de control CBl, pia2. atiende_ca2_pia2() - Atiende interrupción provocada por la linea de control CA2, pia2. atiende_cb2_pia2() - Atiende interrupción provocada por la linea de control cn2, pia2. atiende _timl() - Atiende interrupción provocada por el timerl. atiende _tim2() - Atiende interrupción provocada por el timer2. atiende_tim3() - Atiende interrupción provocada por el timer3. panini() - Despliega pantalla inicial (permanente). inl_notas() - Despliega recuadro destinado a mensajes casuales. lmpanal() - Imprime los par~metros analógicos (hace uso de imprime() imprime() y formato<>). anota() - Pequeña rutina para despliegue de mensajes. 132 •nota<> - Arreglo que contiene todos los mensajes para despliegue casual. imp_ent._sal ( ) - Imprime valores de los paré.metros de entrada y salida (utiliza el arreglo formato<>). imp_ptm(} - Imprime los valores de los paré.metros de contabiliza- ción y temporizado por timer (usa formato<>). *formato<> - Arreglo que contiene los diversas formatos para impresión en pantalla. menu_video(} - Es la rutina encargada de presentar el men~ princi- pal en la pantalla. cal_amp( l Direcciona el 1 er permitiendo efectuar trumentaci6n. canal de la interfaz de CAD, la calibración del amp. de ins- cal_cad.rnax() - MueStra en pantalla el procedimiento de ajuste de ganancia de el CAD y manda etectuar conversiones en el canal No. 1 de esta interfaz. cal_cadn>in() - Muestra en pantalla el procedimiento de ajuste a cero del CAD y manda ~fectuar conversiones en el canal No. 1 de esta interfaz. menu_cda() - Presenta en video el men~ para calibración del COA. cal_cda() - Efect6a los procedimientos de calibración para el COA, dependiendo del modo de operaci6n configurado. Para una mejor explicación del programa, los siguientes dia- gramas de flujo corresponden a la programación de cada una de las interfaces o para la presentación en pantalla de algún menú espe- c1f ico. RUTINAS PARA ENTRADAS DIGITALES Las rutinas apunpia( l e inipia( l son ejecutadas solamente una vez y se hace de hecho, previamente a todas las demás funciones de entrada y salida. Un pequeño bloque de programa llamado lee_pia() es el encargado de programar los puertos de entrada digital. su argumento especi- 133 Lll llli DI 1111 naJl!I 1.l.l 111111Jl'IA ll IUIJO IAJ!I OO!A"1S llG!llU:S 134 IS¡¡m ll!ICCIOl>l C. RIGISIRO IE COft!ROLll ~J!lil~: fl puede expanderse en dimensión para almace- nar un mayor n'Ci.mero de muestras y hacer su promediaci6n. Algunas de las rutinas involucradas deberán ser modificadas ligeramente para tomar las muestras por canal deseadas y presentar la lectura en pantalla. RUTINA PARA SAL¡DA AJIALOGICA La programaci6n de la interfaz para la conversi6n digital a anal6gica es realizada por la rutina salana(). Recibe como argumentos el voltaje de salida, el modo en que se ha configurado la interfaz y el apuntador a la direcci6n de la pia2. El procedimiento es el siguiente: se determina qué f6rmula usar (sugeridas en el capitulo 6), dependiendo del modo, son acondicionados los dos bytes de salida (s6lo se utilizan 12 bits) y son enviados consecutivamente a los candados que alimentan la entrada de datos del COA. Además, aqui se imprime en pantalla el voltaje o valor del parámetro correspondiente que está siendo cam- biado. 138 RUTINAS DE ATENCION A INTERRUPCION Para que cualquier dispositivo pueda emitir una interrupción, es preciso habilitarlas escribiendo apropiadamente en su registro de control. La rutina encargada de esta tarea es habilita_int(). Además de ello, cambia los vectores de interrupción y habilita IRQ3 en el controlador de inter.rupciones. La rutina "interrupt. at.iende_int( )" tiene su comienzo en la dirección apuntada por el nuevo vector de interrupción para la 11nea IRQJ. All1 se procede a leer los registros de estado y de control para los dispositivos programables para determinar cuál de ellos interrumpió y poder turnar a la rutina encargada de la aten- ción espec1fi,ca y es emitido el comando de fin de interrupción. Estas rutinas de atención espec1f ica a interrupción borran las banderas de interrupción a los registros debidos y efectúan un procedimiento que fué programado de acuerdo a como la situación lo demandó. 139 1111111 1,1.1 lllGllM 11 IUJJO Kit IC!lVU SILllA IJl\LOGICI 140 11100[ IK!lllll'CIOM 11 Wlltllll 111001 IK!lllll'CIOM 11 Cll llt llll 111001 IKTIDJJPCIOM 1t llMDll 111001 IK!lllll'CIOM 11 llMDll Jllllll l.l.I 111@111111111.10 l'tll llDICIOM ll IK!Dilll'CIOM IOl lllll RUTINAS PARA DESPLIEGUE DE INFORMACION EN PANTALLA Existe un procedimiento en el modo de operación normal para presentar los carácteres permanentes en pantalla, es decir, que no serán cambiados. Este es ejecutado por panini(). Al llamar ini_notas(), se imprime el complemento del esqueleto de la pantalla, destinándolo a la presentaci6n de avisos casuales que la rutina anota() será capaz de enviar. La caracter1stica de anota() es que puede indicársele el color del texto con que se desea imprimir en pantalla, inclusive en texto centelleante (como se hace para anunciar error en el CAD). Las subrutinas para impresi6n en pantalla de los parámetros capturados o enviados al exterior son impanal (); para entradas anal6gicas, imp_ptm()¡ para variables del PTM e imp_ent_sal()¡ pa- ra todos los bite de entrada y salida. En todos los casos es especificado un formato de impresi6n, seleccionado del arreglo *formato<>. También se tiene otra rutina que está dedicada a la presenta- ción de las pantallas que contienen las instrucciones a seguir, utilizadas en el modo de calibración. En ésta, adem!s se hacen llamadas a analog() y salana() para operar directamente los puertos de las interfaces para la converi;i6n anal6gica a digital y conversión digital a analógica, respectivamente. Las figuras res- tantes en este capitulo muestran los distintos letreros presenta- dos en la pantalla cuando se hace una llamada a las rutinas rnenu_video(), ini_notas() y panini(). Debido a que el programa creci6 progresivamente y el tiempo de compilación se agrandó también, fué necesario hacer una división del programa general en tres archivos separados, pero vinculando 1ntimamente las variables utilizadas por medio de declaraciones de tipo "extern". De esta manera cualquier programa pudo ser compilado aparte, proporcionando como ventajas la reducción del tiempo de compila- ción cuando sólo se hicieron modificaciones en un archivo. 141 RUTINA PRINCIPAL El procedimiento de la rutina principal tiene las siguientes funciones principales: a) Inicializa variables. b) Llama a las rutinas para inicializar los registros de las PIAS y el PTM. e) Invoca la rutina para la presentaci6n del menú general. d) Si as1 se ha elegido, presenta el esqueleto de la pantalla para modo de operaci6n normal. e) Presenta en video el Area correspondiente a notas casuales. f) Inicia arreglos para canales anal6gicos. g) Prepara el timer No. 1 para modo de operaci6n continuo con la frecuencia base. h) Env1a informaci6n al puerto de salida digital. 1) Habilita interrupciones. j) Manda efectuar el muestreo anal6gico. k) Manda hacer la conversi6n digital a anal6gica. 1) Calcula la velocidad del motor y programa la frecuencia en el timer No. 2. 142 f.IENUS DE PANTALLA 143 ESTE PROGRAMA TIENE UNICA- MENTE DOS MODOS DE OPERACION PARA EL CONTROL DEL HARDWARE. UTILICE LAS TECLAS CON LA LETRA INDICADA DE LAS DOS OPCIONES SIGUIENTES PARA SU SELECCION. j ~ALIBRACION l ! OPERACION llJORMAL 1 PRESENTACION EN PANTALLA DE EL MENU PRINCIPAL 14 4 - ESTE PROGRAMA TIENE UNILA- MENTE DOS MODOS DE OPERACIÓN PARÁ EL CONTROL DEL HARDAARE, UTILICE LAS TELLAS CON LA - LETRA INDICADA DE LAS DOS OPCIONES SIGUIENTES PARA SU SELECCIÓN, MACACO Cam] [COM PRESENTACIÓN EN PANTALLA DE EL MENU PRINCIPÁL ¡SELECCION DEL MODO DE CALIBRACION) 145 i .~---------~ 1 1 i 1 1 1 1 ¡ i 1 TE RAMA I E ICA- j ¡ ENTE S DOS E RACION i i A TROL L RDNARE. 1 TI I E S CLAS N A NDICAD E S S I NES I I TES A L CION. i iALIBRA I N i I Ail I Dll TACION TA LA E L ENU I CIPAL 1 CI N EL ODO E LI RACIONl 5 1 ¡ 1 CALIBRACION CAD 1-Aplic:ar u11 voltaje de 0 mV en la entrad~ del c:anal #1 y. ajustar el potenciometro Pl para medir ~mV a la en- trada del convertidor, 2._Aplic:ar un voltáje para escala ma:dma y ajustar el pote11c:iometro P2 hasta me.;.. dir el valor amplificado c:orrespondiente a la en- trada del convertidor, Presionar una tecla cuando desee c:onti11uar con este proc:edimiemto. fF:E:El1T,;,c iC.!1 [1E LAS lt.JSTFiuCC IONEE E~1 PMNTALLt, r,;ñ:,; LM CHLiéñMClO~ DEL ~MPLIFICAüüfi DIFERENCIAL tC~~l, 146 1 AJUSTE DE ESCALA PLENA Aplicar u11 voltaje corres- pondiente . a escala ma:dma menos 1/2. bit. me11os signifi- cativo y ajustar el poten- ciometro P~. hasta que . el valor encerrado en el cuadro oscile e11tre 4094 y 4095. - Presionar una tecla cuando desee ccmti\1uar co11 este procedimiento , 1 ¡ ~-------------------' PRESENTACION EN PANTALLA DE LAS INSTRUCCIONES PARA EL AJUSTE :iE ESCALA PLENA EN EL CONVERTIDOR ANALOGICO A DIGITAL 147 AJUSTE A CERO Aplicar un voltaje corres- por1diente a escala c:ero mas 1/2 bit menos significativo y ajustar el poter1ciometro P4 hasta · que el .. valor ence- rrado ei1 el cuadro oscile · entt'~e cero y uno • .... Presionar la tecla 1 si desea volver a realizar el procedimiento de calibra- cion qe- el CAQ o cualquier otra tecla para regresar j al rnenu principal , I PRESENT<>CION EN PANTALLA DE LAS INSTRUCCIONES PARA EL AJUSTE DE ESCALA CERO EN EL CONVERTIDOR ANALOGICD '> DIGITAL 148 CALIERACION DE EL COA Una vez configurada la tarjeta, indique presionando la tecla - 1 , si el modo de salida debe ser unipolar , o bien,· presione la tecla 1 si el modo de salida tendra 1 1 que ser bipolar. PRESEIHACION EN PANTALLA DEL MENU PARA CALIBRACION DE EL CONVERTIDOR DIGIH>L A ANALOG!CO 149 CALIBRACION DE EL CDA AJUSTE DE GANANCIA MODO l:lNIPOLF:IR Ajustar'·· de ser r:iece:sario, el-. potenciDmetro P6_ de la t~.r je~:a hasta lograr obtei1er U\ia .lec: tura- lo mas. pr~dm• a 1 9995_ milivolts e.n l~ _salida 1 de el co.nvert ic:lor . 1 1 l Presionar cualquier tecla despues de realizar la opera- cioi-1 correctamente para vol- ver al menu principal, P<;ESENTACION CE LAS INSTRUCCIONES EN PANTALLA PARA EL AJUSTE DE GANANCIA EN HODO UN!POLAR DE EL COINERo!DOR DlG!TC.L A A>JALOGICO 150 1 1 1 1 1 CALIBRACION DE EL CDA AJUSTE DE GANANCIA MODO B !POLAR Ajustar, de ser necesario, e 1 poteliC iometro P6 de la tarjeta hasta lograr obtei¡er una lec:tura lo mas prolüma a -9995 milivolts e\i la salida de el c:onvert idor . Presionar ,cualquier tecla despues de realizar la opera- cion correctamente para vol- ver al menu principal, PRESENT,O.C:ION DE LAS ltJSTRUCCIDNES EN PANTALLA PARA EL AJUSTE CE G«NAl; utern char •note(]; struc:t pi1( int rddm,rc•,rdtb,tcb;>; typtdef struct pi• •p_ple; struct ple ple1,pl•2; stru:t byte< fnt bltO : 1 fnt blt1 ' 1 fnt blt2 : 1 int blt3 : 1 lnt blt4 : 1 lnt blt5 : 1 lnt blt6 : 1 lnt blt7 : 1 ); ,. ,. ,. ,. ,. ,. ,. ,. ,. SALIDA T. VENT. POS, T, O POS. TAMB. T. CABZA. PARO llE"TO. PARO DE ACiUJA FALTA OE ACEITE FALTA DE 0 AJRE 155 ENTRJ.DA •¡ •¡ •¡ ., ., ., •¡ •¡ •¡ struct byte bit; dent, sal; struct handí int bito e cal, pial y PTMI “ int b1t4 pd ca2, plal y PIMZ * bmt bita 3 dj /e ebi, plal y PIN * int bit3 Pó cb2, pial . int bitá : fe cat, pial . int bit5 2 dp 7 ca, pial “ int bitó Pd cb1, pia2 e int bit7 Je cb2, plal */ Y union bandsí unsigned char ch; struct byte bit; Jinterr_pis, Ínterr_ptm; union € unsigned int nm; struet € unsigned pb:B; unsigned pa:B; Y bytes; 3 timvar; struct timer unsigned int regctri; unsigned int regetdor; float valing,vaiing2;); typedef struct timer *p_timer; struct timer timl,tim2,tim3; struct sensorí Ínt suma_ana (10); Long conv; dable kcte; unsigned char canal; int raw_val; ftoat valing; d; typedef struct sensor *p_sensor; struct sensor canslO, canati, canat2, canal3; struct sensor canalo, cansl5, canató,- comal?; void inipiat); void initimert); void salanal); void paninit); void imprime (); void trpanat); void ini_notas(); woid enota(); 156 \nlon bits< uu;gnfld ch•r ch; St~t byte it; )ent,sal; struc.t bandC lnt bito : 1¡ /• l t lt1 : 1¡ ¡• int bltZ : t; /• i t itl : 1; ¡• lnt bltl, : 1; ,. lnt bit'.\ : 1; ¡• lnt lt6 : 1; /• l t lt7 : 1; ¡• >; uni on bands ( U"lll;ried •r ; stMJCt yte it; )l t rr_pi•, i t rr_ t11; ii n C U'\Sl;ned l t : tr ct e 1.nSl¡ <:t b:a; lllSl;n«i a:8; ) ytu; ) tl v•r; stt et t!lr~rc t. Sl rwd l t r -;ctrl; \l\Slgned' lnt r~tdor; tl at •ll a,nltn Z;>; t edef tr ct l•r • _ti•r; •tNJCt l•r l•1,thW. 0 th'3; ur ct sensor( int SUll9_4f\1(10}; long c:cnv; oo.ble cu; \J'\llVned ll" :an.l; t t r v_v.l; ft at valini;; ); t edef str :t s sor • sensor; cat, pla1 y PT \ caZ, l Z Y f 2. cb1, pta1 y PTM3 c 2., lat ., c•1, plaZ ., caz, plaZ ., cbt, plaZ ., c 2, hZ ., str r:t SMSor .ato, nal1, nalZ, nall; tr ct s sor :an.14, r.tl'.I, an.\6, ar.a\7; vold i i la(); void i itiinerO; void ..alana(}; vold anlnlO; vold l~iine(l; voidl~l(); void int_notas(); void anota(): l. ., ., ., vold lnterrupt (*s)(void); vold interrupt at;fflde_tnt(); vold ir.p_ent_sal(); vold i!ll'_.PUnCJ; , ............................................................ . INICIALIZA. APUNTADOR.ES PARA LOS REGISTROS OE LAS Pl.lS * .................... ,, ........................................ , apcr¡pfa(eúi, ca,'*>, cb,p) lnt da,ca,d:>,cb; p_ph Pi ( p•>rdda • da; p·>rc11 • ca; p-ncldb • db; p·>rcb • cb; , ..............................•................... 1NICIALIU LOS REGISTROS OE U.S P1AS 1 T 2 • .................................................. , vold lnlplaCp,q) p_pla p; p_pla q; e U"ISi;ned char dato • O; outportb(p·>re1,dato); outportbCp->rcb, dato); outportbCq·>rca, dato>; outportbCq •>rcb, dato>; outportbCp·>ró:b,dato>: /* pone todas E en rdcll, plat •t dato• Ode; outportbCq·>rdda,dato); /* especfflca E·S en rdda, pla2 */ dato • 011.0f; /* especifica E-S en rclda, pla1 •/ outportbCp·>rdda ,dato>; dato= O"'ff; /* especifica sal en rddb, pla2 •/ dato • Oi;04; t• dlrecdona reg, de datos */ outportb(p·>rca,Oxd); t• y habHlta lnter~lones*/ outportb(p-> rcb, Oxd); outportb(q· >rca,dato); outportb(q·>rcb, Q,11;05); 157 ,. ..... ·-·····-······························.······ • LEE lltfOl\AACIOtl: OEl PUERTO DE ENTUOA (PU2) .........................•.......................... , h•_phtdlglto, 1.n1l;rwd ch . r dlglto: ( p_ph p; struct b{ int btO : 1; lnt btl : 1; int bt2 : 1; lnt btl : 1; lnt bt.C. : 1; lnt btS : 1; lnt bt6 : 1; int bt7 : t; >: \l\lon bu { l.l"'IS\;ned char d.no; struct b bt; }cC)llJ; p. lpla2; c~.d.lto • l~rtbrtd:>); /• hace \eetura del p.Jerto •¡ swhch(di;ito)( t• stl~clCINI bit•¡ usa O: ent.blt.bltO • cc.p.bt.btO; br .. k; , ... h tnt.blt.blt1 • COl!f:l,bt.bt1; , ... 2: ent.blt.blt2 • c~.bt.bt2; brt1k; uul: ent.blt.bltl • c~.bt.btl; break; case 4: rnt.blt.bit4 • c~.bt,bt4; break; CaH S: ent.blt.bltS • c~.bt.bt5; bruli:; case 6: rnt.bU,blt6" cc-.:i.bt.bt6; brtak; UH 7: ent.bit.blt7 • c~.bt.bt7; buak; t• si no se c~len los cuos se retorna •¡ ¡• e\ byte ccq>leto, •¡ default : 158 1··-·---·-········-··· ..... ·········--·· • EllVIA UlfORMACJOlf AL PUElTO DE SALIDA • ···············--··-·-··-··············••¡ ncrlbe_pl•(dlto) tr1Sl;necl ch11r dato; < p_pf• p; p. &pfa2; outportb(p·>rc:lcl>,dlto); , ............................... ·-·····-· .. ···· • ASIGKA OIRECCIClf A LOS REGllTIOS DEL POI • --·················-···-·····-·----, pt-C:rc,ctdor,p) 1111lgned int rc,ctdor; p_tl•r p; < p·>regctrl • re; p·>rqctdor • ctdor; p->v.l lng • 275; p->wl fng2 • O; ,--·······-··········-·····-········---··· JlllCIALIZA ICIDOS DE OPflACIOlf DE LOS TUElS * ................................................... , vofd lnlti•r ll'ISl¡ntd char tl•,datctrl,ctrl2; p_tl•r p; < 1.n9f¡ned char sal,t9111pOral; tNpOral • tf ... ar.bytu.pb; tf..,ar.bytes.pb • tfmyu·.bytH-Pli 1• lntercari:lla bytes •¡ tf9'W'ar.bytH.PI • tmplral; lf< 1• tla~o. P1r• tl•r1 •¡ ul • ctrl2 & OJ.fe; /* tf•l, per• tf•rl •¡ outportb(Oxl11,sal>;) 1• dlreccfon11 rRSJ, ctrl. tl.Z •¡ •In C sal • ctrl2 1 0•01; outportb(OAJ11,ul );) outport(p·>rit;ctdor,tiwu.n); 1• e-scribe al r~. contador•¡ outportb(p->n;ctrl,datctrl>; 1• deflrw mdo ltf'I tlner •/ 159 , .................................................... . CALC\.lt..A LA VELOCIDAD DEL .-OlOA: Ell RPM ..................................................... , RYM(p) p_sen.sor p; flcat v; p_tl111tr q; q .. 'tilll2; lf (q•>vat ln;Z n 1.03 • p-,val IN JI q·,.yalfn;Z <• 0,97 • p•>Yaling) ¡• en caso de eshr fuera del l'l •¡ v • (intlp->v1l ing; ff(v ca 100) { v • t00;/ 1 econdidcna para*/ 1nou(4,11,BU.C1C); ¡•no dlv, x cero•/ else anot1(4 112,BLACx:J; /•calcula \lllor de M en tbier2:•/ thav1r.n • ; q•>valfn; • 109234/(tllll'lar.n ·• 11; ¡• rpa's */ lni t liner(& t f 112. O, cont lruo2, cent iruo2l; q·>v1lin;2 • p-,vallng; ¡• actualh.a */ , ...............................•............•.......• INICIA.LIZA A.JlRECLOS DE LOS CANALES .uA.lOGJCOS • ......••..............................•.............. , lnlbase() ( int j; anal ne(); lnlarr(kanalO); lntarr(&canat U; iniarr(kan.al2>; iniarr(lcanal3)¡ inlarr<&caN1\4l; lnlarr(&caN1l5l; fntarre&car.at6>; lnlarr(lc.,..t7>: for ( lee11r.a<&cana 1 O, &pi at, &pi a2, j); leHNl(&caoal 1, &pi11,&pia2,J>; 1eeana(lcanal2,&pl at ,lpl a2, J); teuna(&can.al3 1&pi at, &pi aZ, j); l ttana(&cana\4 ,&pi a t, &pi al,]); \t>eanac&caNl5, &pla1, &pla2, Jl; lee.nat&caNl6,&pl 11,&pf a2, j ); leeana(lc•Nl 7,&pfat ,&pf112, J >; 160 1·-·····-········-·-·· .... ··········-·------- • lJIFIA AJllEGlOS DE LAS VARIABLES WLOGICAS • .......... .._. ....... _ .......... -.................... , lnlarrCp) p_s.ensor p; { fnt J; for CJ•O;J<10¡ jtt )( P"">conv-0; p->Mam_..-iatjJs.O; } , .............. ··············-··-··--.... -·-·····---·· • ASIGMA APUITAOOIES A LAS YAAIABLES DE LOS CIJU.LES DEL CAD • UTILIZA WCHK(} ·-·"··~·· .. ·~·~··"·-- .. ··-·--····--·····-······••¡ .-.afnc() { 11Nchk(Cuwl;ned ctiar)O,Cdoable>2.441,kwi.l0); #\aehk((\rlllf;ned cMr)1,(cb.ble)2.441,&c.lel 1); mnadtt((U"l91gr-1 cMr>2,(dcUlle)2.441,k-l2>; 8NChll:((U"19fgned char)l, Ccb.ble)2.441,kanll3): wwchk((U"19lgned char)4,(cb.ble)2.441,&c.,.l4); .-.cfrlk((wwfgned ct..1")5,(cb.ble)2.441,&c-l5>: 11Mdik((U"l9fgned char)6,(cb.ble)2,441,k.,...l6); anectak((U"l9fgned r:Mr>7.Ccb.ble)2.441,&c..l7); INChk(can,k,p> Lnalll"tfd char can; dol.bl• k; p_1ensor p; { p->c.-.l•can: p·>kcte•k; 161 , ............................. . • LEE WAl AUlOGICO ........................... , analot(aNlndl lnt M\aind; ( ~ent(kanalO,..,..lrd>; ¡• ar-.atnt(kanal 1,at'\lilncn: W\ltnt (¡e: anal 2, ana i rd); .-..ent(¡c.,.,.13,.,,.lnd>; at11ient; anunt(Lc.,.,.15,an.lrdJ; .,...ent(,cW111l6,anal nd); aNllent(,cana\7,.,,.lrd>; •¡ r• ... •••••••••••••••••••••·-··---·········-··•••••• • llAKA RUTIWAS P.UA CCWVElSlC* A/D 't' ESCALAOO • .................................................... , ll"~et'lt(p,hid) p_•en&« p; lnt lrd; ( lff..,.(p,lpla\ ,,pla2, lndl; stall(p); , .................................................................. . UDICA llllCIO DE. CtJN!l.SIClll, LU DATO 't' LO ilC:alllOICIOllA • ................................................................ , ltUl''lt(p,q,r,I~) p_unsor p; PJll• q; pJli• r; lnt trd; ( \l'lllQnld char c.-.l,tl•r: U'lon( i.natgrl!Kt lnt corw; nruct( U"l5ign.rd lsb:B: )bytet; }COf'J'o'rrt; 162 whiteltinportbír->rdade) L 0x01)1:0) /* verifica fin de */ € Mttimer > 50) € 4* conversion Y error = 4; amota(11,0,BLINKING); bresk; 1% termina en caso *“/ Y Je de tatio y else timerts; > eutportb(q->rada,0x10); /*repone bit de inic. de corw.*/ convert.bytes.lsb » inportbíq->rdds); /*lee 6 Uns*/ corvert.bytes.wb = importbiq»>»rddb); /*lee 6 BMS*/ convert.conv z temp » convert.come >> 6; /*une los dos*/ pocony = p->cony - p->sums_ans [ind]; /*bytes Pooconv » p->cony + temp; posunms_sealind) ». temp; paras val += p->comv/10; * MULTIPLICA POR UN ESCALAR LA VARIABLE MUESTREADA — * e... 1 scaletp) P_sensor p; t povating < p->raw_val * p->kcte; pernnnamaconncanacanereracananesas * ENVIA PALABRA-DATO AL CDA * IRUPanrrR rro rr rr rro ca nero roy void satana(vsal, modo, p) int vial; unsigned char modo; pta p; t char dato; untoní int q; structí uigned pb:B; usigred paz; dea; duvor; F% modo=0 si unipolar */ 4f (moda) /* eodozl si bipolar */ uvar.d = (2043 -(intivasl / 4.8823)) << 2; else uvar.d a(int)(0.4096 * vsal) «e 2; dato = uvar.sat.po; outportbíp->rdda, dato); ¿/* envia 6 55 */ dato = luvsr.sal.pa << 2) [ 0x02; putportbip->rdde dato): /* envia 6 8u5 */ 163 * unal • p-l'c«Wl¡ c•nal • (c.,...l ce 1) 1 o,.O\; outportb(q-l'rdd9,can.l); /•inicia converslon'"/ tor(tlinrr•0;t1Nr<10;tl.e,._); rtlet:l>O de Cal1)tnsacion•¡ \11.lh((l~rtbtr->rddal l 11.0111•0) • " rlflca fin~•¡ < l tl•r ,_ 0) { ¡• verslon •¡ rror• 1; n 1(11.0,ILllO::::ING); bree\; t• ,..l i u •¡ } /* e f l\ •¡ lu l er++; ,, o t ort {q•>rctda,010); e Nr. lt e l lc. e nv.•/ Canvtrt.bytH.l~. rt corw • ·l'COIW p·>s~_.anaUnd); ytes •/ p-l'COl'W • conv t~; •>SUllll_at\I (ln:f) • t~; ¡:·>rav_"•l • · onv/10; ,......................................................... . • J\.Tl I A R lM R. .UI LE QSTI M • . ......................................•.............. , nler d.a,dato); ¡• fW\a S.S •¡ ato • hr ar.sat.pe e > j ,.02; °""'tportb(p·>r da,datol: ¡• fft'th B"IS •¡ 3 . ! A VECTOR GE INTERRUPCION PARA 1RO3 ” ramooensooy habítita_intO) Xt mase = inportb(Cx21); 5 5 getvect(Ox0b); /*salva vector de interrupcion anterior*t/ outpertb(0x21,masc | 0x08); /* deshabilita 1RR3*/ setvectílxCb,atiende_int); /* asigna nuevo weztor de interrupción */ outportb(O0x24,masc £ Oxf7); /* habilita interrupciones */ snata(13,5, BLACK); £* para IRIS ./ / enmve * RUTINA GENERAL DE ATENCION PARA INTERRUPCIONES — * FIA AAA NINE Anar A rar O racer te void fnterrupt atiende_int(O) C pote par p_timer 12; unsigned char banders1?,banderas2; outpcrtb(0x21,0xff); /* deshabilita IT'S */ Pp = Apia; q = bpial; t2 = ¿tin2; banderas? = inportb(q->rch); it(banderes2 £ 0r80) atíende_cbt_pia2(bpia2); ¿7% ¡iftbanderas? 1 0x40) atiende_cb2_ploztipinz); */ banderas! = inportb(p->rca); 3f(banderas? 1 0x80) atiende_cal_pis1(ipiat); banderas2 «+ inportb(p->rcb); 3f(banderas2 L 0x50) atiende_cbl_pial(£piat); If(banderas2 £ 0x60) atiende_ct2_piat(£pia1); ifcbanderast £ 0460) atiende_ca2 pist(dpial); f* banderas? = inportbiq->rc8); ifíbanderas1 A 0180) atiende_cal_pia2(£piaz); Ifebanderas1 4 0x60) atiende_cal_pla2t£pia2); banderas2 = incortb(t2->»regctri); if(banderes2 E 0x80); elset ifchanderas2 4 0401) atiende_timi(Atimi); ifíbanderas? A 0x02) atiende_trim2(ttim2); ifíbanderas2 A 0x04) atiende_timB(ktim3); ) outportb(0x21,masc E 0xf7)5 /* habitita 31RC3 */ outportb(0x20,0120); J% pone comando E0] especi- "/ £* fico para [Ra3 t/ 164 1•·························•••*•••••••*••******•**•**•••*••••* CAMí!U. ~'ECTOll OE lWTEl!RUPCI~ PA.li.~ ma ......................................................................., abílita_intO llUSC • i~rtb{0x21); s ., ¡ v { xOb); u a 2'Ctor e cion terior•/ t crtbCO 1,l!'.asc ¡O ea>;/• shabilita ;¡;3•¡ sct teOxOb,1tler-de_int}; / uig .a evo ' 'e:;tor e l t rr p:ion •¡ outportbC0x21,~.uc 1 0.lf7); / &bllltl i te:rn.4)Ciooes •¡ anou(13, ,BL C()¡ ¡• ara ::l3 •/ , ........................................................ . TI A ENEUL E MCION .u lliTE P IQli/ES ...................................................... , 'w'oid lnter~t 1tl de_int() ( p_pl• p,q; _tlmr t ; i.nslpned 1r &nderaa1,banderu2; t crt C0•21,0.df}; ¡•de abilita Jt~T's •¡ • 1 l 1; q • 1pla2; . 1t lll2; ndens2 • l~rtbrcb>; if(b tra :2 1 160) •thrde_cb1_ l (&.pl12); ¡• ff(bar eruZ 1 Ox40) 1tfende_cbZ_pl11ZUph2>; •¡ nderast • lr :irt {p->rca); 1 f(twd r s1 OlSO) tien 1_pla1(1pla1>; derasZ • l~rtbrcb); tf( dl'ru2 1 OxBO) tfen 1_pla1(&pla1); !f( rderuZ 1 Ox40) 1tien:l bZ_pia1Clpia1>; l ( arárast 1 A4ü) tf e_c12_pia1(1pia1); / ~rat1 • l~rtbrcal; l l nderut & a .. so> .11tltt!Ól!_c11_pia2Uiila2>; lf( r eras1 1 .1.40) tirnd 2_pfa2(1pla2}; .anderu2 • lro rt Ct2·>regctrl>; l r tras2 1 .1.80); l { !f(ban::kras2 l 0.1.01) 1tler e ti•t{lti111); ( dtras2 1 Ox02J • iend flll 1 i .>; lf(b eras2 1 Ox04) tle-nde_timJ(ltil'\l); ,., t rt (Oa21, asc 1 Oxt7); ¡• abit ita U •¡ outportb{OlZ0,0l20>: /* ne cnardo OJ .peri- •¡ ¡• i ara n:n */ l. atiende_cat_piat(p) 1% aire desactivado */ pela p; e inportb(p->ráda); — /* borra ROA */ interr_pia.bit.bitO = 0; iio nterr_ple.bit.bitó /* ( interr_pis,cht/)) secuencia 2 3; > atíende_ca?_pial(p) J* arranque del inverter */ ppia p; t importbip->rdda); /* borra 1RCA */ timvar.n » 363; f* inicia vel. del motor e 300 rpm */ inrpa = 0; initimer(£tim2,0, continuoz,contirmuoz); interr_pla.bit.bití = 0; VCC nterr_ple.bit.bit3 ] Interr_pia.ch)) secuencia x 5; else secuencia = 6; interr_pis.ch = Oxtf; > atiende_cb1_pleitp) 1* contactor del ventilador */ ppt ps t inportb(p->rddb); /* barra IRQB */ interr_pls.bit.blt2 = 0; Vatinterr_pin.bit.biró /*] interr_pia.ch*/)) secuencia 2 2; 3 atfende_cb2_pial(p) [*% contactor del motor */ ppia p; t inportb(p->rdb); ¿/* borra 1RQ8 */ interr_pis.bjt.bit3 = 0; it nterr_pia.bit.bitO /*| interr_pis.cht/)) secuencia = h; 3 atiende_cai_pia2(p) pia € inportb(p->rdds); /* borra IRQA */ interr_pia.blt,bitá = 0; 3 atiende_ca2 piaZ(p) p.pia p; t Inportbíp->rdda); /* barra ¡ROA */ intere_pia.bit.bit5 = 0; atiende_cbi_pie2(p) 4* freno del inverter */ Ppia p; e impartbtp->radby; interr_pis,bit.bitó * 0; If(interr_pia.ch 1= Oxbf) secuencia = 1; 165 atl~_ca1_piaHp) ¡• ire u ti o •¡ p_pla p; ( ri ort Cp·>r da); 9 o ra lROA •/ n Jl . it. it ,. O; lf{l(\lnte:rr_ph.blt.bh6 t• 1 l urr fa.ch•/ ) nc ncla,. ; ) lN' aZ_ph1(p} p_pla p; ( hwar.n • 3; ¡• I icia el. el 8l0tar a JCl\I i1 •/ t 1 • O; l lrner('t 11112, O, t lr o2 ,cont 1 nuoZ>; l t rr_ph.blt.bh1 •O; • 'tt r ntactar el r:nti\ador •/ p_pla p; ( t u la,bh.blt2 •O; \f(l(llnurrJ1ia.bU.bh6 t•J \ u la.ch•/ ) cuencia• : ) ltoó cb2_pla\ (p) p.,Pla p; ( lrp ·nd:lli>; t• o ra 11.'lB • t l t rr pla.bit.blt3,. O; f(l(llnurr_pia.blt.bit t•I l pla.cn•/ ) wr.:la • 4; ) atl~_ca1_pla2(p) p_pla p; ( \~rtb(p·>rdda); ¡• o ra J •¡ l u la.blt,blt4 • O; ) atl~_ca2_pla2(p) p_pla p; ( l rt ( - l' da); ¡• a ra l Q •¡ r pla.blt.bltS • O; ) t l~_cb1..J>I a2(p) p_pla p; ( ln or Cp· rddb>; ¡• o el l erter •¡ cr pla,blt.blt6 • O; l in la,ch • o .. f) t uench. \; ) atlfl'Mde_cb2_pla2(p) p_pi• p; { i~rtb(p•:nó±i); /" borr-a IRO~ •¡ fn~~rr_pia.bit.bh7' •O; } ati~_tisi1(p) p_tiNI' p; { i~rt(p·ne-;z(óorJ; ¡• t:<>rra b&.....:se-r• dr tntel'r~lcn. •¡ interr_pUt.bit.bitQ •O; ¡• Mt ti~rlt •1 ) athr~_tl-.lJt,bU\ 11 ; ~i1HO.üca,-0:_.3c;r,ooo •• C1...JOb,1?i•Z>: HH>:if•( !pí l\ ... ~i•Z>; ptl\{C ... l10,0U1l,ltil'l11; ptl!t(0~11,0U14,lti.:2.); pt"-(Cto..l10,0~1ti,Ul.Un 166 - e. . ¡generat */ panini; f* presenta esqueleto de pantalla */ ini_potas(); f* presenta cuadro de notas casuales *f anota(18,1,BLACK); smota(19,2, BLACK); emota(15,4, BLACK); erota(16,6,BLACK); anotalí,12,BLACK); infbaset); /* inicia arregios para canales analógicos */ initimer(btiml,O,contimao, deshab); /*modo en timert(27545)*/ Imp_pta(39,9,formato(1),2tim1); babitíta_fínt(); /* hsbliita interrupciones */ escribe_pis(sal.ch); ¿“envia dato a puerto de salida dig.*/ tmo_ent_sal(67,16, formeto(3),1); imp_ent_sa1(47,17, formeto(3),1); imp_ent_se1(47,18, formato (31,1); Imp_ent_sa1 (47,19, formato(3),1); imp_ent_$81 (47,20, forrato[3),1); inp_ent_sa1 (47,21, formato[31,0); imp_ent_sa1 (47,22, formato[3),0 imp_ent_sel (67,23, formato (31,0 do € analog(j); /* manda efectuar el muestreo analogico */ tepamal(); /* ieprime valores cepturados del CAD */ suitceh (secuencia 3 case dz putehtSELL); amota(9, 13,BLIMX IMG); enota(10,18,BLIAKING); secuencia s 0; case 2: purch(BELL); anota(9,13, BLINXING); anota(t0,16,BLINKIMG); secuencia = 0; break; case 3: putch(BELt); anots(9,13,BLIMXING); arota(10,16,BLINKIMG): secuencia = 0; break; case h: putch(BELL)¿ arota(9,13, BLINCING); arata(10,15, BLINXING); secuencia = 0; break; case $: putchESELL); anote(9, 13, BLIMXIMG); enota(t0, 17, BLINCING); secuencia x 0; drenk; 167 .nu_vidlfo(); /• present• ~ en.nt •¡ pantnlO; t• present• es~leto de antalh •/ lni_root.s()¡ t• presenta cuadro de otu casuales •¡ t ; lnlbas110; ¡e l lci• arreglos par• carialH ana\ogltos •/ lnltiN:rC&tlal,O,contll'IUC),deP\abl; t•rtr.:Jdo en th..erH27SuS)•/ h1p.,Pt•(39,9, fol"'llllltolll, ¡t 1111); habilfta_lntO; t• abl\lt• l t r"'4JClonts •/ ri e_phCsal.ch); /*f'fWh ato erto e: li a lg.•/ flro_ent_ult47, 16, fof'Ntotll, 1); hip_ent_sa\(47, 17, fo,...to[JJ, 1); lq:i ent_sal (47, 18, f rNto t3J, 1); isp_ent_sa\( 7, 19, fonr•totl1, 1); l111p_ent l•l ( 7, 20, f rNt [3 , 1 >; lirp_lff'lt_Ul(47, 21, forMtO [)1,0)¡ i""_l!f1t sal ( 7, 2, fo~to[l) ,O); 9')_ent ul 4 ,23, f rMto [31,0>; o ( analog(j); ¡• ~ efectuar el -stre aMlogico •/ l~I(); ¡• i11$)1"'fr:ie valor.a capturados del CAO •/ SMltch U(t0, 16,ILlllllllG); ucumic1a • O; se 4: p.itch(IU >; anct1(9, 13, JMl!MG); arocsU(10, 15,B 1 tl G1; SKUlf(ICJ. • ; t'u .; ases: .i'chCB L>; anota(9, 13, l1 t! G); ianoU(\0, 17, llillllilG); UCUC1"1Ci1,. ; brHk; puteh(BELL3; - amota(9, 19); anota(10,20,SLINXIMG); secuencia = 0; break; case 0 break; defautt: puteh(GELL); anota(9, 19); anota(10,21,BLINKING); secuencia « 0; , o. e J=0; salanaty_sal,0,8pia2); /* manda hacer */ inpresal (v_sal Je conversion DIA */ 2 else jr; if(Gnrpa >= SC RPR(EcanstO); inepa » 5; 3 else nro; dep_pt(39, 10, formatoi11,4tim2); Uf tq == 30) € anote(9, 19); anota(10,19); q*0; ) else qe; Ye verifica que ro ses presionada */ ióiile (bioskey(1930 /* la tecia ESC . c.l = bioskey(0); df(c.chI0] == CRL £” efectua detension */ puteh(BELL); ¿* tesporal del pro- */ anota( 15,7, BLACK); f* grama ./ sncta(16,5, BLACK); mite (lbioskey( 1); amota(15,1, BLACK); encta(t5,$,BLACK); 3 3 Iehile (c.chlO] tu ESC); rabo oz 1d; r.h.ch =$; r.h.cl e 6; int55(0x10,kr,hr); /* reestablece el modo intetal */ teatmode(LASTMIDE); /* de la pantalia *. servect(0x0b, $); f* retorna vector de interrupción */ elrsertd; f* original a 1903, */ 163 c:ue ~: P-JtCh(BEll); anota(9, 9); t e 10, ,Slllril::IJrHi l; sec~ia•O; ruk; t'u .; efault: tc (i L); anota(9, 9); t ( 10, ,I JllS:lMG); aKU r"Cla • O; ) ff (j ... 9){ J •O; Hl.ll'\&(V_sat.O,&pfa2); ,. - r a acitr ., lt"pYSalCv_sal>; ¡• nverslon / / ) lse ++; l l rps u 5){ .PMC&cr.alO); l r a .. ; ) ltlse ftv"¡:D++; f~_pU.(39, 10, n111to[1J ,&tl-2); ff (Q H 0) ( riott(9. ); ota(10, 19); q., O; ) ¡• erifica ..Je . rufo e .a / while l ey(1)){ t la ese , . I • i i:.ey(O): t (C. {OJ SS ){ r fi -ctua r:tenafon ., / t~ral el ro• •/ / 9r111111 •/ )while {c.c.'l[ J ¡ .. es:>; .t\.ah • ; . h S; M.cl ; .Jtc:h(BE L): .,,,.,UC15,7,6U. 10; ancta{16,!, Sl O:l; lilhile l ie&tey( }); anota(15, 1, LA0:); 9"!0ta(1~,5,Ell.CXl; ) i tSó 0.-.10,&r,&r>; 1• rHstab\l!'c:~ l ~ fr:i:fal / tut~(U.ST.tit:CE>; r e • ~-1:iulla •¡ t :ttC110b,s); r t N1 '<'f'Cter Of' f u eim •¡ clrscrO; f 'Jri¡inal JtQJ. ~, 8 dinelude "dos.ñ9 Finclude "process. h* Sdetine róda_piaj 01309 £defíne SELL 0x07 extern Ínt temp; extern char error; extern struct piel Ánt rada, rea, rddb,reb;); extern struct sensorí int Suna_ans 110]; tong com; doble kcte; unsigned char canal; int res_val; float vaiing; d; extern struct sensor canalO; extern struct pia piat, pis2; extern selana(); extern leesna(); void menu_video(); void cal_empt); [rornonna carro rorapacanerococrararirana . MENU PRINCIPAL . donen noma nena carre rroenceneotas/ void meru_yideot) t int ver; union REGS r; rohah os 17 rab.ch = 32; rabh.cl «32; textmode(C40)7 IntB6(0x10,Lr, Ar); texteolor(BLACK); textbacigroundiMACENTA elrseríd; mindow(2,2,39, 24); texthbaciground(BLUE); elrserí); sirdow(3,3,38,23); textbackground(CYAN); ctrserto; potoxy(S,3); eprinti(” ESTE PROGRAMA TIENE UNICA-")7 gotoxy(5,6); eprinti(“MENTE DOS MODOS DE CFERACION="); sotoxy(5,5); eprintic”PARA EL CONTROL DEL HAROMARE,“); gorary(5,7); 169 t\nclude "ccr.io.n" Mincl~ s.h .. tl l de 'pr ceu. • ;Qefine rd a_ph1 .. 00 f effM Ell 1t07 u.ttrn i t t~; •a nar rror; tern tnx:t la{ i;tern tr ct s sor( l t s1..n11_ana[101: l~ aov; uble tete: t.nsi~ ar na\; l t aw_v•l; at •\ lng; ); u ct sor al ; u m ct h ia1, la2; r..tern u\61'110; extern leer.na(); Y1)1drnenu_vi~(); id cal_~{); , ......................................... I li ll.lll l L ..............•.........................., 'VOid ~-Vi~() ( t ar; r.nlon 11.ECS ; . .ah • ; .h. h • 2; .h l • 32; textllt.:de(C40); lnt66(0.l 10,1r ,Ir>: utcolor(SLA :J:); ttltbacl¡¡roc.rdt)l..l~NT Al; clrscr(}; wlndoM(2, 2,39, 4); u tb.J.ck;rcu\c:HS\. E ); clrscr(); wln:ict.t(3,l,3S,2.3); textbect.;rOU"ld( TAN); ctrscr(); ; t y{S,l); c.prlntf("' E ltOCUM I E tUCA·"'); 5i10tOJ()'(5,4); c rl tf(""4E"tE S l'ICCIOS OE OFElt.t.CION•); ; t • {S,SJ; c lntf("PA.11.A L cal Ol L AOl.IAAE.•>; !i:lt.n.ytS,7); cprintf(• UTl1.ICE U.S TEClAS COll U.•); toto.r.y(S,!); cpdntf('"LETIA JMtHCADI. DE LAS DOS•); ¡oto1y(5,9); cprfntf("CFC!Oli.ES SH'iUtEMTES PA.a.A su•1; gotoxy(S,10); cprlnt f ( "SELECC ION.•); tutbKt.grouidCMGE'fTA); goto.iy(17, 13); cpri"tf(• Cf'EAACIOlil 11 ); ;otciry(l9, 13); cprl"tf(""ORMAL •); gctc.1ycS, 1J>; cpdntf(•AlJIR.ACIOlril •]; textcotorcwJTE>; totGXy(25, 13); cprlntf(•JI•); potoxy(l, 13); cpdntf(• e•>; do{ Yaf*SJetCh(); )i.i!He(war I• •e• ¡,¡ Yar 1.- •e• U ver !• •n• "var I• 'N'); ff(Yar •• .,, 11 nr •• 'C')( tutboc:k;rcu'd(C1'AJO; DOto.ly(17, 13): clreol(); tutbac:t;ro.n::t(IU.CE.NTA); goto.r.y(16, 15>; cprintf("O •); Qatory(23, 15); c:prlntf('"A "); tutcolor(ILAO:>: ;oto..y(13,t5>; cprlnttc• CA">; eotcxy(20, 15>; cpdntf(• en•>; ver• getchO; turti.d:¡rOl.rd(Cl.U.:J; r lt•.a rutin.u p&ra calibncion t¡ clucro; t• de la l"terhz de tArl "/ lf(war *" 'd'll var n '0'){ e\H Mf'U_cd.a(J: l c.l_aap(); cal_cacnu(); cat_c..:alnC)¡ ¡• tt- Ntina para callbracion •1 1• de la Interfaz de O>. •t 170 , ........•...•................•.................. • PRESE'ltTA PANTALLA PARA. CALIBUClCJI DE EL • • AMPLIFICADOR OIFEREWCIAL (CAD) • ............•................................... , tutcotor(lED>; Vot0Jly(5,3>: cprlntf(• CALJBRACJCil CAD •>: t~tcolor{SLACK>: fOtGXY(4,5); cprlr.tf(•1-Apltcar 1.r1 voltaje de O.,..>: IJOtOAy(4,6); cprlntf(• en l• entr9dt del canal 11'"); 9otoJ1y(4, 7>: cprlntf(• y •JU1tar el potef"oC\~tro•); ;oto .. y(4,8}; cprintf(• P1 pan lll!'dlr r.; ;otoxy(4,11)¡ cprintf("2-Apllcar 1.1'1 volt•Je ~r••); goto ... y(4, 12); cprlntf(• ncala MJ.i• y a]U1Ur al•); ;otoq(4, 13}; cprlntf(• pour1Ci01111ttro P2 hHt• •·•>: cprlntf(• dlr el valor """Uflctdo•); VOtOlly(4• \5)¡ cprlntf(• corrupordlenu a la en·•>; QOto•y(4, 161; cprlntf(• trad.a del convertidor. •); tutcalar(KAGENTA); goto .. y(6, 18); cpdntf(•Preslcnar !1'111 uc.ta cuardo•); gotolly{6, \9); cprintft*destt continuar con Hte•); !l; outportbCtddl_pi a I, O>; ~tch(); clrscr(}; 171 ¡••••············••••11•••••···································· ....................................................................... / 1.nion IECS r; tuteelor(RED>; gotcqC5,3l; cprintf{" AJUSTE DE ESCALA ?LEMI. •); cpdntft• ,t.pltcar 1.n voluja corrtt-•); gotllAy(5,{))¡ cprlntf{"pot'rliente • esc•l• MXt-•1: ¡oto1y(5. n: cprintfc•mcno, 1/2 bit ICliel'IC• sl;.4'fft-"); cprintH"c.stivo y ajusur el poten-•); ;oto1y(5.9>; c.printfC•ciometro P3 huta qJe et•); gotOJ;y(5, 10J; cprlntf\•valor enc:errado M el cuadro•); ~to.:y(5,11); cprlntf<"osclle entre 4:>94 y 409S. ">; tutb9ck.grOU"ldCCTiOI); tutcolor: ~taxy(6,20J; epr lnt f ( •P'"otedi•I en to."); tutbaclc¡rOU"ldC6ll.IE); tutc-olor(\IMITE); lotitle(lbioslcy(t)){ ¡• •lcntru no se pteslone U"l8 tecla•¡ leurwi(Lcan.1l0,&pia1,Lpia2,0l; r c~rslon canaU1 •¡ iHerror){ t• obti~ codi9~ de error tn el •t ctrscrO; r• w. si tt e!ir:Mtivo orn~t.s"J ¡:..¡tcti{SELLJ; t• letrt-ro en pantllla •¡ for(teirpz1;t~<1000;t~·H u't~CCSO>: r.h.ah • 1; r.h.d1 • 5; r.h.:\ sé; 1rotS6(0i;10,&r,Lr); cLrscrO; uiteO); 172 W,CtClC)'(14,11); cprintf("o;;o¡ u.o•>; ) eprinti(“Xid*, temp); /* imprime en pantalia */ 7 /* el vator de la .” 3 7* conversion. * textbackgroundiCYAK); cirsert); 3 Pe .o * PRESENTA PANTALLA PARA CALIBRACIÓN DE OFFSET EM £L CAD * 7 cal_cstaint) unicn tectal char chi2); int 4; ; textcolor(REO); gotoxy(5,3); cprinttcs AJUSTE A CERO "> texteoloríBLACK); goroxyt5, 5) eprinttí” Aplicar un voltaje corres-"); gotoxy(5,6); eprintt( "pondiente a escala cero mas); gotoxy($,7); cprintt("1/2 bit menos significativo"); eotoxy(5,8); eprintt("y ejustar el potenciometro"); gotoxyi5, 9); cprintt("PA hasta que el valor ence-"); gotoxyt5, 10); cprintfí"rrado en el cuedro oscile”); gotoxy(5,11); eprintf("entre cero y uno. “y textbackground(CYAM); textcolor(MAGENTA); gotoxy(6,15); eprintit"Presionar la tecla si; texteolor (WHITE); gotoxy(27,15); eprintit*su); textcolor(MAGENTA)? gotoxy(6,16); eprinti(*desea volver a restizar el%); gatoxy(6,17); eprintít*procediniento de catibra-"); gotoxy(6,18); eprintf(“cion de el CAD o cuslquier”); goteay(6,19); cprintf("ortra tecla para regresar"); potoxy(6,20); eprintfí»al menu principal. "> 173 else{ i;ctcxy(17,14>: cprintf(");.4d",t~>; t• lirprilllll! en pantalh •t tutbaclc¡rcuid{C N); lncrO; t• l aler e l •t , ....................................................................... . PIUSU! . P.1.Nl .LLA r l .LI A.ClON E FFSET ll E C D • ··-················-··--····················· ... •••••• ... ··••¡ cal_cadilln<> e 111icn tecla{ ar t21; f t 1; le; ttxtc l r( Etll; ; tc y(S,l>; rlntf(• J STE O tutcolor; c rl tf("' 1.plicar i oltaje rres·•); ¡otollóy(5,61; cprlntf(• ndlenu • .cal• r"CI ... •>; ¡otoxy: rl tf(•1f2 it DenOs 1l nlffcatfvo•)¡ (IOtl)J;)'{5,e); c rlntf(•y rJ sur l t lOIDetro•); c rl tf(" 4 uta e el •lor ce·•): gotoxyCS, 0); rintf(•rr. o e l c adro scile•); c rl tf("entre u y i..nc. "1; tutback;roc.n:HtY .NJ; tHtcolor(MAGEliiT A): 11otcxy(6, 15>: cprlntf("Preslon.or l tecl• 11•); tutcolortWN E); c ri tf<"S"l; tutcolor{MACE TA); ; t C6, 1bJ; c ri tf<"de•ea lver 1 ul h:ar l"1; ;ot i.y(6, 17J; c rintf{"proc.ediialento de li r•·">; ¡ t {6, 1B); cprintf(•clon de- el CA.O o cualq..iler"1; ¡ tc.1.yC6, 19>; rintf("otr• t la era resar"); ;otc:s.y(6,ZO>; c rintf("al ttf"llJ ril"IC:ipal. ); t v:tt.ct;rOU"dCBLIJE); tutcolor(iJHlTE); c.i • bioskt\'(0); whil• (lblcstl!'Y(\)){ c:.i • blost.ey(OJ; tn.tbld.;rOU"ld(CTA.NJ; l1tuna(ltL"UllO,lp! •1, lpia2, 0); ;otcxy(17, 13),• qylntf(•i.t.é•,t9'>>: -elncr{)¡ t• vuelv11 a 2IOdo de: tallbraclon del CAD: •t lf(c.thtDl •• '•' 11 c.chtDl - •s•){ cal_ca.:b611.0; cal_c.ad.in()¡ ) 11lse ~_vlc»oo; ¡• >NClve a 11enU principal •1 , ...................................................... . PUSEWT.l PMTALLA PAR;A tAL1P.ACI061 OEl COA -··········-····-······-·····················•¡ .....,_cdl:() ( lf'lt var; tnttclcr(IED); ;otoxyc5,5); cprlntf(• CAL1BR.ACICll DE El CDA •>: tUtCO\or(IUCt); ¡ouuyCS,S>; cprtntf(• UM vu conffgunda ta•); ;otory(5,9); eprlntf(•tarJeo, ln:Hq..ie pr .. 1iCll"lldo•>; ;GtoryCS, lD>; cprlntf(•nt ldl debe ser 1..nipol•r ,•); ;otcr:y{5,1Z); cpl"lnttc"o bien, pnslctoe ta tt-ela ,•); totoxy(S, 13>; c;dt1tf(•1i 1tl -=do da ulida tef'dr••>: UAtcolor{~ITEl: ¡otoxy<15, 101; cpt'lntft-V-1: ¡otolly(lZ, 12>; cprl"Ut-&•>: Ó>( 'oº&r•;etc~(l; l""'lleC"•r 12 'u' U var I• 'U'" 'olar I• 'b 1 "var I• 'B'l; tal_cd&i'>'ar); t• ¡¡.,.,,. r1.otiN1 r-ar1. calibracion •¡ )¡ •toooo•, "9'195•, •·9995· JOJO UNIPOl.1.' •, lrt.:00 llPOLAl •, , ............................................................... . • PlESElllTA P,uiTALLAS ESJ>E-CIFJCAS PW CALlllAC1C* DEL ClA • ··················································~···········•¡ cel_cdii(a:;do) lnt~: ( tTISl~char,....; lnt VC'CLl_-•,vcóa_•ln; clrscr(),• tutcolor(RED)¡ gotc•y(5,3); cprlntf{• t.l.LIBlACIClil DE EL COA ">; tutcclor(BLAO:>; lf (.oda•• 1u' 11.:do•• 1U1)( eheC n.ai• 1; ;otG.Kyt5,4>; cpl'lntf(• ,\JUSTE DE OFFSET •)¡ ;otcrrC5,5); cpdntf( •ta•, tro_lllOdoll'Ul\l >: gotoxyCS,7>; cprintf(• A partir de ute ~to•); ;otoi:y(5,!U; cprintlt"'Ustt'd debe cbtC'f'ler l.l"WI he·•); ;otory(S,9)¡ cprlntf(•tur• lo•• urc~ • Xs•,i""_lllOCkat.......,..z)); g:¡ta1:y(S, tD); cprlntl(-.ilivolts en la ulidl de d•); ;otcay(S, lt); q:>rintf(•convtrtldor. De no atr asi,•); votcxy(S, 12); cprintf(•ah,mur le ~ril\1 del po·•)¡ totcur.yCS,\3); cprfntf(•unc:icwnetro P5 hasta obt~r•>; iOtr:.aytS, 14); cpdntl(•rHu\tedi.:1 uthfactorlcs. •); 175 RertcolorquazENTa): satcar(5, 18); cprintt(“este realizaco el procedi-3; goteay(5, 19); iprimi("aiento ocltimamente. mn; salara(veda_sin,ram,Ápiaz); ¿* VMora rutina para */ Fetenod; ft la conversion 0/4 */ ebracród; texteolor(RED); 9oteayt5,30; eprintf(" CALIBRACIÓN DE El COA =m textcolor (BLACK); ÍF (modo == "ut |] modo s= "UN mun 0; veca_rax: 998; 7 elset mn: 1; wveda_marx- 9995; > potoxy(5,4); eprintfi* AJUSTE DE GAKANCIA "y gotoxy(5,6); eprinti("Xs", imp_modo ina y; gotoxyeS 9); eprintfí" Ajustar, de ser necesario,"); sotoxy(5,10); eprintfiel potenciometro PÉ de la”); potoxy(5,11); cprintf("tarjeta hasta lograr obtener"); potexy(5,12); eprintfíiuna lectura lo ass proxima a*); getcay(5, 13); speinti("Xs milivolts en la satica”, ire modo lnuá 1); potoxy(5,14); eprinifi"de el convertidor. ; Textcolor (MAGENTA): goteryr(S, 1; speinti("presiomar cualquier tecla"); potaryt5,18); cprinttí"despues de realizar la opera); gorory(5, 17); eprintic*"cion correctamente para vol-*); goromy(5,20); cprintigver al mery principal. ” salana(veda_ max ,na,ipia2;; gerentd; menu video(); /* vuelve al mena principal */ 176 ¡.::t::•1(5,17'; cprintf(";iresior..:Jr \S"\a te:lr. e~"); c l"intfC"rider.tc :ctil';'..Y.'11!1"'.te. •); Ul&N('ti:d. !:lin,l"U"l,¡?¡•z>; ¡• lla .a n.stfna ara•¡ ; ttl'ID: ¡• l overslon /1. •¡ tl s rO; tl~ltt::il crCí<.ED); ;:: c.11.y(5,Jl; t d tf(" LIUA IOlol. E L t:l . •): 1 ctc ULA.OC); lf nxia •• ' ' l J hl o •• 1U' )( n..n •O; l { ¡¡ctc•;(5,4); cprintfC" .J STE CE r..llliCU •); t 1 ( 5, 6 l; rl tf(• s•, i~_a:d::!!rutJ >: 11otexy(5,9); f"lntfc• justar, r ecesario,•); ;oto1: C5, 10>; c rf tf<•d ct efcaetro 6 e •>; ;otc.Q(5, 11 >; d tf(•tarjua asta ¡¡rar tener•); 90tc.Q(5, 12); t lntf<"111.a t ra t NS 1:f111 •); ;;.t ay(5, ); e rl tf( l.a altf olts :i satida•,f~_lhOdoin.n+4D; llOtoxycS,14>; ri tH e' l c ve.rtidor. "'); tuteot r(KA;:;c:¡,¡ A.); ; c.a:y(S, 7); ; ;2.1:y(5,1!l; lntH"de-s, J "S ~ uliur ~ra·">; ;ct l (S,19>; t t"intf(• i n cr K arnente ara ol·•); :: l)CS,20); e r-int!("vu l ~ r r"leipal. •); s.alan.a(~_aw:,no:..a,,piaZ:; 'ii'tU:h(}; 111tnU_.,,1.::1e-oo; ¡• ..iel\·c l ~ F=rincl"'1t •t •lnc:lu.ie •ccnfo.h• #lnch.de •dos.n• t:ltern char •fornato[J; e.11tern struc:t st:ru1or{ int Sl.J!ll_&n.1(10}; long conv; cb..btekcte; uisl;rwd diar canal; fnt raw_val; flo.11t vatfn;;>; typitót:f struct sensor •p_sensor; u.tern stn.ct sensor canat0,canal1,canal2,cal'\al3: u:tern stn..:t sensor canal4,canal5,canat6,car.al7; utern stru.::t tfrMr( L.nsl;ned fnt regctrl; uisf;ned fnt re-gctdor; tloat vating;>; typedef 1tr1.1et tlNr •p_tl•r: utern struct tliNr ti111,tla2,tl-.J; "Vefd panlniO; vold ininot.uO; voidf~lO; vold l""°l~O; vold anota(); void fq:i_pt111; tUtcotor(LIGHTi:ED); tu tbllck¡rOU'"ld( BLUE); c:lrscrO; ;ottay{3,4); cprfntf("EllTWAS AliiAlOCICAS"); ¡otci:y{l5,4J; cpdntf("S.ALIDA AlilALOCICA")f ~tc11yC40,8>; cprintf{"TIMfj¡"}; gotci:yC6, 1S>; cprintf("ENTRADA.S DIGITALES"); goto .. y{34, 15); cprintf( 11S.\LJOA.S DIGITALES•); te1tcolor(TELLO'Wl; 177 eprintó( CANAL 81 gorcay(3,6); eprimif("CANAL 82 gotoxy(3,7); eprinsi(eCANAL 83 potoxy(3, 8); eprimef("CARAL 8h gotoxy(3,P); cprimti (CANAL 5 sotoxy(3,10); cprintf("CARAL ds gotoxy(3, 11); Eprinti(*Ca NAL 97 sotoxy(3,12); eprintt(“CAÑAL eS gotory(31,5)7 eprintitv0LT. SAL. potoxy(31, 79); cprinti(*TINERN1 potoxy(31,10); cprintit*TIRERAZ Dotoxyt31,11); eprintt("TIMERNS Dotoxy(3, 16); eprintf(*ComT, vENT. potoxy(3,17); eprinti(*conT. MOT. gorcay(3,18); eprinti("ALRE Dotaxy(3, 19); rintf("CJ.Ji L f "" •); t ay{3, 7); c intf{"C.>Ji.Al n .., "); gotoxy(3,!); c intf(•C>Jl. L ~ "" "l; ¡ t yl3,.;l; tprintfC"CA~l.L 11'5 "" •); ;otDJ.y<3, 10); C?l'lntf(•CA.W. L '*6 "" ">: ; 11.y0,'1l; cprlritf(•c..lJl.A, • "' •); ;oto11.v; p toq; c ri t (•COliil. i,t.wT. ">; i(lt~y'3, 17>; c;.rl tf(•O:WT • . OT. •); i0t xytl, 1!i>; c ri tf • UE "); ; to.yo, >; c ri tf(•.u:1. lll'Vll. •); \1CtOll'y(3,20); t intf(•ftEW 1wvu .. •>; votoxytl,2\l; c intf(•E11itl.lr.Ol :ó •>: ; tcur:y(l, >; c intfc• w>t.e•'7 •)¡ 90t .. yC3,ZJl; C;>rit'ltf("h'!U:.U! •); ;:ito•y(l1, 6): «t il'ltf(•TU.M. 'i[!llT. ., .. jlC)tCJyCl1, 17); c dntf('"f'OS 1Ñ'il "); ¡ct .1y01,,!J; c rl tfl•? S T~OR •); ~toay'3,,19); c rir.tf("T(a• .HA. ">; ;<;tc1ytl,,2ül; cprind('"iil~O ar.•to. "'>; 8 gotoxy(31,22); cprintit FALTA ACEITE ES gotoxy(31,23); eprintf(*FALTA ATRE me e... .... * — PRESENTA EL CUADRO DESTINADO A LETREROS CASUALES * 1 woid Ini_rotast) C teatbackgrouro(CYAN) 7 textcolor(RED); window(58,3,75,23); elrser(d; dotoxytó,2); cperintf ("COMENTAR LOS“) 7 tentcolor (WHITE); textheckground(BLUE); windav(1,1,80,25); pPOAIrrREnr raro tr rra r er orrra rr rra roneres * IMPRIME INFORMACION OBTENIDA SEL CAD * .* UTILIZA IMPRIMEC) . com. IUUrAAr cr Ucero none void impanal() t taprine(12,5,formatol0),Lcert0); inprime(12,6,formitol01,kcanai1); Impr ime(12,7, formatolo) Acenal2); iaprimet12,8, formato [0], hcartid); trerime(12,9, forratol01,heenal4); ¡ieprime(12,10, formato10) £cars 15); - tepcimet12,11,formeto(0),banaló); beprime(12,12, formatoí0) Ecarai7); void lmperiae(vert,horz, f ra, p) unsigned char vert,horz; char *fona; p_sensor p; t potoxy(vert,horz); cprimti( tora, p->val ing); 179 ;otoxytl,,211; cpr\ntft•PAAO ACUJ.l 9Qto~(3,.22l; ri tt(•fA. l . EITE ; t y(l\,2.ll: cpdntf(•U.L ,i.l E "); , ......... ............................ ............... . • J>l:ESUI . l O O STlk :>O l QS S ALES • ············---·-·····-·····-····-··· ·······--· / v id l i MUSO tutb.tk¡roo..rd(tlAM): tutcolor(R O); ln:b.'(58,3,78,Zl>: ClrscrO; ;c:toxyt6,2>; c~lntf(•tcMftol.U J S">: tutcolor(ll I f.); t11.tbKk;rou"l ( .\JE); l *N'(1, 1,50.ZS>; 1···························-·····-········ Pll E hlfOll:MCll»I i MIOA DEL .O ... .....................................•.. , "°id\~\() ( l~IN(12,5,foruto[01,,cW'\l\0); lr •C , , f m.ato tOl, S.c Nl 1 >; l~•-< 12, 7, n.iitot0l ,&.canal2>; IJ!Pri,iie( 12,S, l r-tc{OJ, lt i.tll); bc)ri111e( ,2 ,9, f rr.at (Ol, k.,....\4 l; i~1.-c12, 10, fOt"NtotOl ,kllNlS) iq;¡ri•(1 , , f f"mt t 1,k:.,.l6) h1p1•l•t 12, U, f~to{Ol ,k&n1\7> ygld h11pti11e(vut,horz, f ni, ) \l'\S ;o"W'd ar 'rltt cri:: ar • r.; sr s.or ; { ~to1.y(vert,hor1); pt'lntf(loM1, •,.v1ll1";); * IMPRIME VALOR ENVIADO AL CDA Y void impvesiivs dea va; e gotaryido, 5); eprinttiformatolá), vs); 2 > pro rarannrnr rra ro rtrraa . ARREGLO DE LOS LETREROS CASUALES * IIA Or Ircrr neanas canto] char tnotall=L * error Cay ” "crestione la tecla”, "ESC para finalizar” “intermupcion por sat%, *ariende interrupciont, ” 1R33 hadilitasa —” "EKTRAR para detene Presione una tecial, " gara continuar *, “actiweda (13%, “desactivada (9), ” maquinas mcendica *, * msquiña en vacio *, = secuencia mal * contr. del vent. *, mocontr. del actor *, ” tire - * srrancue inverter * * trenc inverter *, 2 imieir arrange ”, * errerent, alg. ” s PARTO FORAL * IMPRIME LETREROS CASUALES EM PARTALLA — * arser void anotairen mu, t xtecl) Tri ra wnsigned ener Cen textoi; i texibacigromai TAR: remtecler(rexici); /••••·············· ..................... . .......................................... ¡ ~id l'!'f"'t.!:l{vs} i:-:t ···~; 1t.::t.:ixyC'-J,5); i: ri!"lt • t to!'1'l.'ltoro.1, vs); , ....................... -................. UlEC OC S l l! :::S .lS:UllES ........................................., rror A.J ", ·~es.lon.t l t -.::ta•, •fi ~ .. a ti:-. ti:11"'"• "lnttrn..pi:iDt'I or i::a1•, •ati~ inttr!"~~~. " =i:;.Jh11:.illta.:ia ", "'EliTU.~ para det~r·, •prtt.ione \l'la u· •a•, • pera Cbt'ltlrJ.Jolt •, "Kth .. .:ut (1)", "des.&etiYade (0}"1 " MQJiN 9ne~ié.1 •, • ~IN ado •, • l~uencla l!lal •, • COl"ltr. el ent. •, • ::intr. el lllC!QI" •, •i a •. • arr tq.JC i erler •, 1re e lr trter •, " inki1 .arr,."'Q.M· •, • !"rcr e!"lt. o!;. ); ·. ........................................................... , tu!\::.a.~ i.:.r~....,.-=~ ~T "'"): o;u ~e: ter( :r.x:i::t); 180 textbacigroundiBLuE); window($,1,80,25); de * IMPRIME PARAMETROS OBTENIDOS G ENVIADOS POR TIMERS — * «o. cenprnes rrcrrrornraras void hmp_ptelvert,horz,torm,p) unsigned char vert,horz; char “form; p_timer py e gotexry (vert,hor2); eprinticfora, p-aval ing); ) POOIAAAA IRALA RATE RAE rra rior * — 1KMPRIME PARAMETROS DE ENTRADA Y SALIOA DIGITALES * 1 void iro_eot_salívert,horz, form, val) insigned char vert,bori; char “fora; dat val; t gotoxytvert,horx); eprinti(focm,valj; > 191 'olirdow(5!,J, 78,23); gataky(2,rorn>; cpdntf(,.%6",noutn..nü J; U:1.tcolar(\o'MJlE); tntbacl¡rOllld(S~l.IEl; incb.1(1,t,BCl,25>; ¡•••••"••*····················· .. ······················ ... ··· J.l@lll(E PA.iUJoléfll:OS OBTEIHOOS O ElifVIAl:>OS Po« TlffEli!S .................................. ,.. ........................ , ..,.ofd 1-.,_pt•tvert,harz,-f.orM,J::I) \.l"\Sl;n«:I hu \lttt,ti.,rz; c er •f ni; p_tflnl!r ; ( ¡otc,1;y (vert,tlo?".t}; tpl"{r'otf(fom,p•:..vat fno;l; l 1················-················ ........................ . IMP I E P A»I .OS OE E'liTIV-DJ. l 'S.A.lt A I I LES • ................................................... -11 ........ , ald hei_e:nt_ut (vet-t,han., for111, al) IZIS¡;ncd dlu •rr,hort; tr •f ra; lnt 'C 380-JSF Ad4plador 111onoc-rorMUco e 1111pres.., r~ J~::l-'.??F" Ad.11.pt.ador qrAflc:os y c..:ilor Controlador de disco flexible 184 PRI!ICIPALES I!ITERRUPCIO!IES USAo,-,s Ell IBM-PC lHTERRUPClbM DtC H!:X 13 16 10 17 11 18 12 19 22 23 DtRI:CCibN uso 0000 Cene r ado p.:ir el CPU cuando se ln- tent.a la dtv\s10n por cero. 0004 Para correr proqr~• por p-'sos. 0008 tnu:rrupctbn n.;J ~searable 0\Wl). OOOC Us.ada par• poner punt.oa de paro en proq:ra..as. 0010 e.ene r ado cua.hd~ rcsul la sc-breí tu• Jo ar\tft!htco. OOU, Invoca 111 rut.\na de scrvlc\05 de l~prestOn en p.3:nlalla del BIOS. 00~ Int.errupctOn del t.lmer para reloj 0024. Cene rada ~r acc tbn dol tccl,,.do, 0034 0036 OO:J<: 0040 oou """ 004C 0054 ooss oosc Cencr11da durante el rep4SO vcrtl- ca.l de TRC, para control de vldeo Para atender señales de disco. Vs.ioda. en cent.ro 1 de h:-presora. Invoca servicios de desr·lle~uc en video del 8105. Invoca el sorvl e lo del BIOS para Ja l Isla de eq\I\~. Invoca al scrvl e lo del BtOS par.ii t..:i.:..Jño ::!e =n1i:'lr\fl. Invoca servicios de disco de c1 Blos. Invoca los servicies de corr.unlca- ctone,; dci BIOS, Invoca los scrvtclc,; de Cll5St't..t..c del s tos. Invoca servicios cst..indar de t.e- clado del stos. Invoca servlclo5 dlC' ls.presor~ del BIOS. 185 IHTERRUPClbM DEC HEX 26 Z1 ,. JO Jt J2 JJ JS J6 J7 J8 J9 73 18 lB !C !O !E " 21 22 2l 26 27 .. 0060 0068 006C 0070 0078 007C oos:i 008< 0088 oosc 0090 009t 0098 009C 012, tlSO Aellva el ltnq~je del ROK-B.lSIC. Invoca la rul1na de puesta en m.archa de el boot-str"p en el 8105 Invoca aervlc1cs de puesta de t.leapo y reeh& en el BIOS. JnlerrupctOn qenera;1" en paro del liectado sujeta al BIOS. InterrupcIOn 9enerad" en c"da "llcil;" del reloj. Apunta a l• t.abl" de par~11>etrc-!l de control del video. Apwit• a la t.&bla base par11 dl!lco. Apunta a los caracteres 9r.ir1cos de video avanzado. Invoca servicio de prOQrl\A3 te¡.al- nado en POS. Invoca Jos servicios de 11&.lll"das a í~cloes de 005, SI Ja crea.ce, una ruUna de Inte- rrupción es l:wocada al final del pro9ra.:i.a ~Jo 005. SI Ja cre1UDOs, una r.ittna de lnte- rnzpctOn ea tnv.;)c;a~a scbre el í""f-' de teclado lul.J¡, OCS. SI la crea.moa, una. rutina de lr.te- rrupetOn es Invocada a DOS pa.ra error critica Invoca 5ervlclo de leclur.l abso- luta en disco de 005. JnYcca servicio de escritura. ab- soluta en disco de t<)S. Ters:lrua el prc;r~ corrlente, de- J.!i.l'ldolo residente en aeir.orla bajo ros. Apt:nla a I• tabla de trasl..,,c!Or. p.lra dts.r;:is.\tlvos. s-:;:ilt-=ent.l.rlos óe teclaj.;). 186 DRFl:NICION DE SEilALES PARA CONECTOR DE EXPANSION IBM-PC TERMINAL SEilAL l1 110 CH C< A2 07 A3 06 .. 05 .. º' •• 03 A7 02 •• D1 •• DO A10 !/O CH RDY A 11 ... ... . .. 113 ... 114 A17 ... A 1 • ... .. 5 117 ... ... .. 3 l 19 ... 120 ... A21 "º A.23~ •• .. , •• 12' A7 ••• .. A26 .. 127 .. ... A3 ... A2 130 .. 131 AO 91 GID 82 REStT DRT 93 .. V .oo 'oc Dl RECIONE.S. DIR¡cc1om::s V1L1DAS. 829 •5 "tcd BJO as·C'. St:A'At. DE \ 4. 3 1 6 K H :, sci rt CICLO .. DE SERYICl O. 831 CWD Tll:NU. .ulB intef. IAPX 8&'10 A.C. CKARACTDISTICS l _..._ ~- - -.. 1 - - ..... M~ MI~ ..... "'"' ,. .. ._ TCUll. Corttmand AtfM Deis,. (S.. 'º 35 'º 35 No,.11 -~ TCU•H CcrNnu>d ar.eu.. 0..-, (See 'º .. 'º .. _,, REAOY Actt"9 k> s;i..:u1 Pa.,._ - ,..._,, "' .. i TCHSV ............ _, 'º "' 'º 00 TCU>I Stt~l~~tt'rlto.t.y 'º ,,. . ,. 70 ~-- TCLAV .lddrtU Va.lid OeilRy 'º "' 'º 00 TClAX Ade!lllSllHoldni.. 'º 'º -¡cuz .ld~n Roct DMly TC\.AX "' TOLU< .. m'lH Sta!ut Yand to AL! Hl;h (S. " ,, _; "°"'' -~et< SUtu1 V,J1d to WCE Hogh ¡s. ·~ ,~ 'i Holol) ·t TCt.iitº C:U:U,..toM..f'Md~ " ·~ ,.,..,, 1CA.l, "°'1>!11. CAi. CA.2. C!ll. Cal! ";::~:;:;~ l'llW.~T.111~ R51.tSO.C51i:~i~ leo ,,A ... z-1t.-.ooc..n..tN..,•D•~l•V> f'f!0.1'17.Cll 1ll ...... lf'OW'l~C..-...Nll'l•l•VI ~'°"0.-~IVO•l•'o'I l'f!O.PB7.C!l1 rM.· ~l~-c-tNn.•O•VI eus TlMIHG CMAl\A.t:TtAISTICS tS.. ,_,, ' .,-.1 JI --l'f00'1 ... JIGl,MI l • IUST\hl1MG ••ft 1 V""'*'IJl-~ ... vl.,o•v vwa2•v -~--t..:1 1.......,_,_.........,,._ .. 01vnJov.-c•-IC*;>t.: 195 " .. 1 "'W MAlUMUM AATIHGS Oc..-_.; t...,._.r..,• "'rogor 1.1:.a:i:1 1.1Cf61.;1. YC&'~:1 l.lt;M:lC UClV..."'C l"'9a--..,ee"r'l~"""~t...-•lJO"l-CcanN:OC"'~l';:r1 TJ .. T&•l,..,....;,1,I ........ r,., .. ~1T.-cw':C.WJ~ - C!-4'•-:e-,...alt,,,.._, Pp,:¡1:.t •Po•; p,,_ Dd.J..N:>e>"' ,\at:s - UW'" 0.1~~ T,....,.,....,___..~_o;..,ID~..,. -~~-111,,..,.~ -~.,,..:trc-."--·lt•P ......:tr•l~~N-l'W'>&. ~~d...,,~~!"\llr" ..,......_,,.-~=!1ol"°il"' ~-' f.,,~""9"·-"" ~l"llfV..,r<:lVM~CO" .,,.,,.,.a 1., '1'• ••"91 G,.:isi"',.. 01 v""',1i'vcc ¡,;,.,._.....,..'U ..... 1'.-• .. tll_,00.., •<>=e••l>QC·....-·~--··; .. !"* e; .. ,: OI ~CC' f:;ll" ~I ~:o-~ Ppo:;t4i>,,..¡ ·~ :.r :.e ......... IN Pp.,:i:;;,.,....,,,. ~ S9""tc.1"1 ,, ~ ~-=· :so:r'>;J'ed 00 ~~::inba.rs::Jl~~t~I<'><'~ ...,, a.°'\'.l't'ul".ai. """~~--·"O •-..C TJ M P?O~T"' ,.,..,.,K':~ 1 •li P:l" t.• !TJ• :73-C! t2t S~llQUfl K•P;:::•:TA•z:'3"'Cl•fJA•P:l2 • ~~l:;ll-t J;.c,,-.t-e:lor: ... -.-..::,, ..... t<:-'loOO">Jt:...~'<">;"0!•!90.:.~ l'7ll~l1. ¡j1o/'>;~•~·~~J.~""o;nc-'P!)1.">aTJC2"'~:(:~t>fl.."",....._~_.t>one°'""'ter'5••Uf"Óe!SOti· ... ,.., c:cintrol ~ mtv bl ~ io c.a.ae '":em ...,tetrui:;" """1/or ~atttOU1PU1~~ Ttw~mot.1ut*'9dlog. illld ,....,.,...~ The~,...,.be..n!ll! ~ eo.,,..1., ~tes Covnu 10 Go Uni• 1,......0 .. 1 • ~C..1~lorf•l'Ql..O"IC'JOl'Pukoi-WMT.t\~&io"I ·=-• n .. 11e ~T>CJ~~ h1.,,,... o.xt ar..:i G11ell•'Q9e>' :npua IMfln'\allyS.-nc!\lgoo:f'd •Thl"~0utpu11 OROffllNG WFORMATIOH - -~ ,_ -,_ ..... ....._ '"'- 10 ... !iz O"Ct:1lO"C 1.,1(6í>Q. SW O"C"'~"C \l::s!SC'.11. ~ '""" O"'Ca:>T.l"C """"" PS.,.•t" '°""""' -~"C>O•t!'>"C ... ~" l!> .. l'tl O"Ci:i10'C """"""" 1.5U!tr -C'"C1c ·~"C """"""" lOU>tr ~"C~'l'J"C """""'~ e-~ 10U'1l O'"\:~)C·.;:: """"" '"""' ., .... -tr O"Cter,,-c ... ae~s I~ M!U -"'<'<" ... .,t._ .-¡i-.·· ~-~· ~ ..... .,,,_. ,,, .....,.,, ..... "' ""'~°"....:;""''~-··SI:! -1"\r·~.-~'""""'!ISUO"'W ·-~·-oi-~"'JN'"""" ...... ..,..,,..., •1•.: ""'~;tt 1.> ..... '"9" .........,,."<• ,n_,,. ~,::- P'tlP<" <:».-•~ ~'" ' ~ uc - !ti "' • l":IC ·.: ·~· ... 1·· ... ~- ....... 1'*~,.... ·-·•--•'""'- -_ .... ,.-~~ ... ....., ..... ~ .:.S:!I./ r- ... ~ s ..... ~c_..,,~.os~:'"' ~ ~;:;;:~ 1 .. :~~· l; ~~ 1--~l--t-1'11'S••·•·•;:-.•:•• j .,,.CYa.•:"','•IC.u .. _. L 1 '. ~...., .... ~ ....... ~ ~- ·~·. J.,-.._....._:·. ""· ..... ¡ ··: _-_~ .. ;,.;• ~~·;~" ··-···· 1 .... :;i' . --:1~~ • .....i ... 1 .: ........... l 198 -¡ 1 - 1 ·.¡ 1:1 1 ~ 1"-10INl• ...... Y55..:.•w.-.cw•""'·· ., .. ~e ~ .... ~-..,oc~s......,..,rd·' ........ ~-..n .... ,.., ....... ~.'Vol'•'--?' o(;<".IQO..._,.~ .. .,...•SS"'·.:: •ss ·:: "~s - ; J - ' • -: ! Y .. ~~s:; ! : \ ¡ ' : h~:~:I, .:,,.. 1 \ ,: ' ... .. ¡ i 1 l ~· BLOCK DIAGRAN: 0 añ Aso mr 52 ESd Et Ene POWER CONSIDERATIONS Tre sUeraGO CP UACtOn ener rre Ton PE can re ora ne Tie Tar iPDb Ar m Wee mp? Tercera CE La mPockopa Thema Resiste, uriton 1s Amen, CIN PpsPiot + PrgAr PNTE IGOA VOL Vvaito — Cro ima Peer PPgAT e Pon Power Desipanos, Nao er Deere t Foc most aDOLtar.0n3 PROA? 47 NT ana can de neral PROA ma ome a yo dre Du ngion bases o: sá LED ias tre O0evte 4 contqured 10 An aperos ate eat on bete Pp and Ty tears ereccion Pper 0d 273000 10 Sowng equinars 3073710 % prees. aporta 273198 jar rg? y Varera dC DAN 1 14 pa rca Dart K Ca pa Cerpros 3 Mom aqua on Y by méssunog PO lar autor lor daran Ta UAG rus cade St K re ems CEP ana Tocar be cbianed Dv ton equavons (1 and 12 Petater 10 any wave ot Ta 199 MC6840 PO~ER 0 S10ERATl0NS ~~ ,,....-;• ~ .. 0 i "'C'lcr "~'•'·''" r_, ~•:u•:-~· ot•.• -,.~ !·~"" J•T •tPc•fJ ,I ';.•AmC-•o..1>1toO" a··· - UM-<~'f-'"'P: Fc-01HC"1f'oT-'UltlSN"-l..._'.ed I';~;:;· "'"'• t __ _.,,......, 1;''-••: lt•t:O~P>teot1!>Q,_,•edlO o!•,,• Osr..,.,.1on e.~ ·...,. \.lO ~ A"1~00-1lt•f!'l'O"l"'PC>o'-'O-'"dTJ '""-·":" ~<':"'' .. ·~=·"'"lil'.e"S .. • Po•ll A~ ~rl"CI • f~r..'":>1 "' w.., ... ., 1 ecriu..-.1 .,.,..11"'.n,;i '"?1">11 r.-1·1.cM..1• r1•1 i:. u"e.. ,:,. .• ,.._,...! •t . ~..at'll" lb"f,..._,,.,nnq o 111 N"-"'·:i< .,..,1 lo•••~::. 1J'IQT ... \•~c:•1<1-..~-'o!Po•·~l1c1•i:..rtt...-.4ll'vt.ol"""'91':1u"'°"'''l1nd12'·•.-i11••~•'::J11I"'• ,, ~t ;;! 1 A APENDICE C 201 xo ES 950 z : 1 mr y Midi Terraeratarn Equ (557 to 125" 0) 1 Rata AA "Vi “hacracer e henatos ye STE Reid laca wet tral ls ls ctra e Er DG dl ml 202 IC MASTER INTERFACE-Analog lo DlgHol Converters (Cont'd) -........ -- - -. _,_h ~ ,., ... ~ ~ ~ ~ - ·~- - - =: ::. -· - - - - - ~ ~ Blnory Output ~· L• 1l AOt'.:!:13 ·- .... """" ·-·-.l.OCS:'l5 ·-'--"'OC$211 ·-'""'" ··- ~ """" ··-"""" ··- ~ AOC56ll ..,~ ~ """'" ··- ~ AOC!l6l!i •• ~ ~l'•s~ """" ··-.. "" """"' ·-""""'' ·-·-·- """''-"' OOC5"'6 ·-"""""' ·-,._ "' ....,_ "' "'"" .,, "'" unm 273~ - .. "' ""'"" -... """ ~ .... ..... .. __., - "'" 1 WlotS2'7 ·-1 1 ""- ·- .. º" ""' U><.-C - ~ '°"""" - -en ,.,, 1 1 ...,,., ..... 1 ... "'" 1 i 1 1 1 ..._ - '"' 1 1 uau•• t -1 1 '"~"' ·-'"' 1 ' 1 "~~·!SA 1 1 "' ·- '"' '"' ! - ,,,.. "' :,a:; 1 ·- .. ,.,, ji.MUO ,.,.._e-. 1 li.:m~ .,_ 1 ••. ,u:-:n1t "' 1 ' 1 ~1:0151~ 1 .o;.:x< ~ ,~1_..""" ..... ,_~·tc1:5"Q , .. ~1;,a.;;u·..,..~ ... ~ •t,:oc.aov- ·.-.... ·•·....e-•S.0--" .. ..., .... ~ .... ~ .... 111,.. __ .. ,.. ....... METFAAADA Harta (2734, elTIAAID-S Hattis 1734 E Tara Lopera, COComp 74 Loma. Ma in—Mutcrnd ra Par. Dil Persie! Ot o Mago — Laprcde e — intere Retertria SIA Sartre En Hcad Sn, Our Serra! Daria 203 MASTER SELECTION GUIOE L.---- INTERFACE-Analog to Digital Converters (Cont'd) ¡._..-_ - =· :.-1 -;-..:; ;:. " k k '- ..... •. :: ~ - .s ,_, - - ._. .... ._. .... ~ ~ .. (Cont'd) -""""" ~ " "'" "''""' Zl50" ....... ............. n'4J T . ............ ·rz,..1 ... ""' MS1m,i. "' ' "'" 1 "' fll1J) frTC cmn ,.,,. ~lf>.12 t~C·DOC ,.,, ADUUllC •Ad.i {J11S l. 1 t.OCllll• •t l ..... r.s10 IJ ,,., 1 tbClllllllC •hnl (1175 IKllMI• •t .... "'" '""' 1 rtU11 = ¡ l i 1 1 AOC0:)4..""1c;; 1 1 t ILC.00: " J!JCOº ! 1 1 • 1 1 i-u.str....2 IS rn· 1 • 1 '""" 1 """' ...... ; 1 '""" """"' '"" 1 • l LDU:Z7•C~ 1oa:1•• t ..... mu1 ~ 1sso lotU:O , ..... rt1H) 210: l ADtllUIC •011.t {J:S7S} ! UICIUllM •t ..... {%57') ' .l...">57811 " ''"" ,..._ ars• '"'"' "" ,.,. 1.11157:1 """ , .. U.!!!} rn )l.:.lj 1 "' ~ .. ".IS "' '"'"''" 1 1 AD5:~~ 1 ~9J.&18 '"""""" " 1 1 KS93'.X 1 1 1 "'""' 1 1 1 l~~&J 87~. 1 1 1 "" " 211~ 1 1 1 -.0.W!lZ .... lCll'-""""'~:r~ ~0-.A-~11910..~1. -. ~-~-dt """"'-1o11""""11"' .. '"" s.&.K-s.,..,p..1,..;:/'b:: S...0..1-Sot<>aiOlll;>.lt A .. A A rr st e» ADE5212 «bel a a Y Maras Tetto Range 55% to 12D 1 Ago act Rey re PEC Va *acroct . E dl Bald taco indeotas additrenol Esta in prommónd qa tha pago mat á 204 IC MASTER INTERFACE-Analog to Digrtal Convcners (Cont·d) - - ~ . -r-t>a ~ ~ ,, ,.. ~ h ~ * ............ ~ ~ - .. ~- -:: :. ;:; ~ ~ - '"~ J ·-· """ - - - - ~~ . -Binary Outp.. ! i i ....... 1 1 A..."Oi:I~!'~:~ í&l.L~ = 1 1 1 1 i 1 ' 1 1 1 ! ! 1 l 1 1 1 i 1 ua:l:ta:•' 1 1 1 ..... . :1~ 1 ' 1 ¡ 1 ' 1 1 1 ' ' 1 AXXSllSM: D1t. ~ 1 1 1 1 i i 1 ! ! UCICSUHllf - 1 1 ' -.. , .. , ! ' 1 ¡ 1 1 1 1 ! JCDUIUIC ... -+ - "" ' 1 1 1 1 1 1 1 '"""' - ""' " . ' i 1 1 i 1:::' • u -E!! "' 1 l 1 1 ! 1 .... ""' "-H 1 """ ,_ ""' 1 1 .. ,., ·- ~ "'" 1 1 1 ... "lol.llC&ll? ~ 1 1 1 A...~U -'"" 1 1 1 1 1 """"""'-1 1 1 1 1 >== ..,..,.,, ""' 1 1 1 1 1 1 1 llltMl-U ... _ ""' """ 1 1 1 1 1 ~""(25.¡i~ 1 1 1 • 1 1 1 ""'"" ... _ ... = l i ¡ 1 1 1 ~::na.t~ ... 1 1 i 1 ' 1 1 .. ~~ .......... 11 " 1 l 1 ¡ 1 1 1 1 UltWIU "~ "" 1 l 1 ¡ • 1 i 1 --¡-¡ UUOl1l "" "' f T 1 i 1 i 1 lM.talll; ·~ "" "" 1 i 1 ' 1 i 1 u:uu ,_ ... u 1 1 1 1 IJ.DCUU - "" '" i 1 1 1 1 1 1 ~ll '"'"" 1 1 1 1 1 1 1 1 i lXS:lJ~ ,, t'rll 1 1 l--1-! 1 1 IJ.MUU .o- en 1 1 1 1 1 i i 1 1 1 1 10UlJU••tllroclli 1 1 1 1 ~ 1 1 1 1 1 1 1 ¡ 1 1 i !1:it!.1U 0!:1111111 ... ! 1 ! 1 1 1 i 1 1 11.!>UlUMtf 1 1 1 ! i 1 ""' ""' "' ¡ ¡ 1 ! 1 ' 1 !::~~~~ ,; :: 1 , ' ' 1 1 1 ' 1 1 i ' • 1 1 1 1 u"~l'- ··-1 1 1 i l / ¡ i 1 1 1 1 .... !>Zlll'l•t....,., : 1 1 1 • 1 ! ! ' 1 U"i~!S ·-i 1 ' i 1 ! 1 ' 1 ("'~:1!.M ,,....,._c. 'JoJ 1 1 1 1 1 1 1 ! 1 1 i i U .. !.ElO ,,W~ I m i ~lO•°""'"- 1 1 i 1 !.i.._"'O..!t>-1 •'°"-- 1 1 i i ¡ 1 1 ¡~ .... ·::: 1 i ' 1 ; 1 i ! ' ¡ i UU:llM•t CM ¡:t'9 1 i ! 1 ¡ 1 1 llOCUU 111.:11~ ' 1 : ! ... ; H~. ;..t:l,r.ICI" Rlois-'-O:t •":y;.:a! f"" """ba-..C....U~e.1.o • ...-...-~ ....... na ya. CIL—Coma, 21 Cora Ys Rel re! heternca 205 E e A SAME gple aná mos (Cont'd) Ep. Dai —Peradel Qutpatt Ser. Dit Serál Dutra - MASTER SELECTION GUIDE INTERFACE-Analog to Digital Converters (Conl'd) ;:.....,.. m. 000 .:-... "" :. ~ ~ --- - .: ~ w ( ont'd) """'" UCSllfll 1t ..... "'" ""'" ...... "'" lK.Slllll •t ..... "'" Ml'l'"..210 .. ..- ~lCH•t~ \1'!!:11 '"""""' 1 l1o11-1.~lli'41tW~ • 1 U"'5ll2 . ....- 1 W"C2l'°'4otM~ 1 Y~lfi 1Mcol'wt 10 i j,j ... ~.:!>H •tM..:r;:Hirt 1 ""'" 1 ""211 1 1 1 W521l-H'l. flt...._..,...,.p 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ..__,__~1~-+-~-+--+---;---+-+--+---;----+-"'=·'~"~~~·'~...,,..~~'--1~ 1 rnn~ T~ 1 : 1 IOOJ 1 i i.os2l1T "" 1 ""'"" 1 ~m "" 1 """'ª 1 •M21"1' : 1 j~ISB IA.tis:isr " i f&D UUI 35 t~ i r¡Rtl-lnWl".¡.!¡;tftC"I 5 U.;.¡¡.,._1,1__,.;.utdl:";r...~ SJ.1-1-s..-;ioe,...,_ ·1c MASTER INTERFACE-Analog to Digital Converters (Cont'd) ::: ::: Binary Outpul (~ l·,-,--'C-,~-~~-,,.~~,~-,-i~..,---,l,..--°"""1--,~-,...l~~l~-,-l~-:-~~¡·~-:-~ 7 ¡,.-~-,-u~,-~....:.:::---..;: ,,. 1 ! 1 1 ! """"' ......... .... \ 1 "" 1 1 1 jucm . u ,....,...._--...: ,t.t,J.X&:J.UA!l~ ~~ '~·-'-..,....~'--+~-+~~,'~~~t-'--+1~-+-:-+~-+-'--+'~~~:~~~~-~=---~ ., "' ""' ""' ''"" 1 ~·tZ ......... - 1 1 ! 1 .... 1 ~ 1 ) 1 1 ---1 1 HS!1UT& t 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ,.., 1 1 ,.., 1 1 1 1 1 1 1 1 1 1 1 1"'~;4T'91-- 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ~ 1 j ¡ ..... ~....n~ ~~-+~~......,~-+-~-r-~'---¡~-+-~-'---'--~.....J.~"'~'~~..,..=-=-~·...,,..==~~ 1 , , : I::::~ .;:.::~ ~ ' '"''"' ·--.~ : __ --__ ·-·-··-~~-~~--~~-~!,~- ! 1 l""'~~..,...;,..._"~""' ·r~ ,, . ..., 'M.o.:·x~ •'••"':...r~ ....... .... leu.-out•~U' ....... -N .. 11,. ..-, • ..-. 206 MASTER SELECTION GUIDE INTERFACE-Analog to Digital Converters (Cont'd) -- -·-""" °" .. :1-.SI>... .... .... .- .s P-1 °""""" ~ <- ,, ~ "'- -..... ..... ,..,,. ;:;. w ~ ~ - ··~ ~~~:.:-,-.,--:~.,-,.....,...--,~~-..,-~:---;---:~-:--:---:~-;-~~-'-~-.. 1 (Cont'd) r.IN~ 1 MHS21X11"otMoc~ ...._ : .... : 1 w ... 5.'.'tl ... ~ 1 1 l.llÓ,.""CIM•tMct~ 1 1 "'"" oJrilc;rC>Nirl 1 • 1 l,l>j5..."" ... ">1 ot M !-1. .. -s.a .... "'".eoc:Hc ,,_ '" """" ..,., ... '" ""' 1 M;>S74.1 1 . 1 """" ,...,,,.,. ,., ""'"'' - .. '"''"" ·--'" "·' "" ·= --1 1 •=»= 1 •=>< " "" ""'"' 1 ~7USE T~~ ,., 1 1 1 4"';.7.U "' "" 1 1 1 ..,..,., _... 1 1 1 1 "'""" , ......... 1 1 1 1 HS',M7~t~ 1 1 1 1 ~7.Ct , .......... ""' 1 1 1 1 1 """'" .......... 1 ~laslt~ """' t~1~1 ...•rt.vl·55"1llll5"C) s~~:mn~ ºll'PC-'Valul ·- .... ~ ... s.rua'*"" ........................ ,,..... . u.,....-.. MASTER SELECTION GUIDE INTERFACE-Analog to Digital Converters (Cont'd) 1 1 J.O'S1.Cll( !!!--=--t-'--t-·-t--~~+---+--~--t---+~·~-+--r-~~·--~ .1.DS:c.AB " 101sn.: '° 1 "º . 'l_J ,____,__ " "º '"' 1 L_J f 1 1 1 1 1 i r 1 LU-1 1 1 1 1 1 1 i CT~21C-pl. lrl'IR~.-ln11m1IR1!1..oc. 209 M.:.. ln-Murt""""'"l lrpv!J. !.LH-s..r.p¡.1r>dHold l07S'!T '" ~S2!>Cfi tp..:sn MSS211 1 Htw.JSn HS'.>2'HB fl<':JtdSt'I HADC.UU f 11-p•l!Sn fZ!t7,:ttt¡ ltlUUrl).tf .. ílUT1flllf Manb (l7U. nn.nn. 11"1 lS l'Ll.rrtl cnu. :u1,11n. '" klnh (21U. 21JS.21n. nm tw1U. {1141. l1lt,t1'~ 11 .. 1 !-tltltsUl fMe-r-tltUT ~mt,J:)()(] Hl'.>HUD'.> H11m lllel, :na,n«. Hl57UU.5 Manb (VCl, %131.Il«. "'" HL'.>7U~1t Hu1lt (l7Cl, Ull,V~ "'" •iUUIJ/it.I f Ka.rrb (170.J, VSl,l1U, '"" }U'.>71lUl).2 t Hanb (1101, 11ll.'Z7«. UU) Hl'.>7UUD.tf M.,rts {J'Jl)l, ZIJl,7lU, "'"" T~70T tT........._P 1?570.\J 1l~P ""'""" "' '""'""" -·-P11.o.n-~1..i.C1u>rt Se<.Ou!-S..r,.!o._. DAM Y pi >» SLnmad A A] EF o A DA EE A "Tr so pr "ire 210 RA - ·ic MASTER INTERFACE-Analog to Digital Convenors (Cont'd) --.. - ~- '- ""'~ -. _, .... ::., ::: ~ ~ " ... ~ : ~ ...... - :::: : :: .~ ~ - - "'-' - ~ .... Blnary Ou!put (~. " "' " "" 1 i 1 1 1 IUPS7'll ,-;;::-;.: 11/! """ .. 1 1 1 ... 'tt'fl2t!C ""' ' "' 1 AúCUtl ·-1 1 AX1211C ~ " .... • 1 1 1·~1• -.;; ......... 1 "' .-.07~~ "' " "'" ... 1 1 i A.OCl~!IC -1 1 1 1 1 ..:C~t~ 1 1 1 1 1 '-"'""" -1 1 .t.OC~I~--- 1 1 n.tl2'CGM tn 1 nc122W tn .., . ... """º'"' --.Xl205C:-1~ ..oc:~ -1.X1m:c.1,.... 11(2--0 1 "' " "' HS~lce 1 >'55.:lOC HS52ll! ,_ ' ~1:1: 1 HSS:lZll ·-1 1 HS?.21:-C 1 1 1 1 ~·"' ,_ 1 1 1 1 HS.~lJC 1 1 1 >-l!;"_:l'li ,_ 1 1 HS!>l':•C 1 1 1 ~151! , ....... 1 1 1 1 HS.5.21!>: 1 1 1 1 1 1 1 HS!1l68 ,~ 1 1 i 1 1 1 1 11S.!116C ''"""' 1 ! 1 ! 1 1 i ICUJM·ll ·~- .. ,., 1 on""' ,,,_ .. :1(3-0.,.&::o'. 1 1 .. ;;-:e "' 1 ....x:llf.!.ZICo ,.. 600:: !.o 1 1 1 1 1 ~~"":' "" " '"' 1 1 1 1 1 W?7713C .,,., ... 1 1 ' 1 WP1~5':S ........ " 1 1 1 1 .1111~;.ce ll(tlA'--"l !.': Wt115-llll .11.-=-,. v. :''H WS71' , .... ,,. ""' 1 -¡--:-~-: -. -1~~:~: :== " 1 1 1 1 !•:=Ufll - ,,. = 1 1 ~·- " 1 1 1 "' 1 : 1 ltUIU •'lJ'o'lll'""" '"" I"''""' ··-,,..., tW.-.f...._.-...-........,¡.!5.•io12!°C1 1 .. .-~· ..... JI~ .... ·r~•t;A ·•q<:J>f .. ~ .... • ...,a,,....,~.-..i-.11m • ..-.......,.~,...1•- 0 Nabornal Semiconducion Corporation ADC1210, ADC1211 12-Bit CMOS A/D Converters General Description TAR ADO:210 ALIC1214 arútow powpr, Ir 30004, 12- AN A The derncel 05 COmoaia Corrypeas Tan orbe va AD picatos ol a releranor ro Lage 2nd a Eaocá 10 Operan. Inckadog e: un 50 denco 400 DO UC esi AEPEDUITA On CHOS ario] setichaos, PRECISO (4 1oT Nro ti AA lago cetveork end FET mart rompegtor. The 12201210 oñerz 120 remolubon ama 17D acc ar, and pue ADC1211 pcs 12D rasol on rn 100 aura ey Tha rrartis autors aró dect compsibie min CUCS lag. Tha ADICAZ 10, ADCA211 wi pporala quor a endo Op 1angs, command bot DO nd Da Bog aná, and opurbla Maris a 2 SOPuOLA COn eros moda og controñad START-STOP comezón mora. The de moss are Sucia of maling a 12d compro 1 100 ys A E SA Both denoas vs ¿ranable na mutary 20d ncustna! 1enpack- hara Pangor Features e 12 Dm resoruton 1 131,159 0 22159 noninaamy a Sn + Ev 19 2135 supo range 8 100 pa 17-130 jas 11 comentan rata e COS compatible putcutr u Spolsr ox yrapola? analog inputs 200 enalog min rmpedaros Block Dlagram A e e putetj Connection Diagram Duabio-Line Pockage . not U KZ tasca nl lr erario mr ru BL pon! es su] + “ O a mm AN % £. py -. ty pa ral as il 4 rara , ES rn br E ar Lo E DL, our na rga S O rr e ” Ve Order Number ADCI210HD, ADEITIOBCO, ADCIDTIHO, ADCI211HCO See HS Peckage D24D Tarn. 3 211 1~=~ C1210, C1211 ·Bit OS / onverters eneral escriptlon iNAOC~2!0 -.r.:121tarole"W"'°"""',~~12. bltSU::CS~J..:l?"CaT'lllb:Jn.ar~~COl'T\."1«$_ T?...~1i11.&f6(.C,.,,.,...!lfl~r97.,.....rig0Me>eiw­ ?IG&t.ot\Of er.lett~ • ....,.,.014~ar.,;j a. r:.._-.ct 10f e>;>e"l!Jo:lt\. ~ .. ::t>il'JL'OO~oare~~~•;'fl'::•.r.>..!tion ~ ci..r.:s arWc.-; 5'Wf'!tcho~ ~ i.~ .,..,..._'h(l(l' =--i 1,-. R-~"I 1.!!'""' ...,.~worl<. at 1 rcll . '\ ~t..., lw .l.DCt210 o!'!~ ·tirt ~'-'-'°""'ar.o ,2-M ~eo.<>a.......,., l 1""1t"'>ll .l.X121\ c.:1wl t2-blu'...on...-.:i 1c..t:.1ae:;ur.;i r;y n-.. r'N.rtl..'.l bma!y QPJ!?wA..! 11'9 <)rf::>l'Nert ::tr, ~anévno:;i.'Y ar-.;.1~ 1.,.,.,,$\n.1~&18W\..,.w"'ot11SKW\rnc..:!9 1 t111C9'C·ec..-.!.'of.ndSTARi..STOP~~.::i'll!IOÓl ':"he.X-- ~ 11• cc:a:iie 01ma~1 tZ :wt ~ on 0 v.$ tfP.•....::lc.&t1t>'l~lldk!COlerorun>;> l flllM'=-"ilonou".S a ¡"'..'")~ne.na~ ....,...,.v-t ~ar.e. 1 nSttH rnbttfAO 1:!10HO. C1210HCO, 0Ct21 tHO, OC1l1l CO H NS •ck•g• 0 .ao AD C1 21 0/ AD C1 2+ 1 —, Absolute Maximum Ratings . dt Mintary/Aerospace specified devices are required, Comparatar Cutsut Sor Cect Durabor; $5 Secornos contact tire Kallonal Semiconductor Saba Ottice/ Power Dsupábon Ses Curvin Distribuiots For wa llobi and He dona. Marrmrur Fitterence a ? 164 Operatog Tampere Range Y ADC1210HD, ADCI1711HD TO +12 Marmun Negatve Supp!y Votlaga (V”) ma ADC1210*CD, ADCIZ11HCD -25'C to > bB$C Votaga At Any Loge Em v"r03w Sioraga Tempursire Lange “55010 ri5oc Analog input Voltage +15v Lead Temperature (Solganng, 10 seconds) 200rC Mazrrnam Cigria! Oizpui Corren: 10 mA ESDS July (Note 4) TBO V Maarna Comparator Dunas Current 50mA DC Electrical Characteristics (notes + ana 2) Parametar Condition ADC 1200 ADCIEN | Unite Min Trp Mar Min Tyvp tar 1 Resolunon 2 we Ss Lirmarty Exrar (Note 31 fon 65 a, Tar co :00183 00485 | FS fer ES kz 2 0.0386 % FS Evil Scale Eror Ta 25, Lina dastos 0.20 0.50 e ES ¿e Scalo Enor Ta= 25. Unadpited 9.20 0.50 Me FS Duantraton Error 21 2112 LSÍA Tnpui Aesistor Waluas A77,R28 25 zo iu Input Res5lor Values AZ5, R26 200 zu) ko input Resisior Rabos £/R26, RI7/AZB 05 i DÉ a Loge 1” Input Voltage E e oi Y Lage "0" inpur Voltage 2 i 2 Y Loge 747 Input Cartel Va 104 1 1 A Loge “0” input Current Viy = 0 -1 -1 ma Loge “1” Ciurpul Vaage lans 1h 2.2 sr W Loge 9" Oupul Voltage | loyrotual 0.5 D.5 Y Postive Suppl Gurmnt Y+t + 15, fa 65kHZ 5 3 $ 3 má Ta= 250 Negative Supply Current Yo 157,14 250 d 5 4 6 mA AC Electrical Characteristics 1,-25C, (notes 3 and 2 Parameter Conditions kn | Typ | Max Uta Corvernon Timo ¡MIKE [ 20 us Maánmumr Dock Frequeny 130 1 55 hótz och Pulsa Win 197 50 ns Propagayos Delay From Goza lo Data Dtos Lots 10 m3 so 152) má ¡ (0 19 011) : Propagaton Delay trom Clocá lo Conversion LtitPUl Voila~ Su:w1oeT•'T">P'lrlt'-"llR&/'"9d -SS'Ctl ..-1SC"C ! M on..mD9ta1C>.npu\CorrPMl :lOmA LllMl:ITemperalwé{So~ 10~$) 3 0" 1 ;;;.:;::::.::, ..... ~~-' ,,, __ .. : 1 . ll..'bOC"I 1 12 j J 12 J 9"' j Z&lOS.::..•e(rror ! T,. .. zs·C.Uria:lr.i:Ue(I J 1 1 J 0.50 [ 'F' !i~ l º' 05 s 1 1 1 eogatveS<.Ql)lyQ.rrenf 1 v---1~1.r,,,-2swc • 1 1 • l ctrlcal haracterlstlcs r .. -ZS"c.1N.:11 ... ~ 11....ct 21 M~ T p "" 200 •30 " "'' "" "' "'' 1 "' 1 '"' 1 i 1 ...... 1.u ........ --. ...... --.: ~......,...,."""" .. """"" ···•DZ•~· ··--1!~.,.... .... ~u ... ,........ -!~.:"' •1:";'C""r.il.XT:•:»O. •X•r•>r.o-.!-;""°Cto•P'-C•-..._l...'l.:'•;;•t><.O•:->:·:••~ ...,,.,.,._.,.._ .. ..,._"-""_,,., .. _. __ ._l."-.~•· ... •·•"9"·=!·;;.,,.c-c.~.,..."""'~'..-:::"""•.-?11:1c-><--... ..._..,,i;n~!·~~ 5,.,.,.,...:~-~- .. ...-.~.-P'•,,.. "'°'"' ...,.....,b<>C\o-.1;;io~~'.,..:l~·••.:~n~ APENOICE O 213 Bart. Ligera haty Eróm der kegora Y Bere Liers Bari bioan + cre — Carpe ia ma . AS de Mi — Ma el rr tre A A 214 ,, ..... - .-~ --· _, -,""-. _"_~::::-++-J_~,_-_,+l _____ t____ _,¡_-~~-_,+-:l_~~-_,-;-::,...~~~-_,_- 1 __ ::_~::_::_~!::_::_::_~1·_ -_-_ ... :',...~~-- _,i:I~~~:~:.~~~~,~ --.::::.~~~ --.. ~="""==''! l \ 1 i ~11~ f--+---+--'---ll-~1-'--.J-'"-----+'·--~+·""'·~~"'--~----¡' ______ _i__~·--'---'---'--"--t'~_,_-~---'1 __ _,_-t="'~'~"-~--- "~~"'~~·~""'"-'~~--' -t---"-·--'--r-+--i---t-~+-'--¡F::•;~;:~*":~·· U.cll '" >----------·----'--"--'---+--+----~"'::"~"::: ,: ::~~; 10 1 ... :is11!.o--.-,--- i i ' i i DltiltW ........... ClYolJ\S 01n11 thrr·•,,.~ mm 111'1 ¡ 1 1 1 1 e~ - 1 ! ~ 120 t.COC..: 1 1 \ ~fl:IV•t ! D.W ltt11l ;'O '-'-~----+-----~~-,__ __ _¡___~~=·~='='~·~·""""~=rt~-1 i ¡ ...S'JH)C •l+r!'~S!'! 1 1 ~l!.12'~"' ¡ t.\CJ'llC12 ,.,:n::;,, 1 1 1 1 1 1 oatl97C12t-~ .. 1 1 1 .. ,.c..-~ ):l ¡"""""'' ~~ ~'~---~------------,---+:=~=·~~-.~:~~~~:;::~:-- -- ----- -'---'~-"---- ~-'--'--~ --'-~-'---+=="-'-'=~-­ ~· --~----· -------~~·-----~--+--r!~"'~~"'~~"'~-.2:~.- -- _._. ~ ------· --· - -'-· -L·_L -~-- ---'----i1""""'"~"'--·==--- :_._, -·--·---·--- ¡ • ! 1 ~_: _,_· _J::j0~~-- -- ___ ; __ , _.~ l j ~~W11Y:l. ''' ! ~~ 1,1-:•o,.,. &5 -------- : .. , ... ~~*~---;:= c·::--e:-.- 11r.-;t 'J.• .• u.~-~ 1 INTERFACE—Digitaito Analog Converters (Contid) ON, tame lar ur O ce Lara. 2 ud mo Tm. he tone e n a Mach , KISSES a Yue 4 DACILLSIA her da, at ME can 1 er Par IDO Lo ton tant Men a “roca A E 215 IC MASTER 1 ~ lln"E FACE-Dlglt•l lo nalog onverters ( onl'd) 1 " .... 1 - ;:- ~ - "'• - ::. : ,, ... ~ ...... .. ~ - - .::. ~ " 111 .,. ""' 11~"'- 1 """"' """" .,., ,,,.,,, 1 ""'" ,,.,.,.,. 1 = .;:;;;;-. 1 """"' ,,,.... i 1 ~.Qi.(--~ "" 1 1 1 1 i ; 1 1 1 1 1 1 ... . ! 1 ~,un.tJl.11 ~ ...... p.t.ClX.S,. ~. -~ ! \ i i ! i i l º' 1 1 ' OACI~ -~ C>o\Cl~'>l -~ ~! 1 1 1 ,., la i t:J.CI~ ~-- 1 1 • 1 1 1 Ol "º' _J_J_:J J·--"---+-t---+--+--+-~--+-------.!: i ·!71 i i '""'..~ '"" 0.JJl!º ..,. ----+--+--+11_~1-~I ~.J __ ,__-+--·--r---cr"-""_'_'"_'"'___,-. 1 1' i l °"""""'""- (!J.¡J• ~-e J---t--~1,__-..~~l~-L~-.!.--;.-'--+-~1---;~"""""'~~'~""""" ... ~ 1 ,- i' l : """''""' ! 1 1 i 1 ¡ "" ,_., 1 1 ' .lOO'C.!COlll: 1 i l =="' ¡ 1 ! ~~: "' "" .. ·~ •""C"'~ .... 1111"1~ ..... ·1~.,.,_,._ ..... ~ •••1 ... :-r~• lolill-~~ut..,...._ .... ,..._.. 90 m2 37e Cro —Lomal Ya Compl UA — ne MASTER SELECTION GUIDE INTERFACE-Digital to Analog Converters (Conl'd) -- - =· ·- ~ ':." ~ h ..... -...:' _, - ., 1 ¡~·ei .. '" '--""" 1 1 1 '--"'" , .. 1 1 1 1 ""'"" 1 1 1 """"" """"" "" f-: 1 """"'" "" .~ ..... H{i: "" Ml$1ll·S o llatrlt "'"-vu.uo. "''' .. '"""""' ,,_,..,." C:,11 l 1 MN~t ,_,....." ttHJ 1 .,.,_,, ·t~n tn17} 10 •UC:7!1-ll!.IC .._....sn rmr. ntf) VOAO)CU&I --.,..en cm1.nn "''""'"" _,, ?ff),:rttf llb.1.0!1-lW.C~ !!!!1.?Hf) M:ll.(7WUI K_,_¡tU1 cnu.ntfl u """"""'~ cm1.m11 i 11D1.trs.uu.c t1_,_c:sn ttft7.ttH 11111.t1MJM1~rr f1Hl,ZHf) """')UU.lf~n C?Hl,?t!t) lf0At7~~ {?H1,%ttt) 20 KMC7l'YJJ "'-r-111" (l'H7,:tH -~lWW.ftl~ f?J11,nt7) O&.tllll:tlt .... 1zuw Ori\tlU.IZUI t mm mrri~ Mallml-lf ..... ""' 312• 1 ' ws;:n~ ,..., 1 1 ,IJ,l~lr.: 1 1 .u.is.;1:1,1 ,....., 1 1 l.l:f601X: "" 1 1 1 lw=r.&:11:u f WCI ___ 37~ 1 l lllSUlH'·! """' mu. nn¡ 1 1 lll)(~~Sf ...... 1 ••7!.4.Jt '"" "'" 1 1 Pllf~S4lC (n1(, ?tri) JO 1 i '1 1"111~!.l.IM '"'' nu1 ' 1 1 1 11'1!.tl! ,...,..,. • 1 1 1 1 • 1 tF7S.CJ .. 1 1 1 1 TI'1!>41l "--' .,, ' 1 1 ' 1 1 ' 1 S.1S.C~. " 1 1 1 l ~·""~"' r .... ""t .. ~ - ~-c..-~-,, C":~~l·~ - ,, .. _ --- ... ~,~¡.,,...,.g ... "'t-"~ 8 Mar pr ] dá Esperar Farga (157 9 1350) 1 tor Pessoa AS *Mrcocat » Aesuyiio en Suele Wo Maid Jus ialticiónd flia al Ed dy jerrdo d Mar pazo Pata 219 IC MASTER INTERFACE-Digital to Analog Convert"'11 (Cont'd) --.... !::"' - - "'" ---. ,, ...... ~ " -~ ·~- :.:. ~ ~ - - ·~ : ~ -· - """ - - - .... :,; "' "" . 1 1 1 ls.7~SU ·~ 1 1 ~IUIU ~ MCIHI' •-.....;; "'" • 1 1 1 ..,,.,,, ·~ ·~ "' 1 1'•1).U4 .... '!' ,.•no.i: "" .. l'•t).(J.; "" .. ........ '"" "' .. i \t'l'1WSC ,. "' .. ll "" 1 >01!.StU·S "' ._ .. 1 ... 1 '"" ... 1 i 1 tlll!i"tf ... "" .. ,.,., .... ... ... "" 1 .._ """" .._ """"' ....... ... 1 """"""' .. 1 ~'~'° ,,. 1 ,_, ...... .,,. 1 1 1 ~Vil.ria-- 1 . 1 1 tw%516os.o.: 1 67!c<.c.~~ 1 HS7!.4St '"""""' "' • 1 A..?1"'4!.C 1 • 1 ,1,:m.•~ -1 1 1 '-'.>7 ..... '!.':l&. -1 A.ol!.ol!>C,U tKu:r 1 1 .l.D15-15t 1 1 1 ..,7!>-15->J ....... 1 1 1 .w1s....:a " ., 1 . ..:l75"1.r. '., .lD:~.ua ., A!l1!-ilJ. .. .t.OJ!,.i;:-t &:17$.0CI "'"""" A.:l'!-1~ ...... .t.O'l!.·U'- '1 1 t"'C"~~ •fr,>QIYJt..I ·~ .... ~~ .......... ._. .............. '*"'~-- MASTER SELECTION GUIDE TT INTERFACE-Digital to Analog Converters (Conti) e. Coral Corr ray C—Loral Ta Compl PD ig — bo : ye Esl.— internal laiencz MA — Mura 220 ...... -- ~ -~-- ~~::.; ....:¡-: " " ' " ,. -···- 31~· r5 ,,., - "' JO "" "' "" "" ,.., '"" .. , ..,, ·~ ·~~ " ···:· •...: ~. •"!• ~ - 1 1 1 1 ! 1 1 1 : 1 ! 1 1 1 1 1 1 1 ' 1 1 1 1 1 . 1 1 1 1 1 ' 1 ~ 1 i - C"';: • - ~ ,, ~ ~ ~ ~ - -- - - - 1 i i 1 1 1 1 1 ! 1 1 1 1 1 ! 1 : 1 ! 1 : 1 : 1 ; 1 1 1 1 1 1 1 1 ' 1 1 • 1 1 1 1 1 ¡ 1 1 ' 1 1 1 ' 1 1 1 1 ' i 1 1 ! 1 1 1 1 1 1 1 1 1 1 1 i 1 1 1 1 1 1 1 ! 1 \ ¡ 1 1 1 1 ' 1 LJ 1 1 1 1 1 ! 1 ' 1 1 1 1 1 : 1 l ! 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ¡ 1 1 1 1 1 1 1 1 1 --- ASTER L CTI N UIDE RFACE-Olgttsl nalog onverters ont'd) ~. ~ ·~ : -- - - - '~- - - ! 1 i lcJS.l~ (C....,,-~ 1 -1 1 -'="'5-')G'T ,....,__ 1 1 lt.::T!>IJ~ -~ 1 1 l.C'~lT ..... 1 1 1 1 •i ,~- 1 """' ·-+- ! 1 WKx.&:l ··-"' T 1 1 ~;:-1u::is ""' 1 """' -.. "'"' 1 1 AOJ;lt 1 """ 1 1 """" "' 1 1 1 ~Ut~_... 1 1 1 OAC'.34&::·1i .......,._ '"' 1 1 ~Sf\-111 ............ 1 Cl.ilQl~ 1 1 ·+-1 1 o.i.:-;).t;.U~ "'' • 1 1 1 """°'1\.PSl~ i 1 ·~ 1 ~1\KlZS -1 ~il"Cl2U 1 ~ 1 \ 1 t....::llTJSUS ........ • 1 1 i M~lJ..&12 ,...,_ 1 1 ~EL 1.c.ro: 17~. 1 1 1 1 CAC9.i.Y, _,,,. "' i 1 1 1 ~.U.lt ..... ¡,.- 1 1 1 " 1 1 • 1 1 "-""""' """"" ,.. - 1 1 1 1 OOClr.(LU l ..U0: L_ 1 1 1 1 t:!Cl~l~l l.C.t«_ " "' 1 ' 1 1 1 '1 MSl'I ..,..., ' 1 1 1 '1 lol:'l.lllH t~!- "" ! 1 ¡----¡ 1 ""''" "' "' 1 • 1 """""" ............. . 1 1 1 . 1 o.i..:;.3~12· ..,,,..... ""' t~l~.n~l·Wl:i12~·C) SHc"~.Ol~n:stvn •1r;:ca•v-.. ·- .. ~ .. ~· e.w~-.~tn~uun,....tff.l ... ttoll,......., ,. 0 7 NDA ius PT i Cir Toro MR to MASTER SELECTION GUIOE -- INTERFACE-Digital to Analog Converters (Cont'd) -- - ;;-::. .- ·- ~ : '::' .. ~ ... ~ ~ . ..... - ~ ~ - - ·~ : ... ~ -· - - - - - - - - ~ - - -.... 1 1 1 1 1 1 1 1 1 1 -~ - " "" 1 . 1 ~:J 1 ''"""~ 1 1 1 1 1 !W:JYi.."t-t: '"""""' "'' 1 1 1 ! 1 ! i ..:i:s1:~ "' 1 i ¡ l tCS.:~..:oi t "' "' .. ! ! ! 1 1 \1'0:0 """""' . 1 1 1 1 1 1 •oan>< , ........ ,. '" ""' 1 """' ........ .,... ' ... . 1 1 ~lSl!t··---. - 1 ! "'""' "' 1 1 1 1 "'""' "" ID 1 1 1 ..,J'JOT '"' 1 '1 l ·- ·- '"'" .. ' "' 1 i 1 i i '¡ l r11;!.llr "" "'" 1 '"~ - " 1 1 1 1 1 ..,,,. .. "' 1 1 -::'.'5-t!.K "" " 1 1 1 A!ll~T "' '"' "" . 1 . . 1 . ' 1 ..... ... nw¡ Ctll..11 &:"!! 1 1 ! 1 i ~lit '"""' "' ,,. 1 ! 1 'UQl?l ,., r:tU) .. l 1 1 1 1 --· 1 -1 -¡o 1 1 1 1 1 1 -· i - ""n 1 1 l ¡ 1 1 ---1 •t.....,_r:sn 1 ""n 1 •MUs.imc-...,...:sn cnt1.::ntl 1 1 1 . ¡ i llM.t1i.11n1 t1..,...asn -..... 1 1 1 1 1 1 l llllC'1l!!Hf . ...,....,. ! rttt•.:ttfl e 1 i 1 ¡ lllla14.-U::~ ! fm7,:ttf) l 1 1 1 ¡ •~!ol:Ul~n 1 mu.mt 1 ! 1 1 1 1 -.. ........ -1 ""'·""' 1 1 1 1 1 i 1 •t.t.aJ.UU.C~Gn (2'ft1,?Ufl 1 1 1 i : ! 1 n .. 1.:rWJll1 ~n ' 1 1 1 (ttfJ,ttt!} JO 1 1 1 ! •i.i.::"loUUlf 1 1 1 ,_,_,." i cn'1.mt1 1 ¡ 1 1 1 1 1 1 1 n.1.os.i:.ut ....,_i:sn tttt1.mt1 1 1 1 IT ¡ 1 1 1 1 .. ~,,.,lol.1111~ 1 1 ftt17,:ttt) ~ 1 "'---. ~- --- 222 q E ” FR -.— Barc ri ¿r al $3 3, Lima a Le ,z 1 Por Ve, BACTSAIA he then as CL pre o cn nn 2 ep strong Ha Vado Hacer ¿har Badg hnos aorta silla! dol ds proa DN Ea apa tn ma 223 IC MASTER lffTERFACE-Digttal to Arullog Converters (Conl'd) -~ ·~­ ~ -· " º'" "º "" !.....--:".\. 1 ,,. -" 1. 1~1(.J~IJJ 1 1 1 1 ' i i 1 .... 1 1 1 : ' ¡ i 1 1 1 1 ~~µu.s t..,--:;;;: 1 1 ' 1 i 1 i i 1 1 1 i S.:'"~i.\J ..._.-- I 1 -¡ / ¡ 1 1 / ' ' ' !,.'l'~IJ -.- 1 1 i j 1 1 / 1 1 S.1~11.S t~ . !s.,!>&tS t~ i~~!A €:: 1"'°7~lJ A:J 11:1µ11~ n.-:;:: '---'---'--'-- 1 1 1 1 : 1 1 1 l:IT!l-lhJ .._ ¡ 1 1 1 1 1 1 i i 1 J.:l'l'!>-111.S ,.._ 1 / 1 1 1 1 ¡ 1 ' 1 ' -1.:'l'~lJ ..... 1 ' 1 ' 1 1 1 1 J..:':'~US , ..... f 1 1 1 1 1 1 1 1 ' 1 u~~;.1. ,..,... ! 1 1 1 1 1 1 1 1 \u=7!-IU -r 1 1 1 1 1 1 1 1 iu;75-11s ,,.,.... 1 -¡ 1 1 1 1 1 1 1,1.r73-1.:,a ·-¡ 1 i 1 ! 1 1 1 ' ¡ ... .-;-~ ·-' -¡ 1 1 1 ,,w:'!-IJJ. """" ¡ ! 1 -, 1 . f 1 1 1 1o&n!-UJ -r ¡ i 1 ' ' i 1 l,IV;'!.•·ll:S. '"°""' j 1 1 1 ! 1 1 1 ' ,..,,.;-~u ..-. ' 1 1 1 1 ' 1 ..,..-;-e.:u ....... / ' 1 1 1 li.r.a.:;s ·-' 1 1 ' iv;1~ -i : 1 1 i ' 1,.,,.~6:ll -' / ' 1 1 1 1 1 ...... :-E!'lS ·-' i ·----:---~i 1 .<:~:;:,.1!-1 '_.o-f~~~~~~~~-+--'-1--__¡___ ¡-·----t- i!iSn-l!Cl rH 1 •• 1 1 • 1 · 1 ! 1 i 1 1 1 !cucs::m ,,..: j ¡u.;.um ,.~ 10':.t:ltll ,.. ,. ¡,.m . .1:1 ;;;-- \n11~11 1 l""l"'l;.K.r.c:o-D~ 0 1r;.u.'l'- ·~r ,l ..... ~ .. ,._--• .... ""'"-~1 ...... 11.., .. - .. 0. ... ,.-..c J 224 MASTER SELECTION GUIDE -- INTERFACE-Digital lo Anafog Converters (Cont'd) ...... - - ~-- .. ,, .... ·- :. ~ .. - - m ~~ "" ; · _, - - - -"' rtU!J.tlM ~;~ ..,. 1 1 WF7Utl ......... 1 1 1 wn&.:::.1 ......... 1 1.11'76Z'S ,...,...... .,. 1 1 A!l7~1!. "" i l UJ~ll ,.,.,..,,.. l?Ul'l 1 UIJ!J.(11 t't/l~ """ "' 1 '"'"' 1 i TT'1~tJ 1 1 . 1 my.t~ tT~ " ''° , 1 1 1 So,!.&~ ,_.. 1 """""' ,. "" 1 . 1 Wt:oi;t. """""" 1 .w~m.i "'.,,.,. 1 1 1 loU112C'9$ " 1 1 1 1 1 U.i>l:lU ....... 1 1 ! WPlZ3tS ,...,.,,.. 1 1 "'~!:l.. ..... ¡ 1 i wn:;J...~ t ....... " 1 UPlZm "" 1RY.1: .,, S.i!!.&ST ,..,._ ... ""'" "' " .i.::n!>&lJ "' ~1'!.'11: "' ""'"' "' 1 A07!!.l~ 1 .07~7J "' "' ,. 1 ..,,.,.,, ~- 1 1 ~7!!.&2'5 1 1 """" 1 1 t57.!>4l$ ,~ 1 1 ~7!!o&!i.l " 1 HS7Y.~ .~ " 1 l;;7Y.S.S --1 ~7!:-'~K ... _ 1 1 .i.:;¡y.~ , ...... .. 1 &.:;J~ 1 • .IJ)J!.QJ "' 1 .\.07!!.&2'5 ,.,, 1 1 1 l.OJY.l" "' 1 1 1 J.Ol!>o'll "' i 1 1 1 "P15":'..l - ., 1 1 ¡ J..:75-':.J ..... 1 1 1 1 ..07Y.:'i 1 1 1 1 /'-Gl~ 1 1 1 1 1 \,1,,:ll'S'll ·-1 1 1 1 • 1 /J.!rtY.35 ,._ " i 1 1 , 1 1 , 1 IS;!;C.Zl.1. ,,_,. 1 1 , ! 1 1 • 1 ¡s·s.:::1; .-.. - c....~.., CTt~:-,~ ---- Wbl~~ ..... _......,.. 03 1 hatore Y Maca] Vespa tre Ple (557 ts 12990] Pr Radaton Resinas Toca Vio “Uasourt » deber dt Bard teca codos bl ral CR da pedir e a paz read. 225 IC MASTER INTERFACE-Digital to Annlog Converters (COnt'd) --=-~lf-'--.,_~+--~---,-~rl~i~ri ~·~l~l.__~1~.lr--~"""="'~~·._~• =---'--1'1·~,-+-!l-'-+----r-f---t-;-t-+-t:; x : i ~u:~ ___ _,__,__~1 _ __.1_--+-_.,._l~l-\ _ _l~l--,--r-I _ _,"-::":-::',,-"_~_ ... _ ... _·. ~--'~-41~-+1 ~+1--:-~-~-. --+-: ~.-,--+---i,---, --i.~:-. -i-11 --+--::~~~~~~·~. ~ \ l l ~ 1 1 j X ~ 1 : l / I ; l i.1111'* t U Oo10Jn1e.~~ =----+-~--+-''-r'----t--+-'~i--+-~'---'--+'-+-='-;--1--¡~·=""=""'~~-~"""'"'-­ ---+---ir--t--':'-ri---t--+----,~-r-'-+--i-ll : ~--+~=':~~~+---'=._~ l >-::T:.:K -----f-'-+ll-'-+--i-11--'--!---+-'-+-"----i---+--+-+t--+~~~~'°'~.-'~ ... ~.,,-.; • \ 1 ¡ ¡ ; ¡~o.r.:.s7A.SI -----+-,-+ 1 -+-i-¡--,---r--r-.., 1 --r-----i-.-. -lk;~~ • 1 ! j 1 1 ¡ , . ¡ M~l ~ ... ,,. MASTER SELECTION GUIDE .--- INTERFACE-Dlgltol to Analog Converters (Cont'd) -- .. - "'• - .. - .. ... ·-· .... .. .. - "' - = : ... .. -) ... .... - .... ... u ,,. 1 c.i.:1va: ...... ' ,, . .&:175.:ll "' ... 1 .&.::7!.llll "'' 1 . .. UJJL ...,,...... ~ 101Slltl '"" ...... ~ . U1llll ..,,_, m~ " " "'31'.21l .t.:l752lU , ....... a.:imn ...... ,.. ,,. WP?~ll 10 ·-"""''' ... """"' .,,.,,.. '"""""" " " "' """" ,,. t.IMQlZ 1 C-.:1110 ~1:'.12 "' ""'" ........ .. '"'" , ....... )) 1 Cl7!>45"1. 1 .t.:l7~5J 1 "'"'" , ..... • 1 """"' , ....... " • 1 """""' "" 1 ~l.."'JPKlt~~ °"""""'~ u ~u.o ............ .... ...,,.. ~ " "" Q11CgJn.1M...._..._ ... - 00C:I25i).10.ll.C-OOC OCl:l2!i0-U).) t.C-OOC ... " 1 .t.:l~lt -.l.07s:l!J tPlmto:r.11 " .. ,... HSO.tia"11..ft H ~ 1 o.i.::ueotv a;.,'"'""' "' 1 0.Ct.'"":111" a.,,,._ .,.. 1!.211( "' a,:l7521T '"' 1 ~m:r. 'l lD7UU .,,,_.. ~ ! \ tU/hbtill ª"" 1 U1Ull SC/I...._. fl'"'l ,5 " " 1 1 1 AC75.ZJK 1 • 1 1 All75,¡lT tw.ui ... 1 1 1 .t.:1n.J1i: ...... :~· l • 1 1 "11'1!.211( ......... - k .. e-.~ tT~T1tor-.p ..... --- ... ..___._,,,.,. ~P'U W.,1t-~ 226 INTERFACE-Digiial to Analog Converters (Cont'd) nl Me a] oe Ti Ma im al 12 1 aer, Cama = pe in Mn er Ta . A TES 2sEA24ES REZBAJA AD A TR EE Rasrton Eeyrtarnca *Tyraca! vetar Mc A Seed Locá medical oder Eta dl prod ed Ed pas apta. : 227 _1c_MA_sTE_R ___ ~--~---~~-~-~~~~~---j -..... ~ ERFACE-D!gltal nalog onverters ont'd) ,.-~- ..... ~--~~~~~~~"-,.~~~~~~~~~~-----:~ ., ,_ :... e¡., r1 ,...... 1 ;!' t ... .:-- ~ ::. ~ '::: .... 1. ,.,. " 1 ¡ 1 ' 11.1"7!.1\J ""-"""'w . -¡--¡-. -~--1~~1~ __ 1w..-rr,, l 1 1 1-~--+-~--·--r-;--r-¡;:;;;~··~ 1 ' 1 \ ! • ) 1 1 - \ l ! ~~~:'lJ .... , ... oll "? 1 ' 1 1 '#'_ . i ¡.· i _,___¡___.i'"'"~' ~ >-'-+--- 1 ! ¡ ~ ____!_________' ¡--r--r 1 ~ 10.0.:l:O:~ '~ .... 1---------1~-+-~l !~---r--1-· ;---¡ . t • ! k9;'_;'.~ ~ ·~ 1 \ J , 1 ¡ _j _ _!_j_~J___: __ J_, _i __ J:i1mw @ 1 ! ¡--;-¡--:- ' . \ ' 1 ! 1 • !c.i.u.:t:t ,,. , ¡ 1 1 1 1 1 1 ~ iuts:m' r111 a. 1. ¡' 1 ¡' 1 1 i ' -~·=· .. '"' .. ~-+--·- ---+-- 1 ¡ ' • U 1 l IT_ ---.t=j~- """" ,., ..:: . 1 t.! 1 i L'"'"" ,.,~ 1 ( i 1 , '-="~J~e lll 1 1-'--t--'-+l -l--i---+-.;-o: t---+-+---"---J==-='--; ~ -:-·-,--~:f---i--'---'--'--+--_,--,__1_, __ _,__ _ .H f-'-+-'--+--1---+--t--+'-'-'~'f--''-~---+1, _ _,__-t--~-:~-~~.-.,---s ~--:-~~--~-+- -t--; _ _;j_: _:---~'--~11 _--,.c~~~·'"'~__, r:::. __,_J__¡--__ -_'._~-+--~'-+'-+--+-+-----<>=-'~~--. 1 1 '"" ~'.- ~ ... ,.. .... -.q •t,...u· ~....... ·~·,,.,~ a......._ ... ~-:".-.! Ul.I 11 ,..-w: .. IM ,_.,, ........ í CTO-—Comal Ty Coma A e mA id Map —élsproe — toma Furterenca —U MASTER SELECTION GUIDE INTERFACE-Digital to Analog Converters (Conl'd) - :::- "'"" :r~ .. ~ "'"" ~ " ...... - ~ ~ ~. . -· -~b·(7.f;i: 1 1 1 "' "' ~X " 1 ¡.....,,,,, ,...., ;- i 1 ¡,.,,., " ,,,, " '" 1 ¡...,.,-= .. , 1 1 1 !uo•b.?7CM ,...., ,.., 1 1 1 1 1 ! 1 ! 1 1 - "'~ ... '" ~"'o'.~Atl l,..~'9;'.tlt.\!l 1 --=~!tcl.t.D " • 1 '-""""""""' ~'IC!t'-IJ '! .1,.,~/IC'tAD Q_)IJ• 1 """"'="' ,,, """"'= "" " . 1 """"""= "" MOlll:Kt lidll mm """""'' ... ,. '""' •/ -·- =~ 1 1 OWIZUMC ..... (r.1')20 1 -· ... mm " '"" i 1 w.c..cu:i ..., . .._ """ 1 ~.~u~ .......... 1 """ Ol,'l• 1 l """ ~TWaaNite '" "" 1 1 o.wu.ux .... fn>'l) :~ 1 1 IM.(,,;l:?tlMt fntt¡ " 1 M:.IU.lnt.1 a.i.i ª~'" ! 1 MaU.llM-1 t ..... ,,., . " XX> 1 l»Oolis.J:lf -~ 1 ~9CJj......._.c. ., n.i...,,.;.3j ~- --- "" l).l..."'9J;'7..&0~· "" ~"71JAU ... Cl!1f'I 1 1 1 ll&CHJllll '"" cnn1 " 1 1---+:--: 1 1 ~t!.12 l:.C-COC " L• "'" 1 1 ~12 ·= "'' 1 1 1 1 1 :-61!.11 """"' noo 1 1 1 ~1: • LC-OOC ,., 1 •e= 1 1 i 1 ~-=10 ... e.ax " 1 • 1 ! 1 1 IOA:Sl31l&~ -- ~~., ~"'"'"" __ ___.,..,. ~h·~.a'~ U.-'~~..:tfl"'\I 228 Connectlon f'lagram ""·n· ..... ' " t..:'1 .. ¡. ,., l "•;: ........ ,. ",,l~ ".; . "' 1 ~u~ ::::· ·1 .. • 1• •• .. . , . ., lcpVIC'W l\.J••,'!lfJO••tt 1 ! N g < ~ ¡:; o < Absolute Maxlmum-R_atings' lf .. ~, .. ~~ .~·~" .,.· ~·lred. contKt U. N,atl')nal ~IOf· Sa!H. Offle•I Ol1tntM.rtonfotav.ilablllttm'ld-.pectf1e111ton1.. ~R.t~~V~(V·¡ 15Y Lle1omu,,."'9gl.~$upptyV01U;pt(V-J -ztN vona;a "' A.f1'f LOQ< F'w'I v • .,. 0..3\1 ~l""'-'1VOl'..&0& ltSV M&D1lU'n°'91111cv,p.rtCo.A c..ner.t !>O rr.A. OC Electrlcal Characterlstlcs 1NoYis t al'>d2J llln ·- T " l.r.oatltyErTt.W" 1 (N~le3) tci..1(•6SkH:. r,.-25"C la.J<;•l>511.Ht Fui!ScaJ•&rO' 1 ... -2s·c.u~1"° Z.v~tnor T,1,-25"C.LlnadfUsltd °'""""""""""' qu;R....ic:rv.....- R27.R2!1 ~~c:irv~ R25.R...~ ~Fl-lo>Rlill09 R25JR26,R27JA2!1 t.o.::c·1-1~V;.1".1;9e l.OQC'V"~'lo!t&~ L'V'C-,-~Q.6flll'>t v ...... 102•v l09C"V'll'IQUlc...TWll "~""º"' L09C"1-~vonao- !~Xl"l'S -1,,.A " lOQIC '1)- °'*""' \lon.Qe loufS.1)6A P~~OITeot \/" •15V.la.1(•6!>1o.H:. T.1.•:?S"C ~th"95.WfCuT1o'\l 1 v- - -1~v. r..,•2s·c ~:11orOIJ':PUtShon-C.ctutO...ation Pt7W«Olssi;:11lic"I OperaDng Tempot&l:.I'• R.ani;Je AOC\210HO.AOC1211HD -SS\;to+t~- ADC121~.AOC1211HCO -2S"Cto "+~~ S~T~bseRange -&S'Cto+1~ lNdl~l~10~) ~ ESO~(Nol•4l . T"i;i;:¡: ADC1210 M>C1211 Typ llLn Typ - .... " ., :0018.3 10.°"88 '·~ ::OW~ '" 020 0.50 '" 0.20 0.50 '" :112 :l1/2 ... 20 20 "' 200 200 .. º' " " ., 05 0.5 ' "" AC Electrlcal Characterlstlcs 1 ..... 2s-c. {Nc»es 1 •rod 2) Typ Mu -~T..... 1 1 100 200 ... 130 65 "" 100 50 150 1 1 ... " 30 - t:'--_.-C.,_~ ....... ....,.."" v• .. 1~2..:v. v-. -1$v .,...=--......_•t.19•~ -1S"C1e ·1~-Cbtv-e .o.oc1z1:.-c: lX•l11"'°--·:!"C••t5"COar ..... ..:>.:•i•~ ~Z'\1.CO -·~--·....-.-~ ..... .--.... .....-.v•,....r."C..,•U'C""-•-•-..>~ou • ....,,..,11'1_» ..- .. ·~n·1~0U"'G· .. ~ ,,.......:1-.....w.1crcu1.~ .. ,..,.._.1.1. _ .. ...._. __ TM¡;l~~·l!l.fl-l Softvare and applications. Ed. Prentice Hall, 1986. IC HASTER, Yols. l, 2 y 3. Hearst Business Communications, Inc., 1988. 231 Kernighan, B y Ritchie, o. El lenguaje de programación C. Ed. Prentice Hall. México, 1985. Linear databook. Vols. 1~ 2 y J. National Semiconductor Corporation, 1988. Rev. 1. Mlcrosystem Components Handbaok, Vols. 1 y 2. Intel Corporation, 1985. Morrison, E. Grounding and shielding techniques in instrumentation. Ed. Wiley Interscience, 3a. edici6n. Norton, Petar. Assembly language Cor the IBH PC. Microsoft. Norton, Peter. Programer's guide to the IBH PC. E.U.A., 1985. Microsoft. Schildt, Hebert. Turbo C, the complete ref'erence. Borland Osborne/Me. Graw-Hill, 1988. Schildt, Hebert. Programación en turba C. Ed. Me. Graw-Hill. Espal'la, 1988. Sistema operativo MS DOS 3.3. Microsoft-Printaform. 1986. The TTL databook. Vol. 2. Texas inst.ruments, 1985. Versello, Robert J. y Reutter III, John. Procesamiento de datos, conceptos y sistemas . .Ed. Me Graw-Hill. México, 1982. 8 bit microprocessor and peripheral data, Motorola Inc., 1983. 232