g9 E, 4 UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO E 51. PRA FACULTAD DE INGENIERIA DISEÑO Y CONSTRUCCION DE UN CON- TROLADOR DE DISPOSITIVOS COMPATI- BLES CON EL ESTANDARIEEE - 488 TFSIS CON FALLA LE C2CEN TESIS PROFESIONAL QUE PARA OBTENER EL TITULO DE: INGENIERO MECANICO ELECTRICISTA P R E S E N T A : ARMANDO LOZANO RAMIREZ DIRECTOR DE TESIS: M.l, LAURO SANTIAGO CRUZ MEXICO, D. F. 1991 ~q ;;. ' MEXICO~ LTAD E NIERIA I O STRU CION E N- L DOR E I SITI S MPATI- S N L NDARI E 8 rrns co LLA o~;GEN SIS FESI NAL E A TENER L I E: IERO ECANICO CTRICISTA TA ANDO NO IREZ I TOR E SIS: .I, RO TI O UZ EXICO, . . 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. I N D I C E Introducción l. Decripci6n general de la Norma IRRK-488 Antecedentes históricos de la Norma IEEE-488 1.1 Objetivos de la Norma IEEE-488 1.2 Limitaciones de la Norma IEEE-488 1.3 Descripción general de la Norma 1.3.1 Especificaciones.mecánicas 1.3.2 Especificaciones eléctricas 1.3.3 Aspecto funcional 1.4 Descripción de las señales eléctricas manejadas ~or la Norma 1.4.1 Lineas de datos 1.4.2 Lineas de control de transferencia de datos 1.4.3 Lineas de control 1.5 Comandos de la Norma IEEE-488 1.6 Funciones de la interfao Pág 3 2. La Coaputadora Personal XT ...............••........•...... 18 Descripción general de una PC XT 2.1 El microprocesador 8088 2.1.1 Arquitectura de la CPU 2.1.2 Modos de operación 2.1.3 Registros Internos 2.2 Descripción de las señales eléctricas m&nejadas en la ranura de expansión de una PC-XT 2.3 Clasificación de las líneas eléctricas del bus XT 2.3.l Lineas de datos 2.3.2 Lineas de direcciones 2.3.3 Lineas de control de memoria y de E/5 2.3.4 Lineas de interrupción 2.3.5 Lineas de arbitraje 2.3.6 Lineas de error y sincronía 2.3.7 Lineas de espera e inicialización 2.3.B Voltajes de alimentación 3. Diseilo del Controlador ll!Kl!-488 .....•......•........•.•... 27 3.1 Alternativas de diseño 3.1.l El CI 8291 y el CI 8292 3.1.2 El CI MC68488 3. l. 3 El JJ.P7210 3.2 Diseño de la tarjeta 3.2.l El CI 8255A a) Descripción de las señales de control del CI 8255A bl Modos de operación 3.2.2 Decodificación de memoria 3.2.3 Manejo de las lineas de control del CI 8255A 3.2.4 Manejo de las lineas de datos del bus XT y del bus 488 3.2.5 Manejo de las lineas de protocolo del bus 488 3.2.6 Manejo de las lineas de control del bus 488 3.2.7 Asignación de los puertos del CI 8255A 4. Descripción de los programas desarrollado~ ................ 42 Consideraciones de programación 'i 4.1 Descripción de los diagramas de !luJo 5. Aplicaciones y consideraciones sobre el uso de la tarjeta ............•....•..............•..............•.•.• 46 Como usar los Comandos 5.1 Resumen de Comandos 5.2 Programa de aplicación 6. Resultados y conclusiones ........................... , ..... 58 Bibliosrafla Ap6ndices Apéndice A Apéndice B Apéndice C Apéndice D Diagramas de flujo List•do del programa fuente del controlador Diasrama eléctrico del controlador IEEE-468 Hojas de especificaciones de los circuitos integrados !.tl INTRODUCCION En la 6ltima década los sistemas de adquisición de datos, que se basan en la facilidad de uso de las señales digitales, han alcanzado un gran des3rrollo. por l~ que la tendencia actual es el uso de sistemas de m~dic:ón controlados por computadora. Er1 términos generales, !..ln sistema de adquisición de datos se puede definir ce.roo una comb.!:1ación d<':: instrumentos de medición controlados por una unidad c-.::ntl"3l. Est9 unidad central debe ser capaz de controlar la operación :ndívidu:il o en conjunto de todos los instrumentes integrant~s del sistema, para que en este haya un intercambio de datos e instrucciones adecuado. Una de las re~puestas. a la necesidad de un intercambio de información adecuado, fué la creación de una norma conocida hoy en día como: "Horma de Interconexión Digital para Instrumentos Programables". conocida más comunmente como la Norma IEEE-488. E3ta Norma permite- que un disposi :-ivc- equipado con ella actúe como controlador, emisor o receptor. Hoy en dia existen ntimerosos dispositivos que vienen equipados para ser controlados a través del bus IEEE-488, y se esper!::I qu~ er1 '.ln futuro prox1mo la gran mayoría de los disp0sitivo-::. ven~a.r1 provistos de las funciones necesarias para conect.ar.se 1;1l bus. Obviamente. a los dispositivos se les implemt:=nta Unicamente las funciones necesarias para su buen desempeño dentro del sistema . Existen pocos equipos, que además de las funciones propias para las que fue creado. puede tener un control del Pus IEEE-488 y en general esta capacidad aumenta en forma con3ide:rabl~ el cae.to del .::quipo. El probl~~~ existente ~n un sistema de adquisici6n a~ dat·:·~. e~ qll(" fc,r::osamente l111•:i do:- nuestros equipos tendria que venir equit>ado cc.n las funcion~s d~ controlador. Una solución es la de diseñar un controlador que pueda ejercer un mando sobre todos los ~quipos y que r.:.i fv.rr::.'2' p:i.rt.e de ningún dispositivo, aseguré.ndorios asi que {·s"'--= ·.:-•:·ntr,.:ilador pueda ser instalado en cualquier s1ztema que 5ea c0rapatible con la Norma. !-.:xisto::r. •:n o::l merc.:tdo tarj<:!tas capaces de realizar esta l::-b0r. variando i:-n c,=i;;to de acuerde· a la funciones que sea capaz do:- efer:~ttar. El o:ibjetivo de e~.te t.rab.s.jo se centra en el diseño y c0nstrucci•:.n de una t.arjeta qu~ pueda conectarse en la ranura de exp&nsión de una •:omputadc.ra rers(•nal y que .;tdemás puo::dzi llevar a cabo la mayoris ~~ las funcionp~ iefinidas por la Norma IEEE-48B. TambiE:n. es n..:-cesario que ~os C(•i.lponentes C•:.n los que se int~.gra el ·controlador sean de· .fácil adquisición en el mercado nacional, para qu.:: el costo final sea reducid-: .. La presente tesis se ha dividirlo ~n s~:­ principales: En el capitulo 1, Descripción <= +0.8 V Estado alto: Voltaje de entrada >= +2.0 V 1.3.3 Aspecto funcional El aspecto funcional incluye el uso de lineas especificas para enviar y recibi1· mensajes·, el protocolo para la emisión y recepción de éstos, l.!! relación lógica y la temporización entre las lineas y la serie de 10 funciones de iult..:r~tmexión seleccionables. El bus transfiere los datos y comandos entre los elementos del si.stema a través de 16 lineas. Los elementos están conectadoS a las. señales del bus tal como se muestra en la .figura (l. 2). La transferencía de mensajes se hace por medio de las lineas DIO 1-8 de manera asincrona y controlada por medio de las señales DAV (dato valido), NRFD (no listo para dato) y NDAC (dato no aceptado). Las otras cinco líneas: EOI, REN, SRQ, A'l'N e IFC, son para el control de la actividad en el bus. Los elernen~os integrantes del sistema pueden ser receptores, emisores o controladores. El controlador asigna el papel de cada uno de los otros elementos a través de la linea ATN (atención}. 1.1 DKSCRIPCIOH DE LAS SEilALES KLKCTRICAS MANEJADAS POR LA HORMA Para la d~scripción de las 16 señales eléctricas del bus es conveniente dividirlas en tres grandes grupc.s: al Lineas de datos (8 lineas) bl Líneas de control de transferencia de datos (3 líneas) e) Lineas de control (5 lineas) 1.4.l Líneas de datos El bus de datos es un conjunto de 6 lineas de tipo bidireccional, por medio de las cuales se pueden transmitir o tLZHINTO • C'°1'A'% DE !'1.loHS"l'tlJt JIEC 1111 Jt Y CONTAOLAJl E?.EHl'HTO a CfltJ>Q% DE T1HHnt11 !' f Jt Y JP.IC JS11': CM?AZ SO!.O b< JttC 1 > I" ELtH1'PITO D CAl'tl.Z SOLCI u 1'Jtiti!NSNl'f1Jl .ttttt m f ¡...::._ ,_ ,_ ,_ ,_ ,_ ,_ ,_ --,-_ -· LIHZ:A$ OE tiATOS I.lHJ::AS l>Z: 1·~~"'4it---~'~:i:~t s -tlHV -11RF~ HtlMC L'.::======m J([U XOI Fiq. 1.2. Estructura funcional del 8us GPIB recibir dato.a o men.-=ajes .. L3. ·denomíriación de las lineas es la sigui-ente: Diún iD6t.o de entrada/salida',n) Donde n e5 el número de linea.Y puede. ser del· dató 1 al da~o 8. 1.4.2 Líneas de control de transferencia de datos Para la cransferencia de datos e5 usado un conjunto de ~res lineas• ll NRFD ltta lizto para dato), 2) DAV (Dato valido) y 31 NDAC (Dato no ae:-zJYtad-:.r >. La secuenc~a de estas señale:5 en t-1 protocolo de e:omunic.=.ición t:-: cz·it.ic~ para ~l correcto funcionamiento de este. La velocidad de transf~rencia de los datos está limi tad3. por el dispositivo roás lent.o que intervenga en la comunicación. Una descripción de los diagramas de tiempo se da en la figura 1.3. b T '!' B an1c --H-H---~ t t t t Q 1 2 3 t ' ' • s • Fig. 1.3. Diagrama de tiempos del protocolo de comunicación t0 en este instante todos los receptores permiten a la Señal NRFD tomar un estado alto, cuando están listos para más datos. La señal nDAC es mantenida baja por ei receptor. ti el controlador detec y el dat.o en las lineas DIO puede ser cambiado. t6 cuando DAV es ajustada a al to, ent.onces NDAC es conducida a bajo por el receptor para estar listo para otro byte de datos. 1.4.3 ~ineas de control El bus de control está formado por cinco lineas que se ocupan para mantener un orden dentro del bus. La función de cada señal se da a continuación: Línea ATN (Atención): Cuando ATN es verdadera, sólo se transmite por siete de las ocho lineas de datos, caracteres ASCII en forma de direcciones de órdenes uní versales; es decir, que todos los elementos deben atender a la información que aparece en las lineas de datos. Cuando ATN es falsa, sólo los elementos que han sido previamente direccionados por el controlador envían o reciben datos, en los cuales se puede utilizar cualquier código de 8 bJ'ts o ro1:::nO!i, ml•.,.'..i,:·:1.3 que -el resto ignora l.::t~ lineas d~ datos. Línea IFC (Limpia interconexión): Unicamente un dispositivo con la función de controlador del sistema pu~de enviar un mensaje IFC, qu~ consiste en una indicación para limpiar la interconexión: es decir. coloca a todos los dispositivos e-n un estado predefinido. De esta manera se puede obtener un punto uniforme d~ inicio en el sistem.:-"1. Linea SRQ (Requerimiento de servicio): Los dispositivos que no tengan la función d~ contr..:ilador pueden usar esta linea para indicar al controlador la w::ct.sidad de atención. Así, el controlador- interrumpe la secu"2!ncia de even"t.os y atiende al dü;posi ti vo. Linea RKH (Habilita control remoto): Esta linea solamente puede ser activada por un dispositivo con la f11nciót1 d~ controlador del sistema y permite conmutar a los disposítivos de un control local o un <':ontro.l a través del bus. Ji e o 12 dos funciones “en combinación con ATN. Con ATN falsa un emisor puede usar EOl para indicar el: final de una transferencia de bytes múltiple. Cuando (ATN'es verdaderas €l controlador usa la linea E0l para indicar la ejecución de una secuencia de encuesta (polling). 1,5 COMANDOS DE LA NORMA IEKZ-488 Las líneas de datos llevan una variedad de mensajes a través del bus. ciendo éstos : direcciones, datos para configurar un instrumento, resultados de mediciones, comandos universales y datos de estado. La identificación de qué es lo que se está transmitiendo es lograda por el mensaje ATN (Atención). Con la linea en su estado válido se transmiten direcciones o comandos universales cuya codificación esta basada en el código ASCII. La totalidad de los mensajes definidos por la Norma se encuentran resumidos en la tabla 1 , cuya equivalencia de típo y clase se da en la siguiente tabla: TIPO U: Mensaje que utilíza una linea del bus M: Mensaje que ocupa varias lineas del bus CLASE UC: Comandos Universales AC: Comandos Pirecciorados AD: Direcciones SE: Secundarios ST: De Estado SH: Protocolo de Manejo de datos DD: Dependiente del dispositivo Comandos Universales: Son comandos que deben ser ejecutados por todos los instrumentos que tengan los circuitos necesarios para hacerlo. Comandos Diireccionados: Son comandos que sólo pueden ser interpretados por él o los dispositivos que fueron direccionados para hacerlc. Direcciones: e 02upan estos mensajes para índicar que disp +ttivo se está seleccionando en el bus. Los dispositivos que tienen la función de Emisor y Receptor poseen la misma dirección. Mensajes Secundarios: Son mensajes que complementan a otro que ha sido transmitido previamente. Mensajes de Estado: Estos mensajes son los que mandan los disposítivos para indicar su estado interno. Mensajes de Protocolo: Son los mensajes ocupados por las 12 Linea KOl (Fin o Identificación): E~~a linfra tien~ os ci nes - n 'co binación con TN. on TN lsa n isor ede sar I ara i ar l: al e na tr~rnsferencia e ytes últiple. Eiindo ATN es erdader!t ~l t.roladvr .a é:. ea OI ara icar ción e na encia e cuesta li g}. .5 ANDOS ~E RtlA R E-4 8 as i as e ates an na ri ad e oensajes és el bus~ ~iendo stos i ciones, atos ara nfigurar n ento, lt das e medicion~s. andos iversales atos e t do. a tifi ción d~ ué s ·:iue e stá sn i ti do s rad! or l ensaje TH tención). Cc·1~ a n t do áli o e ra: s i t.en i ci nes andos iversales ya difi ación sta sada n l digo SCII. a t l ad e s ensajes fi idos or or a e cuentran r~sumidos n la . ya uivalencia e i o l se e a n iente la: I SE : ensaje ue tili a na ea el us : Hensaje ue upa arias as el $ C: C:tndos nivers!tles C: o andos Dir cci nados D: irecciones E: ecundarios : e stado : r tocolo e anejo e atos D: ependiente el i ositivo o andos niversales: .Son andos ue ben r tados or os s entos ue an s .ul tos cesarios ara acerlo. 11andos i" l ados: on andos e lo eden er r t dos or l l~·s i ositi os ue r-:..n i i ados ara cerle·. irecciones: ,:;,:;- oc pan .,c1:, m,.,.r,~~.i.:..= p~ra i icar ue Oí~.¡:··.~it.ivo e ~sta ;,;el - 1::ionandc n l us. os i csit1vos e: en ción e ísor eceptor seen is a i cción. " najes ecundarios: on ensajes ue plementan t.ro ue a o itido r i ente. " sa.ies e Hstado: stos ensajes n s U':! andan s i sít.ivos ara icar .su t do t rno. ensajes e r tocolo: on s ensajes pados i• s I:' T:OL!.! ::OF!t~CIC~ :: !lt!'5AJ[) ~E!lrn:: ¡,;· •. :;,s ~ti. '1.l: r ~~~:::: ~iJE COP-ñi5~:it+~Eh ~L ~.~~- :~;E, D t,r. 1 D ;. ~ :. E 5 ; R )le10- o o A F ~ 7 & R F E Ucnico ~:,:re ce: lf:'IHJE 8764:·21 YDt• ion At6 Sru~c ~E :.c•an~os d1rrcci1n1ados •tiillll!l "111111 ~TN He:'lc1e:r, UtJ 1111111 01\111 l DAi iJttdedn.ts \l•!ltis 1,il DD DD D DO D D D lllllll I D~C Da::i t:eoh~o rl5'1l!lllf 1 ( 1111 l) DA/ DHo-;UidD is11111111 1 J 1 11 111 Del li1oa d1sc!lshivo Utlilli\!i ti J 11 l ll !.ID Fi' !S'lti ~) 51ll¡11 111 111!\111. EDS fl11 ~t c1~en1 1Notn219) ~ DDEEEEEEEE 111 !1111 e 11sn2 1 GEi DtsDH: Ce 'J.!\ ;ruD~ At Y i e e i ~ e ¡ JJ J 1!.J.1' ilL ~i:H a l;t!l !CHlt!!!I 1 11 111 1 1 !Di luenuitri:it~. U~ ¡ l l l I " J 1. 11111111 !F~ Liuu inter•n Ut 1111111 1 11111111 L~G Srup'l de 1urtc:iones nceotor: - AD Y ~ 1 l J l X l 1111111 J LLO. Blc~ue:i lot1l Ut Y! i 111! 1 l 111111 ¡ MLA ili dlrecrn~r. ~E r"éceDtor 1Mot131 AD Y 1 1 L L l L L ll l l l l l 1 54!21 MTA ili :~re:cH1!l ~e locutor- (ttoh 41 AD' 111TT11 llll llll ''l ¡ l MSA llic'.re:ciénsecu.id!r11 tHoh SI SEYl 1 s;sss 111 l l l ll 5 ~ ~ : l h!,;L a11t Ml}D DD 1! ii !! !! 1lll1111 DI~ Otrl airettltn u·::•m!1ri1 SEIOSA•&t;f\'!rll ij¡.< LtradirettiOndel:icutor ~n IOlA:.lAE/\m) ~et: Sr~~, ~e courdos ~riuno~ -- t1C6•At6'/L:NLAGVTAEI ffC Cor.fi~~r• encuesh !:l :anlelo " ~tYll!ll~I l 1111111 m 1ubihta er.rue~tl E~ nrllelo tNoh bl " SE Y 111 H H 11111111 lll m Dest.•~•hta r.:unh en oar1lelo IMotail K SU 1 1 1 D DO D 11111111 ll21 r.r't ~np•J!Sti 1 e11:uesta eri oarahlo l CARR IR Id SFE “Habidíta encuesta en Serie _ CREARA SRQ 3: Perición de servicio - - Y 3 TITIEA XA AAA SIB Brie. de estado : ¿Notas 4,11 R 3151555555 1116 (XL T1 - o . E-bS54321 o TER Tora el control . KR AOY24R1681 XI111112 15 Grupo de direcciones de Jocutor RAYAS 1IUX ULA YES 4c6 Gruta Coranoos universales E UCOYOd1 71717 IL F1TL HL Ko air Md Y21113 14 111 UITT YT. Ka hablar (Mota 11) Farid 133111 7I13p3J51 "HOTAS: (1) Di-DO Esperifican pits de datos depergientes de 10s disposafivos (21 El+ED Especitasan el código usado por el dispositiwa para incitar el aensaje Ets (3) 11-15 Especifican la dirección de receptor 6el dispositivo 441 11-75 Espetitican la gireccion ce locutor del dispositivo (5) 31-55 Zscetifican la dirección secendaria del Misposttivo (6) Especifica ei sentido del FFR PPR 2 B 1 j Pi-F3 especilican el vensaje FAR que se anvia Cuando es + Lievada 4 dao a ertuestá en _poralelo Pi PL MENSAJE Pre : : tt 4 PER to 1 Pre 1 42) DI-D4 especifican bifs que no son decodidicados por el gissesi :tivo cecoplor, se recomienda 23 - s todos jos bits en cero (8) 51-Sb, 58 especiticar el estado del dispositivo. D107 es usado pará el esnsaja 505 (7 La fuente del sensaje en la lines eTn es siesore la función C, asentras que Jos asnsajes en las líneas Mo y 301 sen habifitados por la función T Vide la óuentes 32 los eensayes en da linea ATN y EG] es siespre la función E, mentras cue la fuentes de los aensajes en les lineas DÍO es sieepre Za función Pe (11) Este códizo es orosorciccado dara usy del 3istota '4u~- :!:~·t!:) ;itl:rf: =el te·!'ISJJt :Lt t.u~i• is asithtis ul!:c1anac!os SPD ~tsh1.~ilítt t:r.cUesu e nri m ri!~ilih encuest! tn nn S I ~etHl~:\ ~~ HíYÍtlC m irh de uu~., lHotn ~,~J m kt l t tro! iAS rupo de dire:ct1011es c!e locutor Ut6 6ruo:i ccun~~s ur.tterules 1,.!ltl liooir ui.1 l\o h1~lu l)iloti 11 f MOTAS: ( í L v l, ~-- 1 o !.!~~~= rtl ?i)5 r CGOl&úS ·a:Jt·CCrf.~5.SF-ti!tDii. :.L r.~· SAJE., _: D 'H 1 ·-1)-;, ~ 4 =· s 1 ~ 'o HA!DRF< o- ar•.~32·1 Voc~rgcn ' !tlii!ilii 11l11111 Utl!!t l!il llll 1¡11 !7. ( ¡ !! 1 ¡¡ ! 11111111 SI 11111111 "1111111 H S 1 SS SS S 5 1 111 (11 ; 1 011 'en 1111 1 llll 1 l iav 1111111 r lll xxr r CY!!llill ¡¡ 111 11 ADlll l l l l 1 11111 ll[ M1r1e : 11 1 11 l' 1 1 (11 ú!-hB Estet~ít:an uts !le ¡t s ótper-oientes de los di1pos1h~os {21 l·U Esiit:~~han tl :tó1~:i ·~se:da por el dísposit1va ;iua ln~l~ir el aermje EGS lJI ll·L~ s.pet1hcu1 h direculn de rtceptDr tir:l t11sp'Jsiti"' 10 ·15 Esueih~,¡n la oire:~1or. ce !oc1Jtt1r el a:1s~0Sitil'O i5J ;1·S~ Es~etiüta~ la irecuon 'ii!C'.tllltarll óel llis¡¡osinvc (6) Es~eofJC¡ e! 'H!r!tl~o del fFf. .i_fil 1 1 1 1 H=3 upe :Hit.im 1'1 'tnSt1Jf F'f~ e s ! i1 c oo s ll t a a cabo uni tnt esta e p1raldo P1 f2 Pt ,,EN5/lJtr-H ! 1 ! H ! PFP.i t71 DJ-D4 esoeuhun blh oue no sDn drtoé1iluaas gar el on:.tsitho rec~etor, Se reco1ienda t:-= todoslostiitsencero 19) Sl~SQ. 58 esgecifltar, el estado de} d150DSlti'fll, tll07 ei U~adD uara El lfl)SJje ~QS m L.! fufr,te. del •enua en 1l t.inea ~i" B !ilHHe la f1J11ci6n e, ue tras que Jo.tj t~11sa1es en h~ ii us ?t!~ 'I :DI s~n ha~i!Hados sic.r la f ci! U~1 h i11rr.tn. :e !es •e7!UJeS en h lbea ATH 'Y EGI es steaiire h. futi:ton t, 1antt,¡s cue la fuentes de los nns1ies en lu l.ineu DHl es sa•:.ire :a funcie., "i:. Oll s.te c6d:~: s t1"''ª''°~~11c ::in1 ui~ el ;abu ¡4 funciones de f'rotocolo Emisor y Protocolo Receptor 1:-:-:.ra la transmisl6n de datos. Mensajes Dependientes del Dispositivo: Son los mensajes d~. datos enviados por el Emisor al Receptor, después de que el Con~rolador les ha cedido el control del bus. 1.6 FONCIONBS DE LA INTERFAZ La Norma IEEE 486 define 10 funciones del sistema de interconexión. Un dispositivo, para ser compatible con la Norma. debe ser capaz de interpretar las señales y de generar la secuencia de l:l('.•"':i r,nes necesarias. Normalmente, los dispositivos no responden a todas las funciones y solamente realizan las especificas de su función. La descripción de cada una de estas funciones se da a continuación: CONTROLADOR : La función del controlador permite a un elemento actuar como controlador y enviar al bus las direcciones primarias y secundarias y las órdenes universales con dirección. También le permite responder a la linea SRQ y dirigir una llamada en serie o en paralelo para determinar el estado de cada elemento. El controlador puede en cualquier momento validar la linea ATH e interrumpir la transferencia de datos que se estuviera realizando en ese instante. En un momento determinado. sólo puede haber un dispositivo ejerciendo las funcic•nes de controlador. El resto de los dispositivos capaces de ejercer esta función deben mantenerla en estado inactivo EMISOR : Esta función proporciona al dispositivo la capacidad de transmitir datos (incluyendo los datos de estado durante una secuencia de pol1111g) a través de la interconexión a otros dispositivos. Para ejercer esta función, el dispositivo debe ser direccionado previamente como emisor por e-1 controlador. Todo dispositivo emisor t.iene asignada una dirección que le diferencia de lo~ 1.•tros dispositivos emi.sores del bus. Esta dirección es llamada dirección de locutor ~· puede estar formada de uno o dos bytes. En el c~'lso de que se forme de do5 bytes la función es llamorJ;,, de Ernisr..1r Extendida y el proceso de direccionado se reali=a en d0s fase~. RECEPTOR: La función de receptor proporcic.na a un dispositivo la capacidad de recibir datos provenientes do:: un dispositivo ( ini::luy~ndc· datos de estf\do) a través de la interconexiOn. La función de receptor solamente puede ser ej·::rcida si el cont.rolador previamf:'!1te .se!.eccionó al dispositivo .::omo receptor. E5t3 dir.::cción es c.,:..nocida como direcci6n de receptor Y también puede ser transmitida en uno ? dos bytes. En este último caso la función es conocida como Re-:eptor Extendido y el proceso de direccionado se realiza en dos fases. RKQURR!MIEHTO DE SERVICIO: Esta función pe,·mite ~l dispositivo solicitar asíncronamente al controlador el uso:, del bus. Para esto activa la !'eña.l SRQ del bus, y la mantiene ~n est~ estado hasta que el ·::"=·ntr-:l~~-.:.· ~··:,:_ifique al dispositivo que ha recibido la - . :_ . .:.. •_ ', .i -!,:.. é'.'o'.'!"Vi''.".'j ·: . CONTROL UF.MOTO O LOCAL: Esta funcl<·n permite sel~cc1onar 31 dispositivo. La función indica al dispc·sitivo si debe usar la información que viene del panel frontal. control local. ó utilizar la recibida través de la interconexión. control rem0t.o. LIMPIADO DK D!SPOSI1'!VO: Esta función permit.e limpia!" {inicializar) a un dispositivo individualmente o como parte de un grupo de ellos. El grupo puede ser un subconjunto o la totalidad de los dispositivos dir~ccionables conectados en el sistema. DISPARO Dl!L DISPOSITIVO : Esta fonci6n perrni te poner ;,n rn>rcha las funciones básicas del dispositivo, individualmente o como parte de un grupo de ellos. El grupo puede ser un subconjunto o la totalidad de los dispositivos direccionables conectados en el sistema. KHCDKSTA KH PARALELO (PPK): Esta función proporciona al dispositivo la capacidad de presentar un bit de estado al controlador sin haber sido direccionado como emisor. Las lineas DIO"son usadan para llevar los bits de estado de los dispositivos duran toe una encuesta en paralelo. Esto permite al controlador discernir entre ocho dispositivos preseleccionados, uno por cada linea de datos, con una sola pregunta. Los bits 1 al 3 del mensa,ie PPE lencuesta en paralelo) enviado por el controlador designan la linea de dato!: que el instrumento debe hacer válida si la situación de su estado interno ( 1 ó 0) coincide con el bj t 4 del mensaje. PROTOCOLO KHJSOR: Eet.a función permite al dispositivo enviar un dato cualquiera por el bus. ya sea parte de un mensaje o llna respuesta a una orden del cont.rolador. Cabe 3clarar que la función. de emisor capacita al dispo5itivo para adquirir el contr1.:il del bus de datos, pero se requiere de esta función para controlar el protocolo de las sefiales, que asegura la llegada del dato transmitido a tod.._;~ los dispositivos que fueron direccionados para aceptarlo. PROTOCOLO RECEPTOR: Est.a función perroi t.e 31 dispositivo recibir los datos transmitidos por el bus. Esta función está relacionad~ íntimamente con la función de protocolo emisor. Dado que la :t transferencia de datos es asíncrona y que puedl'::: haber más de un dispositivo recibiendo el dato. el protoeolo raceptor permi~e al elemento roás lento del sistema obligar a todos los demás int."'!grantes del sistema a esperar a que esté listo para recibir rniis dat.os. ,, Capitulo 2 LA COMPUTADORA PERSONAL XT DESCRIPCJON GENERAL DE UNA PC XT En léi fig. 2.1 se muestra la t:::·.;~:..:~ principal de una c~mputadora f PCl XT. En ellá podemos distinguir la tarjeta principal y las ranuras de expansión. en estas últimas se pueden conectar tarjet~s adizionales. RAHURAS DE EXPANSION TECLADO 11111 rn rnrn ° 0 WJJJ]]]· rn D D D D rn rn rn rn rn rn R A M +------------------------+ DDDDDD DDD DDDDDD +------------------------+ i-1 BOCINA Fig. 2.1. Visión general de una tarj~ta para computadora PC XT 1:omc. S'?' r." ¡,:;..i.::. :,.r !',. _. i·. .:•:.n t i•!n<::- vari..:.~ ci rcui t.i.:,s ~";- memori f! RAM .:uya capacidad "";.otal pued~ vr-riar. siendc· el tná~ comUn un tl.'.ital ,·~ - · i':b ó 640 Kb. De memoria fií>H contiene, por lo r<:.-gular. 40. 960 byte.s, en los que se incluye un intérprete de BASJr' y rutinas especiales para hacer la interfaz con dispositivos de E/5 tales corno: teclado. pan~alla 1 di~co, camun1c;;,cíón seriol, impresoras en paral·~lo, etc., A un lado de los circuitos di= memoria se encuentra el circuito int.egrado ( CI) 8253, que es un circuito contador/temporizador que permit.e a la PC mantener la hora Y la fecho aunque so::a apagada. Este circuito t.ambién produce seilales que permiten manejar a la bocina y producir diferent.es tonos. Junto al Cl 8253 se encuentra el controlador de Acceso Directo a Hem1.1ria, Cl 8237, que permite a los dispositivos tales como las unidado:;s controladoras de disco la tr3nsferencia de datos desde y hacia la memoria de la computadora, sin hacer uso del mic;roprocesador. De esta manera, el microprocesador puede realizar otra tarea mientras la transferencia se lleva a cabo. Además uno de los cuatro canales del DMA se con~cta con uno de los canales del Cl 8253 par.:t refrescar la memoria dinámica RAM. Al lado del circuito DMA encontramos el Cl 6255, que es un circuito que contiene varios puertos paralelos, y es ocupado para leer los interruptores de la tarjeta que determinan que tant.a memoria se ha instalado en la PC, asi como el número de manejadores de disco y el tipo de pantalla que se está usando. Otro de los puertos es usado para la lectura del teclado. En la parte superior del diagrama encontramos al Cl 8259A, el cual es un circuito controlador de interrupciones de 6 canales. A este circuito se conectan varios dispositivos que pueden accesar al microprocesador mediante solicitudes de interrupción. En la parte superior derecha encontramos al microprocesador 6088 ó 8086, dependiendo el modelo, y ambos son totalmente compatibles en softw .. ·u·e variando en que el bus externo de datos del 8086 es de 16 bits y el del 8088 es de 8 bits. Junto al CI 8088 se encuentra una zona vacía, en donde se puede colocar el coprocesador de punto flotante CI 8087, el cual está diseñado para realizar operaciones matemáticas a gran velocidad. Juhto a estos procesadores se encuentra una fuente de poder conmutada. la cual proporciona la alimentación necesaria a todos los circuí tos y es capaz de alimentar hasta con 1 ampere de corriente cada una de las ranuras de expansión. Por ültimo, encontramos las ranuras de expansión, que pueden variar en nUmero de un modelo a otro, en donde se cono:ctan por lei regular una tar.ieta controladora de dis·~C1, una tarjeta i 1.:.:.:::1 n::~nejar el video y quizás una tarjeta d-= memoriél RAM con un puerto serial RS232, un puerto paralelo y reloj con respaldo de bateria. Las demás ranuras quedan para tarjetas de aplicación que el usuario diseñe o necesite comprar. 2.1 EL KICROPROCKSADOR 8088 El uP 8088 es un circuito integrado que se fabrica utilizando tecnología HttOS con un total de 40 terminales de conexión. Dos de esta a terminales corresponden a la tierra del circuito y una más corresponde a la polarización de 5 volts, requerida por el circuito para trabajar Este microprocesador posee un bus externo de 8 bits, pero internamente es idéntico al microprocesador de 16 bits 8086. Su capacidad de direccionamiento es de un Megabyte de memoria ya que po:.H..-1.! un bus de direcciones de 20 lineas. Para evitar un número excesivo de lineas se multiplexan las lineas de datos con las de direcciones, de tal manera que los 8 bits de da tos comparten terminales con los 6 bits menos significativos de la dírección. Además. posee características especiales que le permiten trabajar en ambientes de multiproceso y procesamiento en paralelo. Una explicación más detallada de sus propiedades y funciones se da a continuación. 2.1.1 Arquitectura de la CPO Este microprocesador internamente esta dividido en dos sub- Procesadores: la unidad de ejecución CEU) y la unidad interfaz del bus CBIU). La unidad de ejecución es la encargada de codificar y ejecutar las instrucciones, mientras que la unidad de Interfaz del bus es la que realiza las funciones necesarias para localizar las instrucciones y transferir los datos entre los registros y el bus. El CI 8088 utiliza el concepto de "Cola de instrucciones" con el fin de aumentar la velocidad de proceso. Existe en el circuito un área especial que recibe ~1 nombre de cola de instrucciones, que es la que guarda los bytes de la intrucci6n. Cuando la BIU localiza en memoria un byte de código de máquina, lo coloca '"' la cola que tiene 4 bytes de longitud en el CI 8088 y 6 bytes en el CI 8086. Este sistema posse la ventaja de que cada instrucción puede cf'I ser obtenida de la memoria mientras otr.as se estii.n ejecutando, reduciéndose ..;:r1 c:onsecuencia el tiempo de proceso. Por ejemplo, las instrucciones que incluyen directam~nt.e al dato, se ejecutan casi a la misma velocidad que aquellos que necesitan datos de los registros de la CPU. Este sistema también es útil cuando se trabaja con memorias lentas. Esta repartición de trabajo entre la unidad de ejecución y la unidad interfaz del bus es lo que hace que el rendimiento del CI 8088 pueda ser comparable a un microprocesador de 16 bits. 2.1.2 !ODOS DK OPKRACION El CI 8088 puede ~perar en dos modos : el modo máximo y el modo mínimo. El modo mínimo se ocupa en sistemas en donde el CI 8088 genera directamente todas las señales necesarias para el control del bus . El modo máximo es ocupado en. sistemas que regularmente incluyen dos o más procesadores. El modo de operación se define en función del valor lógico de la terminal MN/MX del circuito. Cuando esta terminal se conecta a tierra el CI 8088 es usado en config~;.ra~l..::i Je modo máximo y cuando la terminal se conecta a h vr1 1 t.s se selecciona el modo minimo. Cabe recalcar que en el modo máximo, el 8088 necesita de circuitos adicionales para generar todas las señales de control necesarias en el bus. 2.1.J Registros internos El CI 8088 tiene un total de 14 registros de 16 bits, los cuales pueden ser divididos en cuatro grupos funcionales diferentes, como se muestra en la figura 2. 2. Varios de los registros tienen funciones especiales cuando se usan con ciertas instrucciones, aunque también pueden ser usados como registros de propósitv general. S-=- tienen 4 registros de datos de 16 blts CAX, BX, CX, DX), i:ic.inde : ::. 11:::tra A represen ta Acumulador, la B representa Base, la ': re¡:.ro:~'=fit.a Contador. la D representa Datos, y la letra X indica c¡~i:: ~i:: ·.:-?~.:s de un r~c:istro extendido. Estos registros a su vez pui::der. r.i::r divididos en 8 registros de 8 bits (AH, AL, BH, BL. CH, CL. :H. DL), donde la H representa que es la parte alta del reg1st.rr:. di:: 16 bits, y la L indica que es la parte baja, es decir, l~ m~nos significativa. _ ¡ Los registros de datos se comportan idénticamente para la mayoría de las instrucciones, pero hay algunas diferencias. La primera de ellas es que algunas instrucciones se ejecutan mAs rápido y/o tienen una instrucción de lenguaje de máquina más corto cuando el registro AX o AL es usado. También, el registro AX ó AL es usado para todas las instrucciones de entrada/salida. El registro BX se utiliza especialmente como registro base para los direccionamientos. AJE -cir DI: e: 08 DL GP J!UrfR80 DR PILA il' PUS'r&•o OC DA 9• ISDXCS •a••Ta DI lWllX:C'lr DJl!l'l'tao 1 JP 1 POWT'Wll'O l>K 11HiT1"1CCJ:.OW 1'X.AC9 wl rLA.ICS ~ Z•l>XC.ADOWll& DS S&TAPO ES GmG•llM1'0 DE CODIGO 00 9lrGllDTO J>S DATOS SS 6Sllilla'TO DS rt:.t.A EG s~o ma& Flg. 2.2. Conjunto de registros del CI 8088/8086 EL registro BX se utiliza especialmente como registro base para los direccionamientos. El registro CX se usa a menudo para almacenar datos, para contar iteraciones y para desplazamientos y rotaciones. El registro DX tiene un uso especial, y es el de contener las direcciones de los puertos de entrada/salida para las instrucciones de entrada/salida. Otros 4 registros sirven como apuntado,·es y de indice (SP, BP, SI y DI) , de los cuales ninguno puede dividirse como en el caso anterior, pero pueden usarse como registros de propósito general . El registro SP es el apuntador de pilas y el registro BP es el apuntador base. Ambos .son usados tipicament.e para lectura y escritura del STIJCK. SI es el registro indice fuente l 22 DI es el registro indice destino, estos registros son de propósito específico y son utilizados como partes de los modos de direccionamiento. Se cuenta con un registro de indicadores {banderas} de 16 b1 ts, los cuales son bits que indican el estado interno de las banderas. Estas banderas son: bandera de cero CZF), bandera de si11no ( SF) , bandera de paridad ( PFl , bandera de acarreo C CR) , bandera auxiliar (AF), bandera de direccion (DFl, bandera de interrupción ( !F), bandera de overflo" (OF) y bandera de desvio (TF>. Un registro apuntador de instrucciones CIP). Este registro es usado para controlar el flujo propio del programa Y contiene la dirección de la siguiente instrucción a ser ejecutada en memoria. Se cuenta con cuatro registros segmento : CS, DS, SS y ES. Estos .son los registros segmento de código, segmento de datos, segmento de pila y segmento extra respectivamente. Estos registros son usados en el concepto de segmentación de memoria. 2.Z DKSCR!PC!OH DK LAS Sl!ifALKS ELKCTRICAS HAHIJADAS IN LA RAllURA DK l!XPANSION DK UNA PC-XT La descripción del bus XT y la de sus señales es necesaria debido a que la tarjeta va a quedar instalada en una de las ranuras de expansión de la PC. El bus XT fue diseñado en un principio para trabajar con el microprocesador 8088 de Intel y fue dispuesto con los 8 blts de datos y l&s 20 lir:-=:as de direcciones del microprocesador. Su uso es básic,:,,roente para aplicaciones monopro.::esador, pero también tiene las facilidades para efectuar las operaciones de controladores de DHA. Consta de cuatr..-; ca11ales de DMA 1 tres de los cuales están disponibles en el conector del bus y uno es usado para e 1 refresco de la memoria dinámica RAM. Incluye 8 señales de interrupción, de las cuales 6 son accesadas en el conector y 2 sor1 utilizadas por el sistema. Los conectores son del tipo hembra para fin de tarjeta, de 62 contactos, numerados del Al al .1131 y del Bl al B31. La distribución de señales se muestra en la figura 2.3. G!lD Bl Al. -I/0 CHCK P.ESET [1R'/ B2 A2 D7 +5 V B3 '' A3·: D6 IRQ2 B4 .A4 D5 ·: 85 ·:· .... A5/, D-1 DRQ2 86 " A6--C D3 -l::!V 87 A7 D2 RESERVED BB AB Dl +12 V 89 A9 D0 GHD Bl0 Al0 I/0 CH RDY -MEMW Bll All AEN -MEMR Bl2 Al2 Al9 -row Bl3 A13 Al8 -IOR Bl4 Al4 Al 7 -DACK3 815 Al5 Al6 DRQ3 Bl6 Al6 Al5 -DACKl Bl7 Al7 Al4 DRQl Bl8 Al8 Al3 -DACK0 Bl9 Al9 Al2 CLOCK B20 A20 All IRQ7 B21 A21 A10 IRQ6 B22 A22 A9 IRQ5 B23 A23 AS IRQ4 B24 A24 A7 IRQJ B25 A25 A6 -DACK2 826 A26 A5 T/C B27 A27 A4 ALE B28 A28 AJ +5 V B29 A29 A2 ose B30 A30 Al GND BJl A31 A0 Fig. 2.3. Distribución de señales en el Bus PC XT 2.3 CLASIFICACIOM DE LAS LINEAS ELECTRICAS DEL BUS XT Para la descripción de las lineas del bus es conveniente agruparlas en la forma siguiente: al Lineas de datos b) Lineas de control de memoria y E/S el Líneas de interrupción dl Lineas de arbitraje .;,) Lineas de error y sincronía f) Lineas de espera e inicialización g) Linea e de alimentación 2.3.1 Lineas de datos Las 1 ineas D0-D7 (data bi t.s l son 8 lineas bidireccionales utilizadas para la transferencia de dat.os en el bus. 2.3.2 Líneas de direcciones Las lineas A0-Al9 r Address bits) son 20 lineas de direcciones del microprocesador y se ocupan para direccionar la memoria o los dispositivos de E/S. 2.3.3 Líneas de control de memoria y puertos de E/S ALE (Address Latch Knable). Señal de salida que sincroniza la dirección existente en las lineas de direcciones. La sincronía se realiza en el flanco de bajada de la señal. HKHR (Hemory Read Command). Es una señal que puede generar la CPU ó un controlador de DMA, indicando que se está realizando una operación de lectura en memoria y que por lo tanto el dispositivo debe ce.locar el dato correspondiente a la dirección que se dese3 leer en las lineas del bus. Su estado &ctivo corresponde a un cero lógico. HEHW (Hemory Write Command). Al igual que la anterior puede ser generada por la CPU o por un controlador DMA y es usada para indicar una operación de escritura en memoria. IOR (1/0 Read Command). Cuando se quiere llevar a cabo una función d~ lectura de un puerto de E/S, ~~-~ s~Bal es llevada a un "0" lógico por el micropn:.cesador o p-:>r un controlador de DMA. IOW Cl/0 Write Command). Cuando esta señal es un .. 0 .. lógico, indica que la PC está enviando datos a un circuito de E/S. Puede ser generada por la CPU o por un controlador de DMA. 2.3.4 Líneas de interrupción IRQ2-IRQ7 (Interrupt Rcquest). Son 6 lineas de entrada que indican al microprocesadc.r que un dispositivo requiere de eu atención. Estas señales pcrm-:·mecen actl vas hasta que el microprocesador ejecute la correspondiente .:;ubrutina de atenciC.n a la interrupción. La sefial IRQ7 cor.respond..;: a la interrupción de más baja prioridad. 2.J.5 Lineas de arbitraje DRQ1-DRQ3 (DMA Request). Son tres canales asincronos utilizados pc.1· los dispositivos para hacer uso del DMA. Estas señales se deben mantener activas hasta que se les conceda el bus. DllCK0-DACK3 (D!'lll Acknowledge). Son cuatro lineas, de laz cuales 3 se vcupan para rtspond~r a l~s correspondientes peticiorif:'s de .s"=rvicic.· 1..:- DMA an.o;.-::ri.ores. La linea restante. DACK0. ~e ut.ili::1;1 t:•.?ra refr-=scar l.:i m<:moria RAM dináro.i•:;:.. AKN (Address Enable). Esta linea es ;1sada para informar al sistema que l.~ diroe:ccióH, los datos y l3s li.r.eas do:: Ct•r.trol -es'tán sieI1do controla.dos por el micropr.:.cesador. Cuandc -est.a señal es un "0" lógico la dirección d~ salida en las linea~ A0-A19 es válida y puede si:-r usada; ~n la O~ceidifícai::ión de direcciones. T/C (Terminal Count). E~::t.Q lin~a de salida emi"te un pulso cada vez qtie el valer pr~sel~ccionado del contador de cualquier DMA es á!c·::11:-:.~d(·_ 2.3.6 Lineas de error y sincronía I/O CHl!CK ( I/O Channel Check). Es usada para indicar al microprocesador que ocurrió un error de paridad en una opera~jó~ en la memoria o un dispositívo de E/S. OSC (Oscillator). Es una señal de reloj con frecuencia· de 14.31818 Mhz. CLK (Clock). Es una señal de salida que constituye el reloj del sistema y representa 1/3 de la frecuencia del 05Cilador.' 2.3.'l Lineas de espera e inicialización !/O RDY ( I/0 Channel Ready). Esta señal es activada por dispositivos lentos cuando son accesados a través del bus. La señal 1/0 FDY no debe mantenerse a nivel bajo por un periodo superior a 10 ciclos de reloj. RKSKT (Reset). Ea utili=ada para inicializar la lógica del sistema. Se sinc.r-:ini::.a con .el flanco de bajada del reloj del sistema .Y se ~c·: . .sidera activa cuand.;. eBta en -e-stado lógico:. "1 · 2.3.a Voltajes de alimentación. Se Cl)'='nta con cucitro vol tajes de alimentación distintos: +5 V. -5 V, +1~ V y -12 V. Capitulo 3 DISE~O DEL CONTROLADOR IEEE-468 Actualm-::-nt~ e:dste-n en el mercado circuitos diseñados f'.:Specialm-::nto;; para la construcci¿n de un con·~rLilad<..>r para dispositivos compatibles con la norma JEEE-488. cad:; une· de: ellos of.rece ~1 cumplimient.o de los comandos: establecidos en la. Uorma, pcr lo que la utilización de alguno de elleis permi t.irá un ahorro 3Ustancial en la progr.amE:J.ción ya que los circuitos generan la totalidad o gran parte de las señales necesar!a.s en el bu~. A continuación se da un panorama general de los circuitos invest.igados a lo largo del presente trabajo y por último se llega a la elecciOn de los componentes que intervendrán en el diseño final de la tarjeta. 3.1 ALTERNATIVAS DEL OISE~O 3.1.l Los circuito integrados 829lA y el 6292 EL CI 6291A e.s un circuito EMISOR/RECEPTOR GPIB, diseñado para comunicar.se con microprocesadores tales como el 8051, el 6080/85 Y el 8086/86. Implementa todas las funciones de interfaz definidas en la Norma, excepto aquellas inherentes a las del controlador. El CI &.291A 1naneja la coroun1cac1on entre el microprocesador Y el GP1B. Entre sus capacidades más importantes se incluyen: - El indice de transfer~ncia dt"' dat.os programables. - El protocolo complet.c. de Emlsor y Receptor. - Las funciones de Emisor y Receptor con direccionamiento extendido. - Las funciones d~ r~querimiento d~ servicio. limpiado de dispositivo, dispRro de di.sp(¡Si t.i·to. encuesta en paralele y Bemoto/Loc::tl. - El manejo de interrupcivn~s. - La capacidad de maneje, de DMA. - La facilidad en e-1 manejo de transferencias Multi-Byte. Para impl~rnent.ar las funcii:ines de Controlador es necesario conectar el C! 8291A con el CI 829::. el cual es un Controlador del GPIB. Algunas de sus funciones impc.rtantes son: - lmplementar todas las funciones del Controlador. Scan -- comando de limpiado de la interfaz (IFC). - Responder a los requerimiento de servicio. - Envíar el comando de operación Remoto/Local a los dispositivos. - Impizmentar el protocolo completo para la transferencia de Control. Con estos dos circuitos conectados se implementa una Interfaz TEEE-488 completa con las funciones EMISOR/RECEPTOR/CONTROLADOR, además Intel pone a la disposición el CI 8293 que contiene transceptores especialmente diseñados para conectarse al GPIB. Si no se desea utilizar «el CI. 8293 existen algunos transceptores que cumplen con los requisitos establecidos para conectarse al bus, éstos son fabricados "por National Semiconductor: - Los transceptores IEEE-488, DS75168A/DS75161A/DS75162A. Las líneas de datos siempre se manejan con el CI DS751694 y las «otras señales se manejan con el CI DS751614 en un sistema con un solo controlador, y con el CI DS75162A en un sistema que contenga varios dispositivos capaces de tomar el control del bus. - EL Transceptor JEEE-488, DS3666. Para implementar la interfaz con estos circuitos se requieren dos de ellos conectados a través de sus entradas de expansión. A cada dispositivo se le asignan 4 líneas de datos y 4 señales para manejar la totalidad de las 16 lineas. 3.1.2 EL Circuito integrado MC68488 El CI MC6B488 es un Adaptador para Interfaz de Propósito General GPIA, distribuido por Motorila, y «está diseñado para conectarse directamente al microprocesador MC8800; sin embargo. con hardware adicional, puede adaptarse para ser conectado a otros microprocesadores. Entre las funciones más importantes que puede realizar 5e encuentran: - El manejo de los protocolos de Emisor y Receptor. - Las interrupciones programables. - La capacidad de hacer encuestas en serie y paralelo (polling). - Se puede operar con un controlador de DMA. . - La selección automática de funciones para minimizar la Programación Para realizar la conexión con el bus, Motorola también fabrica transceptores especialmente diseñados para cumplir con los requerimientos de la Norma. Estos son: - Enviar ~1 CQffiando e limpi~do e t rfaz ! J. Respond~r s requerimi~n~o e r icio. nviar l ando e e,.peración er ot.o/Local s i ositivos. 1-::mentar l t.ocolo pleto ara 13. f rencia e ont.rr .. il. on t s os i itos ectados ple enta a t rfaz I E-4 8 pleta n s ci nes I / / !l OLADOR, ás tel ne i osición l I 93 e ntiene eptores ci l ente i ados ara nectarse l PIB. i o sea tili ar el I 93 isten nos eptores e plen n s uisitos l cidos ara nectarse l us, t s n ri dos p r at i:. ;:,1 i conductor: os eptores E-4 8, S75160 / S75161A/DS75162A. as i as e atos pre anejan n l I S75160A Y s tras ales anejan n l l S75161A n a n n lo ntrolador, n l I S75162A n a e tenga arios i si \i vos aces e rnar l ntrol el us. ransceptor I E-466, 053 6. ara ple entar t rfaz n t s i itos uieren os e ll s ectados és e s tr das e pansión. da i ositivo an i as e atos ales ara anejar t l ad de s 6 as. . .2 ircuito r do C684BB l I C684 6 s daptador ara t rfaz e r pósito eneral PIA, i t i o or M~it.nr···la, e i ado ara nectarse i ente l icroprocesador HC68 0; i bargo, n ih''U'dw~u·e icional, ede aptarse ara r ectado tr s icroprocesadores. ntre s ci nes ás portantes e ede lizar s cuentran: l anejo e s r t colos e isor eceptor. s ci nes ra ables. a acidad e acer cuestas n rie aralelo li g). e ede erar n n ntrolador d~ A. a l ción t ática e ci nes ara ini izar p r ación ara lizar exión n l us, otorola bién rica eptores ci l ente i ados ara roPlir n s eri ientos e orma. stos : - El CI MC3446A que es un transceptor cuadruple GPIB. del cual se necesitarían 4 unidades para llevar a cabo la interfaz completa. - El CI l!C3448A. el cual integra 4 transceptores para el GPIB y puede manejar la interfaz entre el bus y. lógica TTL o CHOS. Cada par manejador/receptor tiene su propia terminal de habilitación independiente a las demás. · 3.1.3 KL ,,PD 7210 EL uPD 7210 es un circuito controlador del GPIB fabricado por NEC, con el cual se puede construir un controlador que cumpla los requerimientos de la Norma. Algunas de sus características más importañtes son: - Su capacidad de manejar las funciones de Controlador. - Por lo regular requiere de ser conectado junto_con PLA"s. - Su capacidad de manejo de DMA. 3.2 Diseño de la Tarjeta En los puntos anteriores se ha dado una brev.; explicación de 103 cir·:-uitos que podrían ser la part~ central del diseño. Analizando cada una de ellas encontramos que cada uno presenta el inconveniente de que son componentes que no pueden ser conseguidos i:n el mercado nacional por lo que es necesaria su importación. Este inconveniente aument~ el costo de los componentes y por tratar3e de circuitos para un uso especifico los proveedor-:s aumentan en gran porcentaje el costo del circuito que en si ya es elevado. Esto se contrapone con los objetivos iniciales de este trabajo en el que ~specificamos que el Controlador que .ze desea ·;.:;instruir sea de muy bajo costo. Por otra parte, podemcis darnos cuenta que el alt.o costo de l.:•s componentez se debe ~¡~ ~ran parte a la gran cantidad de funciones d€-: la Horma qu-e pueden llevar n cabo~ sin embargo, e5tudiando det-:-nidamente todas las funcicmes 11-egamos a la conclusi6n de q..ie difícilmente en el trab.:-t.~':I se requier~ hacer ~,s,:· de t.·jdas ellas y qu-== son ::ólo algunas las que son •Jcupadas <:'O::-,:Jtinuam.:-n :...:: . Pc.r lo gue ro:spo:-·. _ .. ~11 Ci HCG848B, qu.:. es el más barato de todos tiene la desventa.b .L- .:.·._·,:¡uerir de lM.rdwai·e adicion.:11 para que pueda si::r adaptado al bus de la PC. Es t'. es por que originalmente ~sta pensado para trabajar con otro microproces3dor. Otro problema adicional lo constituyen los transceptores, ya que tampoco estos pueden sc:r conseguidos en el mercado y también es necesaria su· importación. Este tipo de transceptores. por estar especiflcamente diseñados para cumplir con la Horma, también son de un costo alto y se requiere que sean usados si se quiere hacer un uso completo de todas las funciones de los circuitos anteriores. Con base en esto, decidimos deshechar la idea de utilizar algunos de estos circuitos y hacer un diseño sencillo, pero que a la vez fuera capaz de llevar a cabo las funciones de E!1ISOR/RECEPTOR/COllTROLADOR, y qu" al mismo tiempo todos sus componentes se pudieran comprar fácilmente en el mercado nacional. La manera más fácil de hacer esto es que nosotr.:is mismos generemos todos las señales y protocolos necesarios a través de la programación. En este capitulo se discute todo el diseño referente a la parte de Ju1.rdwa1·e y en el siguiente se explicarán todas las rutinas de programación que se necesitan. 3.2.1 Kl circuito integrado 6255A Para el manejo de todas las señales eléctricas del bus XT y del bus 488 haremos uso del CI 8255A, diseñado para tener funciones de ur.a interfaz de periféricos programables. La configuración funcional del circuito es hecha por el software del sistema. Y debido a que a través de los puertos vamos a tener acceso a las señal€!s, para que puedan ser proc-::sadas por los programas de control de la tarjeta, es necesario dar una explicación del funcionamiento de este circuito. El diagrama de bloques del Cl 8255A se muestra en la figura 3.1 en dondt: se observa claramente la conexión interna de sus tres puertos . asi como las lineas de control. Grupo de control A y B La configuración del 8255A se hace a traves de la palabra de control. la cual va a contener información sobre el comportamiento del CI 8255A. Cada uno de los bloques de control (grupo A Y grupo B) acept.;i comandos de la lógica de control y recibe palabras de -zontrol del bus interno de datos y manda los comandos apropiados a sus puertos. Cada bloque de control manda los siguien~es puert.vs: Grupo de control A Puerto A y Puerto C superior CC7-C4) Grupc d"' Control B Puerto B y Puerto C inferior CC3-C0) es CONTROL GRUPO A BUS HlTERNO DE DATOS 6 E11'S CONTROL GRUPO B ~ GRUPO A ¡1---J\ \--Y PUERTO A \r--y' (8) GRUPO A ¡L---1\ PUERTO C 'y---/ SUPERIOR r 4 ¡ ;L----1\, GRUPO B \¡---V PUERTO C INFERIOR ( 4) Fig. 3.1. Diagrama.de bloques del CI B255A Puertos A.B y C El CI 8255A contiene tres puertos de 8 bi f$ que pueden ser configurados en una ampli::i variedad de características funcior1al~s. ::.1 Puerto A ~ 8 bits con 3alida latclJ/lmZ-fei· y entrada 'tipo 1.'ftah. Puerto B : B' bits con salida/~ntrada latch/buffer Puertc C : Este puerto puede ~er dividido en dos puertos de 4 bits. Cada puerto de cuatro bits contiene un 1.'1tch y puede ser usado par=i zalidas de señales de eontrol Y en"'trads.7 f,;,. : • • .~":" estado en conjunción con los puertos A y B. a) Descripción de las suüuluu de control del Cl 8255A - Lineas de datos El bus de datos es un bu.s de 8 bits de tres estados que se ocupa para hacer la interfaz con el bus del sistema. El dato e:J transmitido o recibido por el buffer después de la ejecución de una instrucción de entrada o salida efectuada por la CPU. Las palabras de control y la de información de estado también son transmitidas por este conducto. - Lineas de control y de lectura/escritura La función de este bloque es manejar todas las transferencias internas o externas de datos o de palabras de control y estado. CS (Chip Selectl. Un cero lósico en esta linea habilita la comunicación entre el CI 8255A y la CPU. RD(Read). Un cero lógico en esta linea le indica al Cl B255A que puede enviar los datos o la información de estado a la CPU. HR (Hri te). Un cero lógico en esta linea habilita al CI 8255A para que la CPU escriba datos o una palabra de control en sus puertos o en su registro interno. A0 y Al (Selección del puerto 0 y selección del puerto 1). Estas señales Junto CC•n las señales RD y WR controlan la selección de uno de los tres puertos o el registro de la palabra de control. Se conectan normalmente a los bits menos significativos del bus de direcciones. Heset. Un uno lógico en esta linea limpia el registro de control Y los puertos se configuran en modo de entrada. b) Modos de Operación Hay tres modos de operación que pueden ser seleccionados a través de la programación. Las características de cada ·modo se !lus~ran en la figura 3.2 BIJS DE DIRECCIONES BIJS DE CONTROL BIJS DE DATOS I:º WR D7-Dlil Alil-Al 1 8255A !IODO 0 c 1 1 A I/0 0 0 .0 ~ PB7-PB0 PC3-PC0 PC7-PC4 PA7-PA0 !IODO 1 1 A ¡C B \ 1 I/O u: IIII rm I/O ~ PB7-PB0 CONTROL o I/0 PA7-PA0 !IODO 2 1 A ¡C B \ 1 I/0 g IIll ¡¡¡¡ ~ BIDIRECCIONAL PB7-PB0 I/0 CONTROL PA7-PA0 '-------' Fig. 3.2. Modos de configuración del CI 8255A Modo 0 Esta configuraci6n proporciona operaciones de entrada/salida simples para los tres puertos. Ningún protocolo es requerido, el dato es simplemente leido o escrito desde un puerto especificado. Su~ características principales son: - Dos puertos de B bi t.s y dos puertos de 4 bits. - Cualquier puerto puede ser entrada o salida. - Las salidas son del tipo latch. - Las entradas no son del tipo Jatch. - Se tienen 16 configuraciones de entrada/salida diferentes. !lodo 1 Esta configuraci6n prop0rciona un medio de transferir da~os de entrada/salida h~cia o d~sde un puerto especificado junto con señale.s de habilit.!l•::ión c. de protocolo. El puerto A y el puert.o B usan las líneas del puerto C para generar o aceptar estas señales. Sus características básicas son: - Grup·J A y Grupo B: cada uno controla un puerto de 8 bits de datos y un puerto de 4 bits de control/datos - Los puertos de 8 bits pueden ser de entrada o salida, las cuales son de tipo latch - El ~~erto de 4 bíts es usado para control y estado del puerto de date.e. !lodo 2 Con esta configuración se tiene un medio para comunicarse con un dispositivo periférico o un bus de 8 bits tanto para transmitir como recibir datos. Las señales de protocolo sor. provis<.as para mantener un flujo apropiado en el bus de manero. similar al modo l. También se cuenta con generación de interru~..:i-:.in y funcioni::s de habilitadl"ddeshóbili-tEsdo. S'...12. caracteristicós ~on: - Usado solamente con el Grupo A. - El puerto de bus bidireccional (puerto A) de 8 bits y un puerto de control de 5 bits (puerto Cl. - El puerto de 5 bits es usado como de control y de -=~tado del puerto A. 3.2.2 Decodificación de memoria El Cl 8088/8086 ciene 65,535 direcciones de salidas disponibles para puertos de entrada/s3.lida, las cuales se generan con la combinación de los valores de las líneas AO a la A15. De todas estas direcciones la computadora tiene varias reservadas para uso exclusivo de funciones propias, por lo que es necesaric. consultar el mapa de entrada/salida del equipo que vayamos a ut.i li ~ar. La tarjeta ocupa 4 direcci·.··nes consecn :.i V.:ls, debido a que ut.iliza dos lineas de dire-:-c1on~s para s.-::cesar sus ·.registros int.ern~·.3. y de-be cuidarf'°' -. ·.=. .:.:. .. ;.,.5 fl(, int~rfi-:ran con +:l m3pa de ent.r~dFt/sa}jda de la PC En Loas .. _ :1 •.::..:· •. s-:- d~cidi·~· diseñar un circuitc· ·:i1.1~ fuera capaz de decodificar e~ numer·, ti:>tal de direcciones ~· que el usuario definier3 la direcc16n que activa la tar jet-'1.. La manen, de lograr esto es haciendo uso de un comparador. i:uyas entradas sean la dirección de~ usuar: :i y la dirección mandada por el microproce:sador, de esta manera cuando sean igu&les se man"ia la señal de que la tarjeta necesi !.3 ser accesada. Para hacer esto se ocuparon los CI's 74LS85, que son comparador-e:;: de magní tud de cuatro bits. conectados en cascada para hacer la compe.ración de una palabra de 14 bits. Es"t.os circuitos dan una señal de mayor, men.:..r e igual al comparar dos palabras. Una de estas va a ser la definida por el usuario Y la otra la generada por el !:isteroa. La palabra definida por el usuario se va a alimentar a través de interruptores de la siguiente mar1era: Se cut:nta con 2 interruptores de B posiciones, cada uno se identifica en el diagrama como DP-H y DP-L. Cada interruptor corri::sponde a un bit. de la palabra de 14 bits . Cuando se ponen en la posición ON se pone el bit en "0", cuand•:i se ponen en la posición OFF se colo~a el bit correspondiente en ·· 1... El interru¡:1 t0r DP-L man~ja los bit..:; correspondientes a las lineas A2 a la A9 y el interru¡:.tor de DP-H maneja los que corresponden a las lineas de Al0 hasta Al 5. La manera de formar la palabra consiste Unicamentf- ':n ajustar los interruptores en la posición adecuada para formar el equivalente binario de la dirección en la cual queremos que quede alojada la tarjeta. La palabra generada por el microprocesador se torna dir-::ctament.e de las lineas del bus XT y es alimentada a nuestro circuito comparador junto con la palabra generada por el usuario a través de los interruptores. Se manejan las lineas A2 hasta A15, ignorándose las lineas Al6 hasta la A19. Por lo que respecta a las líneas A0 y Al son las usadas para accesar los puertos del Cl B255A. En el moment.o que el microprocesador coloca una dirección igual la formada con los interruptores, el arreglo de comparadores genera un ··1·· lógico (5 volts) indicando que la tarjeta necesita ser accesada. Esta señal es válida durante cuatro direcciones consecutivas, a partir del valor del equivalente binario formado por los interruptores. 3.2.3 Manejo de las lineas de control del Cl 6255A Necesi tamcis activar básicam€"nte 4 señales del Cl las cuales vamos a leer, escribir. activar la reiniciali:ar el circuito. La forma de manejar estas explica a -~11llnL1ación. 8255A. con tar Jeta y señales se Para activar la sehal CS vamoz a ocupar la señal que indica que la dirección de la tarj~ta está siendo ~nvíada por el microprocesador. tomada del circuito decodificador de memoria. y la señal del bus XT, AEN. Es~a señal es "lil" cuand<:> la dirección que está en el bus ~s válida. Conociendo que el circuito decodificador de m~moria entrega una salida alta cuando reconoce que ze está enviando la dirección de la tarjeta, podemos construir la tabla siguiente: AEll 0 0 1 l Decodificador 0 1 0 l Salida 1 0 1 l De la tabla se observa que la señal de salida es verdadera únicamente cuando :.::•: tiene una dirección válida y el circuito decodificado1· lndica que es la dirección esperada. Del análisis de la tabla veroos que tenemo~ que invertir la salida del circuito decodificador y después hacer una OB con la señal AEN. La salida de la compuerta es la señal que habilita al Cl 8255A y al transceptor de datos CI 74LS245. La señal de escritura se obtiene fácilmente con la señal IOW del bus XT1 la cual por seguridad únicamente es válida con la señal que habilita la tar Jeta a través de una OR, antes de ser conectada a la señal WR del CI 8255A. La señal de lectura se obtiene de la misma forma que la anterior per<:> ocupando la señal IOR del bus XT. Esta señal es la que controla la señal de lectura RD del CI 8255A y la señal de control de dirección de datos DIB, del CI 74LS245. Por último la señal de Reset se conecta a la $eñal de Reset del sistema que se encuentra en el bus XT. De esta manera cualquier reinicialización del sistema afecta también a la tarjeta. 3.2.4 Kanejo de las lineas de datos del bus XT y del bus 488 Se cuenta con 8 lineas de datos bidireccionales, de salida cuando actúa como Controlador o Emisor y de entrada .cuando se funciona como Receptor. En este punto hay que tomar en cuenta que tenemos las linea.s de datos que se comunican con el bus XT y las línea$ que se comunican con el bus 488. Para el primer caso usamos el CI 74~5245. el cual es un transceptor octal con salida de 3 estad~s. Este circuito está conectado por medio de su bus A a los e bits de datos del bus XT y al puert<:> A del CI 8255A a trtivés del bus B. De esta manera tenemos la función de flujc• bidireccional necesaria y sólo tenemos que preocuparnos por manejar adecuadamente el habilitador del circuito Y la ti:-rminal de control del flujo de dirección con el fin de ~scr1bir o leer datos del bus. El problema de habilitar el circuito se resuelve fácilmente si se ocupa la misma señal que habilita al CI 8255A, como se habia mencionado anteriormente. La dirección del flujo de datos en el CI 74LS245 se controla por medio de la señal DIR. Si DlR toma el valor de cero 16gico, el flujo de datos va del bus B !Puerto A del CI 8255AI hacia el bus A (datos d-el bus :0:'!'). En el caso contrario los datos flu;;en d~l .~ 1 ,: A h3cia el bus ¡.... llT.ili::ando la misma -=ieh.'."1.l que habilita la seftal de lectura del CI 8255A. se logra que el CI 74LS245 esté normalmente leyendo los datos del bus 488 hacia la tarjeta. evitando así activar algt.in dispositivo por equivocación. Para el caso del manejo d~ las lineas de datos del bus 488 la situación se complica porque el IOar.ejo debe cumplir con los requisitos establecidos en el capítulo 1. Además, tenemos que hacer uso de circuitos de fácil adquisición que emulen el comportamiento de aquellos especialmente diseñados para este fin. Con base en lo establecido en la Norma se plantea la utilización del arreglo de la figura 3. 3 para cada linea de datos: 74LS126 7404 Fig. 3. 3. Transceptor utilizado para los dat.os del bus-488 Su funcionamientc es sencillo y ~e explica a continuación. Todas las lineas de datos las vamos a obtener del puerto A del CI 8255A. Para el caso de salida hacia el bus 488 utilizamos una ANO con salida dE: tipo Colector Abierto ( Ope>JJ t:'t:dlec. ... tc.u·), tal como es recoroi:ndado en la Norma, y en ei caso de recepción de datos del bus 480 un inversor CI SN7 404 y el buffe!· CI SN7 4L5125 con salida dtl tres estados . Es decir, todo lo que necesi t.emos mandar hacia el bus 488 tiene que pasar por el CI 74L5245, el Puerto A y el arreglo de la fig. 3.3. En el caso de recepción de información del bus 488, ésta pasa por el arreglo de adaptación, el Puerto A y el transceptor 74LS245, hast3 llegar al bus XT, de donde se toma para ser procesada. De lo anterior establecemos que el Puerto A tiene que ser programado para funcionar en forma bidireccional; además debemos tener lineas p:=!ir.~ controlar el flujo de información del circuito de adaptación por medio de la señal de control indicado en la fig. 3.3. Aprovechando que el Puerto C puede ser dividido en do~. de 4 lineas cada uno, vamos a tomar la parte menos significativa para generar esta señal. Siguiendo la tabla de verdad de una compuerta AND, establecemos que cuando haya un "1" en la señal de control activamos la compuerta, para que el dato presente en la otra entrada aparezca en el bus 488, y al mismo tiP.mpo, como esta señal la conectamos al control del CI 74LS125, lo ponemos en alta impedancia en el mismo momento y así evitamos cualquier falla por realimentación. En este momento el circuito se encuentra funcionando como salida. Cuando mandamos un "0" en la señal de control activamos al CI 74LS125 y ponemos en corte al transistor de salida de la compuerta, para que no interfiera en el flujo de datos. Asi el circuito esta funcionando como entrada. Se debe notar que existe un inversor que al parecer no interviene en la lógica explicada anteriormente; sin embargo, se debe recordar que el bus 488 trabaja con lógica negada, por lo que es muy comedo hacer este arreglo para evitarse el estar trabajando con instrucciones de complemento en la prog'ramación. Como soe explicó anteriormente, el flujo de datos lo establecen la señal de control que se manda a través del Puerto C1 pero hay que notar que se tienen qu~ manejar las 8 señales de datos, que requieren de un arreglo similar cada uno 1 por lo que es conveniente generar la señal e invertirla para alimentar a 2 inversores y obtener 2 señales de control iguales, llamadas l/01 .~o e I/02 en e.l diagrama del controlador. que manejen 1::.. mitad de lineas cada una y evitan el exceso de carga que pi.,eden generar fallas difíciles de detectar. 3.2.5 Manejo de las lineas de protocolo del bus 488 Para el manejo de las lineas de protocolo la si t.uación es un poco diferente, en el sentido de que no toda;:; las :3<:-ñales llevan el mismo sentido al mismo tiempo, como en el caso de las lineas de datos. En este caso el sentido de las lineas d~pende de como este funcionañdo la tarjeta. Uná: revisión de las funciones nos conduce a la siguiente concluaión. respecto a la dirección de las señales de protocolo: Cuando funciona como Controlador Y Emisor DAV y EOI Salidas NHFD y tlDAC Entradas Cuando funciona como Controlador y Receptor DAV y EOI Entradas NHFD y NDAC Salidas El principal problema que se presenta es que el CI 8255A no permite la programación individual de cada una de las lineas. por lo que se decidió manejar estas líneas por los Puertos B y C. Por el Puerto B se van a manejar cuando estén funcionando como sal idas y por la parte más significativa d~l Puerto C se van a leer cuando estén funcionando como entradas. Coroo el Puerto C está dividido en dos, la parte más significativa va a estar programada como entrada para leer las cuatro señales de protocolo. El circuito para ac,.plar estas señales al bus es básicarriente el mismo que en el caso del manejo de las lineas de datos. Este círcUito se rnutstr.:.. en la figura 3.4. El funcionamiento es el mismo excepto en que este se está manejando a través de dos puertoz. La linea de control la generamos también por la termínal 1 del puerto e, y al igual que en i:l caso anterior la invertimos para evi t :::r el exceso de carga. La s~fial !35 generada es la s~~bl !/03 d~l diagr~m3, Ja cu~! . vuelve a invo:-l'Lir par~ obt.e-n.:.\· i '« ~~ña1 n.:-g~da necesaria, a la cual llamamos I/04. L~ q;.1e tenemos que cuidar es conectar a una misma linea de contrc.:.l las s~ñ&les DAV y EOI y su negad.:. a las señal es URFD y HDAC para Cllmplir con el flujo adecuado d-=- las señales. La parte raenos significa.ti va del Pu-:rto C q 1Jeda programada como salida para generar las dos lineas de control 1Jtilio:adas. 7ilS12S "'º' Fig. 3.4. Transceptor empleado en las lineas de protocolo de comunicación del bus 486 3.2.6 Manejo de las lineas de control del bus 466 El caso de las 1 ineas de Cent.rol del bus 488 es mucho más sencillo, ya que considerarnos que nuestra tarjeta va a ser la única con funciones de Controlador dentro del sistema. Estas líneas son las necesarias para que la tarjeta tenga las funciones de Controlador y siempre van a funcionar como saljdas, por lo qui:- pueden ser generadas a tr.Ztvés del Puerto B. que necesita ser programado como salidb. y del cual teneruci:: v.;rias lineas n~· t1tilizadas. L3 adaptación al bus de estas señales la vamos a realizar mediante el circuito inversor SN7406, con salida de. colector abiel·t.(•. Las .::.:tlid.:'!~ que se van a generar a través de est'=' puerto son: ATN. IFC y REN. cada unl3 de las cuales son de uso exclusivo del Controlador del Bus. al:-. 3.2.7 Asignación de los puertos del CI 6255A Como resumen se presé1ta la asignación final de las lineas del bus 466 a los puer1'os del CI 8255A: linea del CI 6255A Puerto A "PA0 Puerto B Puerto e PAl PA2 PA3 PA4 PA5 PA6 PA7 PB0 PBl PB2 PB3 PB4 PB5 PB6 PB7 PC0 PCl PC2 PC3 PC4 PC5 PC6 PC7 línea del bus 468 DIOl 0102 DI03 DI04 DI05 DI06 DI07 DI07 DAV NRFD NDAC Sin conexión EOI REN IFC ATN Señal de control Señal de control Sin conexión Sin conexión DAV tlRFD NDAC EOI sentido bidireccional bidireccional bidireccional bidireccional bidireccional bidireccional bidireccional bidirecciofü"tl salida salida salida salida salida salida salida salida salida entrada entrada entrada entrada Capitulo 4 DESCRIPCION DE LOS PROGRAMAS DESARROLLADOS CONSIDKHACIONES DE PROGRA!!ACION Debido a que todos lo program.'1.2 que se desari1.>ll.:1rón pueden ser llamados como subrutinas a los programas de aplicación del usuario, so:- pensó en programarlae en un lenguaje que fuera senci.llo de programar y que fue-ra conocidc. por cualquie:r persona no experta en prügramación. llno de leis lengllaJes qu€' cumpl~n ·:•)n los requisitos anotados lineas arriba es el Basic. Se e.scogió el Turbo Basic porque aporta ventajas cora respecto al intérprete GW BASIC. sus programas son compilables y se pu~den genera1· archivo.e.. ejecutables que pu-:.-d-en 11::-gar a :·per::r hasta HJ0 veces más rápi::lo que sus equival-e:ntes en inti:brprete. Además, se puede programar en forma estructurada. lo que hace la programación y las corre-ccionee más fáciles. P.:i.ra personas expert~s. ~ ~pli~aciones en las que se requiera velocidad en el proceso, se tiene la facilidad de llamar a rut!na~ escritas o?-n lenguaje Ensamblador de manera mucho más fácil y ver3átil. logrando programas de alta eficiencia. Por todo lo anterior .:1 Turbo Basic aporta tod.Js las ventajas a un programador experimentado y co1Jserva la facilid.3.d de uso, inclusive a person3s no expertas y que requieran de aplicaciones demasiado sencillas. A continuación se present.a la explicación de los diagramas de flujo de las secciones más importantes del programa fuente. 4 .1 Dl!SCRIPCION DI! r.os DIAGRAMAS DK FLOJO Por facilidad de entendimiento de los diagramas de fluj ... "I, incluidos en el apéndice A, se emplean los valoree lógicos de las señales de la Norma. Hay que recordar que el bus 488 trabaja Ci..'"'n lógica negada. El primer di:1grama, figura 4 .1, describe los pasos que se llevar! ~ c~ 1 .,.:· ·,;c,u o;-1 corr..:indo INICIA. El prime1· paso es obtener la Jir-:-,:-•:·ión ~n la ·"' 1:;:;] ~ . .:. en1:-uentra itistal.•i.ia .. - .... j~t.f'I: ys. q·"te las ·:·::ii=-r.~ '"'" _: _ o:os,~ri tura y lectura a los pui:?rtos del ('! ft255A se ho.cen tomando esta dirección coni6 base.· .A·' é9ntinUac~ón se obtiené la di re:.cción de la tarjeta dent.ro de"L sistema. ,· tom&da en cuenta cuando actüe: como ~misor C: receptc.•r defatro·. del.' b11's. ·- ,' Tomando como dirección inicial·· "ia_,'óbtellida-· , programan les puert.r:is del CI 8255A para iriiciar." su· . operaciófi ·como controlador del bus; Puerto A Puerto B Pu~rto C (PC7-PC4) Puerto C (PC3-PC0) salida salida entrada salida interna Las terminales PC0 y PCl se colocan de tal manera que las señales EOI, DAV y DIO se configuren como salida y las lineas NRFD y NDAC como entradas. A continuación se colocan todas las señales, a través del puerto A y B. en cero lógico, a excepción de la señal REN, con el fin de indicar a todos los di spos i ti VL)S que estarán en control remoto cuando detecten su dirección en el bus. El diagrama de flujo de la figura 4. 2 es una subrutina utilizada para manejar el protocolo de comunicación del contrL""lador con alg(m dispositivo que se quiera direccionar como emisor. o bien mandar cualquier com3ndo de la Norma. Cuando el dispositivo coloca la señal NRFD en "0" es una indicación de que se puede validar el dato que se encuentre en ese momento, por lo que el emisor coloca la linea DAV en "1 ". El dispositivo responde colocando la señal NDAC en "0". En este momento el emisor hace la línea DAV igual a "0", dándose por terminado, en este mom~nto. el protocolo de comunicación. En la figura 4. 3 se muest.ra el diagrama de flujo empleado para colocar una dirección de rec-=-ptor en el bus 488. El proceso se inicia colocando la linea ATN en "1 · para indicar a "Codos los dispositivos que estén atent•:is al mensaje de las lineas de datos. Si todos los dispositivos están listos colocan la señal NDAC en "0" y se ccd•.•ca la dirección en el bus. en caso contrario, existe un error en el bus. La comunicación con los dispositivos se lleva a ca.bc1 con la subrutina de protocolo. explicada an'teriormente. En .::aso de existir más de una dirección de recept.or se re pi t.e el prot.o::olo cuantas veces sea necesario para el número de direccic-r1.=.:!i existentes. El proceso termina colocando ia. iíno;;:a ATN en su c!itado de re¡·oso, "0", sin c.ilvidar mantener la s2ii.al H:::N en su estado :ictivo. :l.:- AN - car un comando en el bus es similar al descrito anteriormente y está ilustrado en el diagrama de flujo de la figura 4.4. La variación consiste +n que se coloca el código del comando que se quiera ejecutar y no la dirección en laz lineas de datoz. Arismas, sólo es posible ejecutar un comando cada vez que esta zubrutina es llamada. El proceso de colocar una dirección de locutor en el bus está ilustrado en la figura 4.5. El valor final de la dirección de locutor del dispositivo colocada en el bus se obtiene sumándole un 64 decimal (48 hexadecimal), lo cual equivale a poner en 1 el séptimo bit de la dirección. evitando así que el usuario se preocupe por estou. A continuación se valida la linea ATN y se verifica que la señal NDAC sea igual a "9". si no es asi, existe un error en el bus. En caso afirmativo se coloca la dirección en las líneas de datos y se inicia «el protocolo de comunicación. En este momento se libera la linea ATN y el dispositivo queda designado como locutor hasta que se envie otra dirección o el mensaje UNTALK. El proceso de transmitir datos varía un poco con respecto al hecho de colocar una dirección o comando en el bus. La diferencia reside en el protocolo de comunicación, el cual tiene que saber si el dato que se trasmíte es o no el último, con el fin de manejar adecuadamente las señales DAV y EOI. El protocolo, ilustrado en el diagrama de flujo de la figura 4.6, se inicia leyendo el estado de la línea NRFD hasta que el dispositivo la ponga en "0". Sí no es el último dato se hace válida la señal DAY, mientras que la linea EO0l se mantiene en su estado de no válido. “£”. En caso de que sea el último carácter a transmitirse se validan simultáneamente las señales DAV y E0Ol, esta última le indica al receptor que se está transmitiendo el dato final. Cuando el receptor haga la señal NDAC igual a "0", el controlador maneja la linea DAV a "0", finalizando asi el protocolo de transmisión de un dato. El proceso completo de transmisión de una cadena de caracteres, la cual puede ser por ejemplo datos de programación para un dispositivo, se ve ilustrado en el diagrama de flujo de la figura 4.7. El primer paso es programar al controlador como lecutor del bus, para lo cual empleamos la subrutina de locutor, colocando la dirección de la tarjeta inidica en el comando INICIA. A continuación, por seguridad, se envia el mensaje UNLISTEN para evitar que algún dispositivo no deseado detecte los datos transmitidos. El siguiente paso e€es programar a todos los dispositivos indicados para actuar como receptores en el bus. El proce.sl..i para col oc~r n c ando e l s s i ilar l escrito .;tnteri rrr.-:tnte y st.á ilustra ·;, e l i r a e fl jo -Je l fi ra . 4. a ri ción consist~ ~n e s l ca i digo el co and(.• e s iera j utar y o l ir ción e la~ li as e dat~~. A~~m~s. s lo s sible j utar n c ando c.;i.da ve~ e sta ~ubrutina s lla ada. l r ceso e l car a ir ción e l utor e l s stá il tr;ido e l fi ra .5. l alor fi al e l ir ción e l utor el i ositivo l cada e l s ti ne ándole n 4 ci al ( 0 adeci al l, l al uivale ner e 1 l s ti o it e l ir ción. it do sí quE: l suario s r cupe or sto. ti 3ción s ali a l linE:a N V'::rifica e l ñal AC a i al 0'·. i o s sí, E:Xiste n rror l us. n so !'tr.:ati •:o ee l ca i ción s li as e t .s i ia el r t colo e unicación. n .ste omento lib 1•3 lí a N l 1i s osi tivo eda si ado c o l utor asta e s víe tra ir ción l :nensa.1e TALK. l r ceso e tr s itir atos aria n co c n r ecto l cho e Cúlocar a i ción ando l us. a i r ncia i e l r t colo e unicación, l al e e s er i l ato e s tr i te s o l lti o, n l fi e anejar ada ente l s ales V y OI. l r tocolo, ilu.str do e l i r a e fl jo e l i ra .6, i ia l do l t o e i a H FD 3sta e l i ositivo l nga e ". i o s l lti o ato ace áli a ñal V, ientras e a OI antiene s st o e o álido. "0··. n so e e s a l Ulti o rácter t s itirse li an i ult ente s ales V Y I, sta Ulti a i ica l eptor e stá t a iti do l ato al. uando l eptor ga ñal AC i al a " ", l ntrolador aneja l li a V a ". fi li do si l r t colo e tra s isión e n ato. l r ceso pleto e tra isión e a ena e racteres, l al ede r or j plo atos e r r ación ara n i ositivo, s e il tr o l i r a e fl jo e i ra . 7. l ri er aso s r r ar l ntrolador c o l~cutor el us, ara l al e plea os l rutina e l utor, l ando l ir ción e 13 t rj ta i i ica l c ando I I IA. nti uación, or uridad, vía ~l ensaje LISTEN ara itar e l n i ositivo o seado etecte l s atos t itidos. l iente aso r ar t Cos s i oeiti os i dos ara t ar v o ptores l s. Gt1ando los d!sp~sitivoe e5tén listos para re~ibir los d~tos colocan la señal NRFri igual a "0", indicando a.si que ~e pued~ iniciar la tr~nsmisión. El cor:troladi:i1· ·:·.:iloca el d.:-:tt.o en 1:..:: linea DIO y .se emplea el prot.ocolo o::mis1;,r. E.st-.::- proce30 es ejecutado hasta qué ~e V3Ya a transmitir ~l Ultimo dat.o. En este momento el controlador col•;,ca la sei:al EOI igual a "l · para indicar que ~l dato que va a a colc,·:ar -:n el bus e~ el ültimo d~to a transmitirse. Después de llevar a cabo el protocolo de comunicación. la t.ran.5misión so:: termina colocando las lineas de control en su estado inactivc-. El diagrama de flujo de la fi~ura 4.8. ilustra el proceso de leer dato5 provenientes de algUn dispositivo. Lo primero es configurar al dispositivo como eroi3c1r y la tarjeta como receptor del bus. El .siguiente paso es reprogramar los puertos del C! 8255A de la sigui~nte manera: Puerto A -:-J;trada Puerto F\ .=.,, 1 ida Puerto e IPC7-PC4J .:..-.- ··=-~ i; Puerto e IPC3-?C01 :::i:•.1.::s Nuesta .;i.eT.al de control interna. escrita en los líneas PCO y PCl, programa las lineas DAV ;• DOI como entradas y las señales de control NRFD y NDAC cvmo salidas. En este momento, ~e procede al protocolo de lectura. Si la linea EOI es igual a "0", significa que no es el último dat.c•, Y se espera a que la señal DAV sea igual a "0", dato válido, 5€: l-==€: el dato y se manejan las señales NRFD igual a "l" y NDAC igual a "0" hasta que el locutor coloque la linea DAV igual a ··0··, con lo cual el receptor, nuestra tarjeta, coloca la señal NDAC igual a "1 ". Cuando se detecte que la linea EOI sea igual a "1" es quo:: se leyo el último dato, por lo que los puertos del CI 8255~ s~ programan a su estado inicial. En el apéndice B se proporch•n3 un listado del pre.grama fuente desarrollado. El programa está completamente desarrollado en Turbo P.asic versit5n 1.0 de Borland lnternational, Inc. 45 Capitulo 5 APLICACIONES Y CONSIDERACIONES DE OSO DE LA TARJETA COHO USAR LOS COl!AHDOS A continuación se da una breve explicación de los formatos requerido~ y de las convenciones tomadas p&ra ~1 correcto funcionamiento de los Comandos. En el formato requerido para cada comando se siguen las siguientes convenciones: l. Todo d~be ser escrito en letra mayúscula. t!. No 5e puede iusertar espacios en blanco. 3. Todos los parámetros se separan por una diagonal (/). 4. Los parámetros por .ser de tipo carácter se encierran entre comillas. 5. El último carácter siempre det•e ser la diagonal. 6. Las direcciones de Receptor se anotan en base decimal, en caso de que exista más de una se separan por comas. No se permiten direcciones s~cundarias. 7. La dirección de Locutor se anota ~n base decimal. so)am~nt~ ~~ permite una dirección. 8. Un asterisco indica que se puede repetir el mismo parámetro varias veces. 9. Cada vez que se requiera usar un comando se debe igualar la variable PARAt1ETROS$ con el formato requerid-:· y mandar llamar a la subrutina COMANDOS. Cuando regrese de la subrutina ei comando indicado habrá sido ejecutado. 10. El comando inicia se debe ejecutar 1 SOLA VEZ y antes de hacer uso de cualquier comando. Recuerde que este comando iniciali=a todos los valc•res de las lineas del Bus. 5.1 RESUMEN DE COMANDOS A cont1n11ac1on se da un resumen de l•.)S .::omandos :Hsponibl€-s. al mismc1 tiempo que se anota su formato correcto y se da una breve explicación del manej•:> qu~ hace sobre las lineas del bus. C O M A N D O S Nombre : Inicia Formato: PARAl1ETR03$:" IllICIA/" Función: Debo:_: ~e!" usado sólo un&. ·1tz para iniciar la tar,ieta. Configur.:i los ¡.uertos para funcionar como un Locutor e inicializa todas las lin~as d-=-i bus a sus valores de reposo. Nombre : Limpia In~~rfaz Form~to: PARAMETF'OSJ:-::." IFC/" Funci•Sn: Valida lrt linea de Limpia Int<;:!:rfaz CIFCl ,- provocando que todas las lineas d9l bus sean inicializadas. Nombre : Todos .;..:;•s dispo!O:.i ti vos a LrJcal Formato: PARA11ETROS$: "TLOLr Función: Invalida la linea REN provoc&.ndo que todos los dispositivos r~gr~sen a la disposición de ser .:ontrolad'Js desd~ el panel de control local. Nombre : Todos los dispositivos a Remoto Form•to: PARAMETROS$:"TLDR/" Función: Val ida 1 a lfnF:;:a REN provc•cando que los dispositivos eean ·::c•locado!.; en control remoto cuando detec'ten su dirección -::n •:1 bus Nombre : Limpia a t.<:•dos los dispositivo¡;; Forrnoto: PARANEr&r13$0 "ADC/" Función: Colr..1ca <:!n <:d bus el mensaje "'ALL DEVICES CLEAR" el cual es pro·=esado por todos los dispositivos capaces d~ hacerlo. Nombre : Seguro contra control local Formato: PARAMETROS:t:" SCCL/" Función: Coloca en ~1 bus el mensaje "Local Lock Out" provocando que todos los dispositivos queden deshabilitados de ser controlados por medio de control local. Nomb1·e : Disposi ti veis Seleccionados a Local Formato: PARAHETROS$="DSL/direcci6n receptor*/" Función: Configura a los disposi t.ivos 1i stados para ser operados desde el panel de control frontal, liberándolos del con trol remoto. Nombre : Dispositivos Seleccion<'ldo::is a R..:moto Form3: _ · .!':iPAMETROS$="DSR/direcci6n receptor*/" Función: Configura a los disp·:·sitivos listad-:·s para ser operados desde el panel de contra] frontal. Nc.mbre : Limpla dlspositivcis selt-cc-ionados Formato: PARAMETROS$="SDC/direcc.i6n re-ceptor•/ Función· Manda el m~11saje "Sel~·::ted llev.:i·=~ Clear" a todos los disposi tivus listados provocando qu~ inicien Sll estádo de op-eraciOn. Nombre : Forma V_•: Furici6n: Habilitádor de disp~ro IJ<::r grupo PARAMETP.úZS:- ··i:;or /di r€:ccii .... ri reci::ptr.Jr" /" Tronsmicir .,1 mensaje "GROUP ENABLE TRIGGER" a di:.;~osi t1 -¡r_.~ li zta.".los prr...vocando qu~ inicien operación s: rnlll t4ne&ment~. los una tfombre : Es~ri be caráct~r F•:•rrnato: f'ARAHETWJS$;= ·· ESCCAR/direcci6n receptor"/ .. Función: Configura a la list!l de dispositivos ·para actuar como receptores y al control~dor como emisor del bus. Se tran!;mi tP- el código ASCII de los caracteres contenidos por la v&ri~ble DATO$. Solarn~nte s~ tiene implementado el final de transmisión mediante la linea EOI, la cual será válida· ~n el momento de tranmi't.ir el último carácter. Nombre : Lee dato Formato: PARAHETROS:S="LEE.DATO/dirección locut-:or/'" Función: Configura a la tarjeta para funcionar como r~ceptor y al di.=positivc• listado para trab~jar como locutQr del bus. Los date.·~ que scin ltidcis se interpro;:tan como .:aract~res ASCII y afiadidos a la variable DATO.STRING$. La ~an~idad de c.:i.racteres esta limi t.:i.d& por el Turbo Basic ..,. corresponde a 32767. En caso de que se necesite hacer cuyo formato no este en ASCII. el cada byte puede ser obt~nida ínstrucciono;:s: FOR IIHC!0%=1 TO LEIHDATO.STRING$l una le•=tura de dato.:; valor hexadecimal de con las ~ iguient:es PEIHT HEX$1 A5C(t1!D$f DATO. STRING$. IN!Cl0%,: l l l NEXT l!l!CIración STATUS% AND &H40 p~ra saber si el disposiL!vo V3lidó la linea 3RQ. Para cvnocer -:-1 ~ignificado de lo.:; ·:itros 7 lii r.s hay que ref~rir~e al m&hu&l d~l usuario del dispositivo. A indicada, hsbilitando al dispositive bus para Nombre Receptor Format PARAMETROSE= a ECEPTOR/dirección receptors+/*" * o Función: Este coman es usado para configurar una lista de dispositivos omo receptores dentro del bus:: . eN a Hombre : Nolorntar Formato: PARAMETROS$="NOLOCUTOR/" : Función: Mande :-1C•n i.:. ~,- .. ~~·':'","·'· .;,."isi ti v-: :: !-1 :,p-'-"c:.~· ,~.-.:r,-:. ! nt·.:>r d~l lit1:: fk, bre : R€-c~pt-:•r !•orr..at.o: ? HE?FWS$;:: · !-!ECE!-'Tllf.' id ireci:-i6n eptor:.t /'' unción: ste -:ornando e~ do ara nfigurar a !.iSta e i sit c•s como r~ceptores ntro oel us. Uo brr:- r :sto: unción: HoirJ ::1;tc•r ~~~~~E~~º~!; 1 ~~~~o~~1ie~~~&l ··u TALK" Carido· cltú:·:: todoS~: ~ s i osi tí vos l us eden -i~J:iab~.1-~t~~OS ·:'C~oma.· .. isores. ombre oreceptor f atr,: 11ETRO $= "U FECEPTOR/"' unci6n: ste &ndo rni t'=' ~1 ens&.je i er-sal " HLISTEH·"· ndo i: o l todo e i ún i ositivo ede abilitado o eptor. .2 RAllA K I CI H l guient.o;: r a s n plo e a e ede r ar rjeta. a ostración ace n n r cesador e •:ñales arca NEI odelo 26S e n c-ilo nal od .::; s andos e eración el is o r n t nidos el anual el sario el e uipo. ási ente e demu~st.ra o r ar n ~quip·:i, a oa er atos, n al v.il1 11 s ci nes e e t.rol ador, ~mi sor eptor. ste r r a be r p1ladc• to -=on l r a nte el ntrolador ara ar l r a e li ción pleto. l r a '?'be r tado '1 putadora n rj ta e i eo A onitor lor. RAllA E !,I CI N EL SO E RJ TA I K-4 8 Rl'rO H O DO ll SIC KRSI N .1! TOR: ll DO NO ll!REZ. 'D JA TA LA E •.'JON 3G EE!l fJWC-1.1 J-( l, -1 J FOR ANGUL0=0 TO 2•PI STEP 2•PI/INCREM: RADIOS=COSC2•THETAl X=RA11IOS•·C03 C VALl •THETA) Y=RAD105•SINCVAL2•THETAl PSETCX.YJ NEXT ANGULO LOCATE 13.l?:PRINT "IEEE-488" LOCATE l .&:Pf,ltlT ··rnsTITUTO DE INGENIERIA" WHJLE NOT INSTAT : WEllD SCREEN 0: WJ DTH ·· SCRN:". 80 'INICIA LAS OPERACIONES Y CONFIGURA AL SANE! COMO RECEPTOR DEL BUS PARAMETR05$=" Ill!CIA/2/&H310/" :GOSUB COMANDOS PARAMETROS$="IFC/":GOSUB COMANDOS PARAMETR05$:"DSR/1/":GOSUB COMANDOS GOSUB PRINCIPAL . CREA LA PANTALLA DEL l1EllU PRINCIPAL PRINCIPAL: FIN%=0 WHJLE FJN';;:0 COLOR 0, 1 CLS COLOR 4 CALL CUADRO(l.3,13,65,2191 COLOR 15 LOCATE 2.17:PRINT "l1ENU PRINCIPAL DEL PROCESADOR DE SEilALES SANEI" C~:~ CUADROC8,18.13,65.177l COLOR 15.4 LOCATE 10,29:PRINT 1.- LOCATE l~.29:PRINT " 2.- LOCATE 14. 29: PRINT .. 3. - LOCATE 16.29:PRINT 4.- 0PCION%=0 PROGRAMAR SANE! LEER DATOS IMPRI!1IR SALIR WHILE OPCION% '· 1 OR OPCION% > 4 LC>CATE 22.13:J!IPUT: "SELECCIONE OPCION : '',OPCION%:BEEP WEND SELECT CASE OPCION% CASE l:GOSUB PROGRAMA.SANE! CASE 2:Gúo!JB LEER.DATú3 CASE 3:GúSUB IMPRIMIR CASE 4: CLS: END EIW SELECT WEND "SOMBREA UllA REG!ON DE LA PA!lTALLA SUB CUADR01RE!l. !NF%, REN. SUP%. COL. !NF%, COL. SUP%, FONDO%) FOR J%=REtl.111F% TO REN. SUP% FOR !%=COL.!NF% TO COL.SUP% LOCATE J%,J%:PR!NT CHR$!FOND0%1 llEY.T !% llEXT J% Ellii SUB "BORRA UNA f Sl'B "B'.'TINA DE LECTURA DEL DATO INDICADO POR.-EL CURSOR LEER. D.l:. T(>S: COL(•? 0, 9 •cLS COLOR 4 CALL CUADRO!l.3,13,65.2191 COLOR 15.4 LOCATE 2.19:PRI!lT ""MEllU DE LECTURA DEL PROC?.SADOR DE 5Ef1ALES" COLOR 15.6 CALL CUADR0!5,10.l.16,177l LOCATE 6.8:print "MEllU l":LOCATE 8,4:PRINT " PANTALLA CALL CUADROC5.10.21,36.177l LOCATE 6, ~8: print ""MENU 2": LOCA1'E 8, 26: PRINT "CURSOR" CALL CUAD~OC5,10.~l.56,1771 LiJCATE 6,48:print 'MENU 3":LOCATE 8,46:PR!NT "LECTURA" CALL CUADR0(5,10,61,76,1771 LOCATE 6.68:prin• "ME!lU 4":LOCATE 8.66:PRINT "SALIR " TECLA%=\J WH!LE TECLA% = 0 üPCIOll'~=0 WH!LE OPGIOll%< 1 OR OPC!ON%>4 LflCATE 15. l: !llPUT: "SELECCIONE OPCION ". OPC10l1% WEll!J SE!,ECT CASE OPC[(Jtli: CASE 1: CALL BORRA(l5,15,l,30) LOCATE 12.15:PRINT "l.- LIBERAR PANTALLA" LOCATE 12.40:PRINT "2.- FIJAR PANTALLA" A 7] WHILE MENU% < 1 OR MENUX > LOCATE 15,5: INPUT: "SELRCO :IONE OPCIÓN. WEND (SELECT CASE MENO% : CASE 1:DATOT="TH1":CASE 2:DATOS="TH2*: PARAMETROSS="ESCCAR/1/”:GOSUB.: COMANDOS CALL BORRA(15.15,1.35) : E CALL EORRA(12,12,13,€9) - Y MENUX: BEEP CASE CALL BORRA(15,15,1, 38 ) LOCATE 12.5: INPUT; "INTRODUZCA DESPLAZAMIENTO (060-1023) “ ,DESP3:BEEP DATOS="CM"+DESPS - PARAMETROS3="ESCCAR/1/":GOSUB COMANDOS CALL BORRA(12.12,5,50) CASE 3: CALL BORRA(15,15,1,30)5 LOCATE 12.15:PRINT “1.- CURSOR SUPERIOR” LOCATE 12,49:PRINT “2.- CURSOR INFERIOR” HENU%=9 WHILE HEnOs € < 1 OR MENU% > LOCATE 15.5: INPUT; SELECCIONE OPCION :",MENUZ:BEEP WEND SELECT CASE MENU% CASE 1:DATOS="CR1":CASE 2:DATOS="CR2":END “SELECT PARAMETROS 5="ESCCAR/1/" :GOSUB COMANDOS DELAY 1 PARAMETROSS="POLEO.SERIE/1/":GOSUB COMANDOS PARAMETROSS="LEE.DAT5/1/*:GOSUB COMANDOS CALL BORRA(12,12,13,€8) CALL BORRA(15,15,5,45) LOCATE 15.5:PRINT “DATO LEIDO ” ,DATO.STRINGS WHILE NOT INSTAT:WEND CALL BORRA(15,15,5,70) CASE 4:GOSUB PRINCIPAL END SELECT WEND: RETURN “RUTINA PARA IMPRIMIR CONTENIDO DE LA PANTALLA DEL SANEI IMPRIMIR: CLS CALL CUADRO(9,15,15,65.177) LOCATE 11,19:PRINT “ESTE COMANDO IMPRIME LO QUE SE TENGA EN LA” LOCATE 12.19:.FRINT “PANTALLA DEL PROCESADOR DE SEÑALES EN EL ” LOCATE 13, 19: ¡PRINT “MOMENTO DE EJECUTARSE... RESPUESTAS=" . WHILE RESPUESTA+<>"N" AND RESPUESTAS<>"n" AND RESPUESTAS _ <>"5" AND RESPUESTAS<>"s" O CATE 18,15: INPUT “EJECUTAR COMANDO S/N :” RESPUESTAS SELECT CASE RESPUESTAS CASE “N":RETURN:CASE "n”: RETURN :1EllU%=0 WH~~~A~~N~;, ~: i¡¡~tT ~E~!~~L~C~IONE PCIÜN. : ", NU%: EP EllD T G 3E EHU SE l:DAT :J:=''THl": ASE : T0$="TH2 .. :END SELECT f= .. ES CAR/l /" :GOSUB AllDOS L RAC12.J2,5.50) SE : L RAflS,15 1,301 ATE !2 1 I T "l.- SOR PERIOR" ATE . 0: I T " .- SOR N RIOR" NU';=0 HlLE M NU% R U% 2 TE l f,. 5: JNPUT; "SELE CIONE J N : .MEN % :BEEP END L CT SE H % SE :iJ TíJ$:"C!ll" :CASE 0$=" R2" :END SE T P HETF<'lS:J: AFU 1 /" : SUB ANDOS f>ELAY H $ " LEO. 3ER1E /l /": GOSUB ANDOS :J: " E. DAN 'l/" :GOSUB ANDOS L Af 12,12,13,B0l L RAflS.15,5,45! ATE .S: I!IT "D TO I DO :",DATO. l G$ HILE tl T J T: END L U RACJS,1 .5,70) SE G UB ill l AL !I L CT END: N . TI A A I RIMIR NTENIDO E TA LA L NE! RIMIR: LS A L ADROC9.J5.lb.6b.J77l ATE . : HJNT " TE ANDO I I E E A " TE . 9: P INT " TA LA L ESADOR E 11ALES li: L ATE 3,JS:P illT "M ENTO E TARSE ... SPIJESTA$:"" HILE ESTA$< >"ll" !I SPUESTA$<>"n" D ST $_· "S"' D li !! ESTA$<' "' s" l.O TE . 1 f,: T "E, TAR ANDO / ·· . RESPUESTA$ WEND L CT SE PUESTA$ SE . tr•: ETURN: GASE .. : CASE "S":DATOS="PS":CASE "s":DATO$="PS" ;;;ND SELECT FARAMETRn:;;: . :8 LOCATE 22,l:JNPUT: "SELECCIOllE OPCION : ",OPCION'li WEND SELECT CASE OPCION% CASE l:GOSUB MENUl CASE 2:GOSUB HENU2 CASE 3:GOSUB MENU3 CASE 4:GOSUB MENU4 CASE 5:GOSUB MENU5 CASE 6: GOSUB ME1Hl6 GA$E 7: GOSUB ME!H17 CASE 8:ClOSUB PRJNCIPAL END SELE('T WEND 'MENO DE CARAGTERISTICAS DE DESPLIEGUE EN PANATALLA MENO!: CALL BORRAC22.22,l.351 LOCATE 19, l :PRINT · i. - REJILLA .. : LOCATE 19 .15: f'lUNT "2. - CURSOR'" LOCA TE 19. 28: PRIHT "3. - EJE V.": LOCATE 19, ·11: PRINT "4. - EJE H." LOCATE 19.55:PRINT "5.- SALIR" DE:SPLIEGUE%=0 WHILE DESPLIEGUE%=0 11Etl0%=0 WHI LE HEllU% 1 •)R HEIH1% ' 5 LüCATE 23.l:IllPUT: .. SELECCIONE TOPICO DE DESPLIEGDE : ·· • HEtlU%: BEEP WEllD SELECT CASE HENO); CASE 1: CALL BORRAl22,23.1.50) LOCA TE 21. W: PRINT .. l. -SIN REJILLA" LüCATE 2J.30:PRillT .. 2.-CON REJILLA .. HENU%=0 WHILE HENO% < l Oh HENlJ% > 2 LOCA TE 23, J: IllPUT; .. SELECCIONE OPCION : .. ,HEllU%: BEEP WEND SELECT CASE 11ENU% CASE l :DAT0$: .. GRl" :CASE 2:DATO:i:="GR2"' :EtlD SELECT PARAHETROS$= .. ESCCATll l / .. : GOSUB COMANDOS CALL BúRRAí21.2J.l,601 CASE 2: CALL BORRAí22,23,l.$0¡ LOCA TE 2 J • J: PRINT ' J. - CURSOR APAGADO" LOCATE 2J.2J:PRINT .. 2.- CURSOR DE LINEA .. LOCATE 2J.42:PRINT .. 3.- CURSOR DE HARCA .. HENU%=0 WHILE HENU% l OR HENO% > 3 LOCATE 23.l:INPUT; "SELECCIONE OPC:ION , .. ,HENU%:BEEP WEND SELEGT r;A SE H EIW% CASE J:DATO:t="COJ":CASE 2:DATü$= .. C02 .. :CASE 3:DATO$='C03 .. END SELECT PARA11ETROS:t="ESCCAR/l/ .. :GOSUB COMANDOS CALL BüRRA121.23,J,601 CASE J: CALL BORRAC22.~é.I ,501 LOCATE 21.J :PRINT "J.- E.JE VERTICAL LINEAL" LOCA TE 21 . 3(1: PRJNT "2. - EJE VERTICAL LOGARITHICO" HENU%=0 WHILE HENU% < l OR HENO;. , 2 LOCATE 23, J: l NPUT; "SELECCIONE OPCION : ... HENO%: BEEP WEllD SELECT CASE HENl/% CASE I:DATIJ$:'YL!' :CASE 2-DATIJ:t:"VL2":END SELECT PARAMETRDS:t="ESCCAR/J;":(;OSllB COMANDOS CALL BORHA f ;,¡. 2::, J. 601 CASE 4: CALL BDRfiAC 22. 23, l. ;.0 1 LOCATE 21.l :PRINT !.- E.JE HORIZONTAL LINEAL" LüCATE 2J.30:Pf 12 !.OCATE 23.l:INP\JT; 'SELECCIONE ESCALA DE FRECUENCIA :",HENU%:BEEP WEND SELECT CASE l1ENU% CASE l:DATO$:"FR1":CASE 2:DATO$="FR2":CASE 3:DATO$="FR3" CASE 4:DATO$="FR4":CASE 5:DATO$="FR~":CASE 6:DATO$:"FR6" CASE 7:DATO$:"FR7":CASE 8:DATO$:"FRB":CASE 9:DATO$="FR9" CASE 10: DATOl:= 'FR10" :CASE 11 :DATO$="FRIJ": CASE 12:DATO:t="FR12" END SELECT PARAMETllOS:t= "ESCCAf 7 5. -10 dB" 6. -20 dB" 7. -30dB" LüGATE 23. l: lNMJT; "SELECCJONE E5•:ALA DE SENSIBILIDAD :",HENU%:BEEP WEHD SELECT CASE !1ENU% CASE l :DATO$:"SE1" :CASE 2:!1ATO$="SE2" :CASE :<:DATO$="SE3" CASE 4:L'ATO$="SE4":CASE 5:DATO$="SE5":CASE S:DATO$:"SE6" CASE 7: flATO$="SE'I" END SELECT PARAHETROSl:= .. ESCCAR/1 /": GOSUB COHA!i!IOS CALL BORRAr19.23,!.52l RETURN / ºMWU DE DOMitlIO r•E DESPLIEGUE MENU4: 1';AUL DORRA ( 22. 22. 1, 35 J LüCATE 19.2~:PRillT "l.- HECUENCIA" Lo1;ATE W. Z5: PRINT "3. - TIEMPO" L 4 LOCATE 23, 1: INf'tlT: "SELECCIONE DOl1INIO DE TRABAJO : ..• MIWll%:BEEf' WEND SELRCT CASE HENUI CASE l:DA'l'O$="BH1.V52":CASE 2:DATO$="BH1.VS1" CASE 3: DA'l'O$="BH1, V52. BH2, 'U¡": CASE 4: DA'l'0$= "BHl, VSl, BH2, VS2" END SELECT PARAME1'ROS$= "ESCCAFV 11 ': GOSllB C011AllD05 CALL BORRAf 19, ~3, l , 52 l : RETllRN 'l1ENU PARA ESCRIBIR O BORRAR ETIQUETA EN LA PANTALLA DEL SANE! MEtlll5: CALL BORRAl22.22.l.351 LOCATE 19, 25: PRINT "l. - ESCRIBIR ETIQUETA" LOCATE 20.25:PRINT "2.- BORRAR ETIQUETA" MENU%=0 WHILE MENUI < ! OR MENO% > 2 LOCATE 23.l:INPU'J': "SELECCIONE OPCION :",MENU%:BEEP WEND SELECT CASE MENO% CASE l: CALL BORRAC21.21.l,79l LOCA TE ~l, ! : INPUT "E'J'HlUETA Cl:IAX. 52 l:", ETIQUETA$ DATO$="LA"+ETIQUETA$+"," CASE 2:DA'l'O$="LE" END SELECT PARAMETROS$="ESCCAR/l/":GOSUB COMANDOS CALL BORRACl9.23,J.€0) RE'l'URN 'EJECUT /, EL COMANDO ALL DEVI CE CLEAR DE LA NORMA MENOS: PARAME'fROS$= "ADC/": GOSllB COMANDOS CALL BORRA( 22. 22, 1. 35 1 HETURN 'MENU DE TIFO DE t1Er•ICION AC/DC MENU7: CALL BORRAC 2~. 2~;. l . 35 l "n<:An· :•0,30:PRINT "l.- MEDIR Al:" LOCATE '.:\.:<0:Pfi!N'.!' ";;.- 11>' ME!:U%=0 w;;' ' !1EtlU% < l OR !1ENU\\ > 2 LüCA TE 23. l : INPUT: "SELECCIONE TIPO DE MEDICION : ", MENU%: BEEP WEN[I :;ELECT CASE MEllU% CASE ::DATrJ~="hCl":CASE 2:DATO$="AC2" EllD SELECT PARAl1ETl as s i nes e r ación l cesador e ales r n t nidos el anual el suario. a exión tre l r cesador e ales s cha és el ble endado orma. as it ntes e rj ta n: l a rj ta s si erada r ica ontroladora el us, or e o ocerá i ún ando ara sferir l ntrol el us. 2. o porta l iento t ndido. 3. o s az e acer cuestas lli g) aralelo. 4. o oce lín~a e ción . 5. a l cidad e f rencia e atos o s uy lta bido e stá j do n s " do-transceptores". ecuerde e s l ci ades l t s e a isión requi~ren e eptores ci l ente i ados ara nectarse l us. . o permit~ l anejo e ceso i cto emoria { A). ntre s ci nes ás portantes cuentran: l. . . . . . . . . ple enta s nciones e ontrolador. isor eceptor ealiza s r t colos d~ isor eceptor iene acidad e ~n~iar l i piado e t rfaz ). ede viar ñal N ara utar tre ntrol emoto/Local. iene acidad e cuestar rie P<>llJng) ontiene ci nes e i pia ispositivo, isparo e ispositivo nciones d~ emoto/Local. s n edio ci lo e lace n l ft are o?t t..ravés e urbo asic fectúa a l ción pleta l 1·ango sible e iento u sto s ucho enor parado n l e s j tas erciales na i sión rable a bre s sventajas s e o s !STA SALJR 'fESIS DE LA NO DEBE füB;.;IJlEGA común que haya más de un Controlador dentro de un sistema. Por lo regular siempre que haya más de un dispositivo con está capacidad sólamente uno puede controlar todo el sistema. En cuanto al direccionamiento extendido será un problema en caso de que el equipo tenga funciones que ltnicamente se puedan accesar a través de un direccionamiento de este tipo. En caso de que se requiera habilitar esta furición se tiene que modificar el softw~,re en la subrutina de Control, para las direcciones de Receptor. y la de Locutor para las direcciones de Emisor. Las modificacione~ tienen que contemplar que después de haber colocado la dirección primaria en el bus se tiene que colocar la dirección secundaria en caso de que exista. Por lo que se refiere a la incapacidad de encuesta en paralelo, se puede decir que se tiene la alternativa. aunque más lenta, de ~ncuest.a en serie. Sin embargo, si es indispensable agregar estas funciones se tienen que pro.gramar todas las rutinas necesarias. En relación a la línea SRQ, se tiene la posibilidad de conectarse a través del CI SN7404. La linea se conecta1·ía directamente a una linea de interrupción del microprocesador y se tendría que preveer las rutinas de acción necesarias para atender esta señal. Es común que despues de detectar la linea SRQ se haga cualquiera de los dos tipos de encuesta, que en nuestro caso solamente es uno. La linea SRQ es activada cuando alguno de los dispositivos detecta un problema en su funcionamiento, como en el •:aso de un pedirle que ejecute un comando no existente. Por Ultimo. la velociC'J=i·-, .1.:. '!'".,·;·· =-;~ ::.i· tJ·~· •.::..: 1•,_ •. __ :_.1._ 'lu•: sea mejcn·ada a menos que se sust.i tuyan los r.ransceptv1·0:::~ por los adecuados, con las consecllentes mejoras al lMt·d¡.¡~·u·e y sc)ftW."l.l'e de la tar,ieta. Por esto último, tampocc• es l :·gico hablai.- de una transferencia DHA cuand.-;1 de antemano cttbemos que nuestra velocidad está limitada por nuestros propios dispositivos. En cuanto a la operación de nuestra tarjeta se comprobó que puede funcionar como Contrulador. Emisor y ! .. ~ceptor del bus, lo cual satisface nuestroz objetivos iniciales. Además el costo final de la ta.i.·jeta es aproximadamente un 20% del total de una tar .ieta comercial y todos lc•s coruponer1t.eE. son de fácil adquisición. En el programa de demostración, en donde se utilizan una gran cantidad de los comandos disponibles. se muestra como la tarjeta funciona correctamente. 59 Todo esto nos lleva a la conclusión de que la tarjeta funcionará correctamente para una aplicación especifica. Recuerde que el programa desarrollado solamente es demostrativo y que el usuario deberá desarrollar su programa de aplicación con base en sus necesidades y apoyándose en los manuales de usuario del equipo que se quiera emplear, y haciendo uso de los camandos disponibles con base en lo indicado en los capítulos previos. 6íil BIBLIOGRAFIA l.- A. J. Bouwens. Digital lnstrumi:!ntation. He Graw-Hill OSA 1984 2. - 11orga?l Christopher, Wai te Hi tchell. Introducción al micropro- sador 8086/8088 (16 bitl. HcGraw-Hill. México 1984 3.- Sargent Murray. Shoernaker Richard. The IBM Personal Computer from the inside out. Addison-Wesley. USA 1985 4.- Tocci Ronald. Sistemas Digitales. Prentice Hall Hispanoamericana. México 1987 5. - Bernardini Higu~l. Interconexión de instrumentos d~ medida. EL GPIB: una no.croa internacic-n3l efectiva. Hundo el'=!!ctrónico de Boixareu editores número 103 enero 1981 p 49-54 6.- López F.J .. Gutierrez P.M. y Castells F.J. Interface micropro- cesador bus IEEE488. Interconexión de periféricos a micropro- cesadores. Serie Hundo Electrónico. Barcelona 1980 p 146-152 7 .- Young Fichard. Implemeating an IEEE-488 bus controller with microprocesor software. IEEE transactions en industrial electronics and control instrumentation volumen IECI-27 febrero 1980 e 10-15 8. - IEEE Standard Digital lnto::rface fer Programmable Progr,mmable Instrumentation. The Institute of Elect1·i·o.1l and Electronics Engineers, Iric. 9.- Manual Turbo Basic version 1.0 Borland International, Inc. 1987 10. - Micropro 1:essor and Peri pheral Handbook, V.el. _'.1 IntP.l. Santa Clara 1988 11.- Manual Signal Processor 7T26S. NEC SAN-El lnstruments. LTD 12. - SS!1 AH88 IEEE-488 cont.roller instrUction .nianiúí1: SSM Microcomputer Products. lnc. Junio 1981 13. - LS/S/TT!, Logic Databook. Natior.a.1 Semic•:.nduct.or Corporation. 14. - IEEE4B8 lnterfa .. :e 1nstallation manual Userºs Guide Scientifi: Solut:ons, lnc. APENDICE A IHICIA i REH REGRESAR ¡Diagrama de flujo para iniciar el Cl 82554 y-las líneas del bus 488. Fig. 4.1. JHl~IA ~H~~J8 C: ~~~ f ~2 PC0-PC3 z SAL 1 DA PC4-PC? 1 EHTRADA [110,[•i:t•.I. ~fü~~~~ ÁTH:0 E . = 1 RESAR 'ig. . . i r a e jo ara i iciar l Cl 6 5A ·las i as el us 8. Fig. 4. 2. Diagrama de flujo para rnanejar el protocolo GPlB para transmitir un comando ·:i dirección de receptor. ATH = 1 E $1 ERROR EN P A SUBRUTINA DE PROTOCOLO ATH <= 08 REN " . 5 Sig. 4.3 Diagrama de flujo para colocar las direcciones de recepter en el bus, SUB~UT 1 HA I>E COLO Fig. . 3 iagra a e jo ara l car s t:: ciones e eptor l s. $U9RUT 1 HH DE PROTOCOLO Fig. 4.4. Diagrama de flujo para colocar un comando sobre el bus 486. SUBRUT 1 HA PROTOCOLO Fig. 4. ~. Diagrama de flujo para confi~urar 'un elemento como locutor. Fie . .¡. ~ ... Diagrama de flujo para man-:-.iar t:l protocolo GPIB en la •.ransmisión de dato~. SUBRUT 1 Hit LOCUTOR COLO<:A t1EHSHJE UHL 1 STEH ':;UBP.UT 1 HH •:OHTROL SUBRUTI Hll PROT, EM 1 SOR Fig. 4. 7 Diagrama de f! ·1.io para controlar la escri t.ura de da.tos en el bus. LECTURH SU8RUT 1 tlH LO.:UTOR 08T 1 EHE [• 1RE•:O:1 OH l•E LA TARJETA SU8RUT l HH .:OH TROL HDAC = 1 REGRESA Fi g. 4. ti. lJiagrama de flujo para controlar el Proceso de lectura di:: dat.,s. APENDICE B APKHDICE B PROGRAHA FUENTE DF.L CONTROLADOR !EEE-488 HH REH REH REH lNTERFAZ JEEE48B PARA COMPUTADORA XT ESCRITO Ell TURBO BAS!C AUTOR: ARMANDO LOZANO RAMIFEZ REt1 "**••• COMIENZO DE SUBRUTINAS DE APL!CACION ·*-*·* ..... * REH COHANDC>S: GOSOB ANAL! ZA ·SUBRUTINA DE úBTE!lCION DE PARAHETROS SELECT CASE CAHl'0$ í 0) • TOMADO DE PARAMETBOS$ CASE "JNICIA" GOSOB INICIA CASE "IFC" GOSUB IFC CASE ··LOCUTOR'" GOSUB Lfu: 1r!"•R CASE ""RECEPTOR .. GOSOB RECEPTOR CASE "NOLOCUTOR"" GIJSllB NOLOCUTOR CASE ""NORECEPTOR"' GOSUB NORECEPTOR CASE "DSL" GOSUB DSL CASE .. TLDR'. GOSUB TLDR CASE "'TL!IL" GOSO:< TLDL CASE "SCCL" GOSUB SC'CL CASE '"GOT"' GOSUB GOT CASE "SDc·· GOSUB SDC CASE "ADC" GOSOB ADC CASE "DSR" GOSUB DSR CASE "ESCCAR" GOSUB ESCCAR CASE "POLEO.SERIE" ClOSUB PflLEO.SERIE CASE "LEE.DATO" íWfit1B LEE. DATO CASE "LEE.A.ARCHIVO" GOSllE. LEE.A. ARGHIVO CASE ELSE Pf O THEN “HAS DE-UN RECEPTOR CAMPOS (1)=CAMPOS(1)+" FOR N1%=3 TO LER(CAMPÓSC1 0) N2%=INSTRINI%,CAMPOS(1),",") "POSICION DE LA ",” DIRA (X%12VALIMIDENTCAMPOS(1),N1%,N2X-N1%))+4H20 Xx21%+1 HIT=N2% NEXT N1% ELSE “UN SOLO RECEPTOR DIRS(8;=VALICAMPOS(1))+H20 “DIRECCION DE RECEPTOR Xñ=1 END 1F RETURN REN xxksexrstx SUBRUTINA DE PROTOCOLO *exkgxarar PROTOCOLO: ZEM MANEJA LAS SEÑALES DE PROTOCOLO PARA COLOCAR UNA * DIRECCIÓN O CUMÁNDO EN EL BUS TADO1%=INF(PTOZ%) “LER NRFD WHILE (ESTATCAS AND AROBIOEOIÓ) = 32 “MIENTRAS RRFD=1 ESTADO1%= INF(PTODZ%) WEND GUT PTOJ%.AHAL “DAV=1 ESTADO%= INP 1PTUZS) “LEE EDAC WHILE (ESTADOS AND “BO1IODDOG) = 64 “MIENTRAS NDAC=1 ESTADOR= 1NPILFTO2ZRO WEND == o] “ATN=O, REN=1.DAV=9 RETURN REM exrserraste GUBRUTINA DE CONTROL errar CONTROL: REN CL GosuB 1 QUT PIO TADOS ¡NA DIRECCION DE ro EN EL 3US ECCion CION NE TIRECCIONES HH a «AT » DE (LOGICOS) INPIRTNZO “LEE EL ESTADO PE NDAU o :~~Lr~:~*****• R OT!NA ALIZA **-"******_. \ ¡ El1 ll !..IZA LA !-.-HAC ~S7A!Jt)%:: IN?I V:'f):_:".. 1 ~ECC:FN~ L S S . [1ETECCll)N flE I1! CHfl'ES 'F·E~f=l.ATH=1.DAV::0 íL I OS) 'L L Dfl f>F. At• IF ! ESTADO% AND &B011.'\000fül) = 64 THEN .DETECTA SI NDAC=l FOR L%= 0 TO X%-l IF DIR%! L% 1 · = &H20 Pf= &H3E THEH DE RE~EPTOR INVALIDA: . :Dim~rL%l TERMINA!'iA . .... ELSE OllT PT00%,flIR%CLl;> GOSUB PROTOCOLO END IF 'DIRECCIONES 'IAL!DA!: ·roNE LA DIRECC:•:,:· ::; EL BUS ·MANEJO DE PROTOCOLO NEXT Lo/, ELSE PRJllT "ERROR EN EL BUS SUBRUTlllA CONTROL PRINT "EJECUCION TERMINADA ... " END END H OUT PT01%, &H22 RETURll . ATN=0,REH=l REM ********** MEMSAJE ********** MENSAJE: REM COLOCA Etl EL BUS UN COMANDO ENTRADA: COMANDO% SALIDA : ACCION INDICADA POR COMANDO% OUT PTOl % , &HA0 'REN=1.ATN=l .DAV=0 . LEE NDAC ESTAD0%=INP! PT02" 1 IF !ESTADO% AND &B(l1000"1001 OUT PT00%. CCiMANDO% 6•1 THEN 'DETECTA SI NDAC=l • COLOCA MENSAJE EN EL BUS . MANEJO DE PROTOCOLO GOSUB PROTOCOLO ELSE PRINT "ERROR EN EL BUS, EJECUCJON TERMINADA ... " END END IF OUT PT01%,&H22 RETURN RKll ****"****" SODRUT!HA DE IHICIALIZACIOH ********** INICIA: REH CONFIGllRACION INICIAL M!DJR%=VAL!CAMPO$! 1 l l DIRBASE%=VALCCAMP0$( 21 l PT00\=D l RBA5E% PTOl %=DI HBASE'.l:.• 1 PT02'.<=DIHBASE%+2 DE LA TARJETA 'DIR~CCION DE LA TAff'' REl1 hlNE A rnoos UJ.3 I1ISPOS!TIV(JS EN CONDICIO!l DE 3Efi . GCJHTRL1L,.;r10S POh EL ~ns uUT f'TOl;t. ~d!A0 . mm= l RETURtl REH *'* •• • SUBHUT! HA DK SEGURO COHTRA COHTROL LOCAL •••••• sc•:L: HEM E?lV1A EL C:0!1ANDO lJ!UVEh':::;AL r.iJ,'AL LOCK OUT INHABIL!TAtmo . EL f'f..tH:!... lJC CUHTfiCJL OUT PT·.!l \. M!A0 'ATN=l C'OMAlff!(1\.::&Hl l • LUCAL LfJCY. OUT ~=ostlP !-:E!l3A~lE "COLOCA Etl ::L PUS EL MENSAJE 1 1t1T !-'T::,1·,.,_,,P,A\:, 'ATH::l f'ETll! .. ~t RE!! **** GUBHUTINA DE llABILITADOR DE DISPARO POR GRUPO **** G0T: HEH TfiANSH!TE EL HE!ISAJE :;MUP EHABLE TfilGGEF A TIJDOS L•JS DI2.Pi:.r1CA EN EL BUS EL H~HSA,TE . ATtJ=! HEH ********** SllBHOTIHA DE HO HECKPTOR ********** NUt1ECEPTOR: aEM MAlit•A EL ME!ISA,lE COMAllD(>";:&H3F GOSUB ~Ei13AJE 0UT PTi'i! 9.;.. &HAO RETOR!; UNIVEfSlT!VOS '!INLJSTEN 'COLOCA Et1 'COLOCA EN 'ATll=l PARA OPERAR BAJO EN BUS EL BUS EL MENSAJE EL BU;. DIRECCS. DE RECEPTOR REH ********** SUBRUTINA DE PR01'. EHISOR ********** PROT. E!1ISOR • REM !~ANEJA LAS SEllALES DE PROTOCOLO DEL BUS EN LA . TRAtlSMl SIOll DE DATOS ESTAD01%=INPC PT02% l . LEE UFFD WHILE !ESTAé>(1p; AND &B00!000!0l = ~2 'MIENTRAS llRFD=l ESTADO!'•= l NP! l'Tü2% l WEND r;· FIN%=0 THEll • 1t1T pr111 \..&H.::; l r:LSE uUT ~TO!% .&H31 Elll• IF 'HAY HAS CARACTERES POR TRANSMITIR 'DAV:l . ULT JHO CARACTER 'DAV=l .Eül=l ESTADü%=1llP!PT02%l 'LEE NPAC 1;HILE ! ESTADO% AND &BOl>Z0ü0fül 1 = 64 'MIENTRAS llDAC:l ESTAD0%=!NP!l'T02~. l oEND •>llT PT01%.&HA2 RETIJRN • ATN=l, REN:!. DAV=0 REM ********** SUBRUTINA ESCRIBE CARACTERES ********** ESCCAf<: . REM COL•.1CA EN EL BllS UNA CADENA DE CARACTERES CONTENIDA EN . LA VAfüABLE IiATO! CONTRi.>!.A[Jllfi'.·= J G03UB L,.·í'IJTUf·. GU':. ·. &113F cw~;tJB MENSA~lE G0;;',UB C1 iNTHnL RECiiPTUR OUT PT01*,lE P[ 128 ESTADO%= INPC PT02%) WH!LE 1 ESTADO% ANO &800010000! ESTADO,.=INPC PT02%) WEtlD 16 . LEE EOI ºMIENTRAS E0!=0 . LEE DAV ºMIENTRAS DAV=0 \1LT!M0%=1HPIPT02%l 'LEE EOI IF ARCHIV0%=0 THEN . ESCRIBE EN LA VARIABLE DATO. STR!NG$=DATO .STR!NG$+CHR$C !NPCPT00%1 \ ELSE PRINT n l .CHR$1 lllPI PT00%1 l: END IF C1UT PTOl%.&ll26 OUT PTOl%,&H22 ESTADO%: ItlP< PT02% l WHILE !ESTADO% AND &B00010000) ESTAll0%=1UPí P1'(1:'.!~ l 16 .ESCRIBE EN ARCHIVO ºNRFD'! . NDAC=0 t LOG! ca) 'LEE DAV ºMIENTMS DAV=l WE!ID 'JtlT PTOI% .&H24 WEND OUT PT03%, &HBB OUT PT02%. &H02 UUT F'T01%,&HA0 RE'I'l;F:N 'NDAC=l 'CONDICIONES INICIALES RKM ********** POLKO .EH SERIE ********** POLEO.S!CRIE: RE11 Cü!IDUCE l'tlA E!ICUESTA EN ~ERIE A EL DISPOSITIVO INDICADO COHAND1)\::&H'.":F i:;1·¡~~0P :-!ENSAJE COHAN:u1<,,;=&Hl 9 GOSIJB ~EllSAJE CONTROLADOR%=0 GOSUB LOCUTOR GOS!IB !IORECEPTOó . UNL13TE!i . C(JLQCA ME!4SA,1E E!l EL BUS . SERIAL POLL ENABLE . <~OLOCA l1EllSAJE EN EL BUS . HABILITA DISFOSITIVO PARA E!lVIAR ESTADO UUT no:;~. &H98 . ?TO A ENTRADA: B SALIDA: CA ENTRADA; CB SALIDA OUT PT02,.&H01 'DAV/DATOS ENTRADA: NRFD/llDAC SALIDA OUT PTOJ%,&H21 'AT!l=0:REN=l:NDAC=l:NRFD=0 ESTAD0%=INPI PT02\ l 'LEE DAV WHILE 16 'MIENTRAS DAV=0 ESTADO%=INPI PT02~ l WEllD üilT i'TO!%.&H:6 'Nl11r..P'00•--'"'"1IDlllOIJllnDlll0toul1M11.lftlo000(1,I ... ~ - UC'IO"""ll.....,. .. _........,to_ll>l•Hollrlolllcwoul!MllOllN-.....•l"ftl..l••w""""" ...... •"•"<>;"l"'•""9ICC1nl,...11g"e11 Tl'lf!Nf'll_ol_.1~1lilOOl11111111101,1.:1IOIWDu1--uM•l ""'''°''~"""'~bu .. -·-··--"'º __ , ... 111,,.,~· ... ~ ... .,_ .,_ lntel 1255AIUllA·I 125SA FUNCTIONAL DESCAIPTION ii01 a-ra• n..~u.111""'1;•1'1111'1etll9Pl'"P'le•l1ltlt ..... ~.11'1111 .. ,C41dH•O-IDl .... lnltll•'" ""t'lllOl\101 ... (i'""1q 11\!CrDC_I .. •rti.n ..... TM ly ... 1o(olttOl......:11fW:11llt"1W0t .... ,_.,.llltoltlf\11"1tn1'>al>lnl111_... _,.,..i.t-""~'""'"-CPIJ 'Pottl>dA1l Per1hlffl01ftlllPortkllctl,T"-lll"pOl11l~f\ll1.,11'1 """".,.1'...,•ll~li>eA01"0-iftP>lll.CO•lttoltl'll -·-o•-011"'1"'"pOt110011>eC"OftU1111•C.Cl1•11111ot"•'"º"'"""'" QroupA11111Q1• .. ••Co11l••l1 ~.\§~i.~~!jf:E:r~~f ~~~~ .,µ l•"•lt,,.tl<><"!G•""o".,.G•,..oll-" ___ ,. ....... 1 ... º'""""'·'• c .. 1••' ~°""· .• _. ,,...,,.,,..,,,.- .. _, ... ,., ............ ,_..0_1M ........ _... ... ,,,,,,_,,,, ...... _. Cruo1G•o.1• - '"''A _,...,c~.,_ 1CfC<1 e.,. .. o1c;.,..,,_,.,,,_ ... ,ci.. .. 1oco, !':..e::~;."';, :-:~~= ~ ~.;:::"":. ·:.:.: P11u1A,ll,.-.:IC ,,..,ttUc...ll••IT••n•oo•.,.,r.1tA.ll •·~Cl ... !E!n.~.==.~~!::.:!:.~~:~.:E:::::::~ .. .,,-ci1,.,t-11t1c11111tU!Ji ,., .... o ..... ~.11111""'11"''''''""wn••~-•oo• ........... ic.. • -··º"'"~''º''"'"""l/Out ... 1111(.'"""'"'!'~­ tt••lllllll"OW!Dwtllf 1'.nC.Cl ..... OJll ..... 1 .... 1111"'-•• .... ;H o- .... ll'p.~O..i;..1 lolootl-S•-•-1,tl..10-1 ModtJ-lo-OWIC<'O"•lwt ..,...."1111,.Htl"C~t;oH-"'ll"-111por1••'""-•llc , ... ,_,_ll•t.allJ1!1 .... M1~l•lllll'll;~ ..... :'!":~':~~;.:;:,:::,~!!:~'::.~=I~ '"u•rodOun•o1,..Htcuuorio11111.,11...,_....., flOyOlt"9ol--1 .... 1~1111<.1*'U""Oll"'I .. ovtDoullftl!..,mon.n..11t-11f!""Q11~''º""""' ~~..:.:.,:aio .. w:u•''"'''"'D'ttcl'-' n.o_ .... ,..., • ...., .......... ""_"'•""'-· ..... ,..,c111"-"'""""-'-•'""'1'"'""'" ,.,. .. ..,.,..,l~donLM•tuwe••••qn ir. ...... ., •• F:"a..&~ ~ .. """"""'"""-·--~~ionf .. bl"Ul ..... .._..,,ICI ....... ,. w.wa. e;,,.., ................. .. ..... 11 .......... ,,. ........... túl.-. •• 1...,_ i._ .-u, Gt- A-·· • ............ lil ..... 1 ::.-"'°''~ .. --................. """' -· .... s-1111'11!1 S! ...... ":':"" ":'.::" ...... -'í3-1111'1111 {.jJ ........ ~ ...... ,...l.llll•llMeDellftltlont Wlu1lldlft .. • TN-llllftlll~ll'd~1rnodeO!lfl'lilftlt­ ""'-~11nr.1-.i .. 11•1N'10"Y_ .. .,..~.----~- ...... , ... IOflCllllO• ,._11 .. 11•Uff-n. ... ol1"' tmt. .......... !"ta_.,¡ IN"OI-"' • lflklltll l'C _,, '°'°""" -1.Nlll; .... dt'IWllOl'l .. l'C"""'lll'd-- turw:I ....... ll11lbl~rr 10 ..,"'°"' .. ,,..., ....., ..,,..,.,. -~_,tnnahl ...... logla.ll/Cll.,.....N0'1U"lt ll"~il!>ulllUNol_ ....... ~ftl. 11 .... 111 .. 11"-1'11"" ""ol .. llW'1111111l,_,C_llflll•ll- ...... 1 ... OIJT_.I ""'""" .... 'M IM111N-·- ,....._llliltooinl .......... ...... 12554/82554.-5 Miel B2S5A/82554-5 et ros rd bc Paura Wéh Part E dy Esq rta qa ergo corras dos Part de pr Dd, is lidad ARA pt o he over det Gl PE imemael Control Funciona Mehen tha Ezidh 19 progerermed la 00srale Ln maca 10€ raLiO by HTA DE PERA tin Ia ars ocióted INTE Ip hop, ug Ine pal sevesel ynciion cl port E. This heetion eliges 106 Progr arrimar 16 gua gu 64 llar 8 sei 1/0 ge lo ip 14 CPU metro aci aer eres ger in the LAYETUPI MUELA. IMTE Map-fioo osfinurion: AGITEET) — TE 11 567 — Intermart anabdr IBIMAESETI — INTE la R SET - Intarrupt dote Mota: A Meuk fp oca art atometicay rusri dusind fusccda sefuctio and erica Mame Oporaling incas LA wusidas Sifepis Inparl pea ayi! Operation tor ACA Cd Ud Are DOLL O oli” La 5400 de MDI] ver than 10 De ta DIGA ds SAC POL. tods O Lave Funcional Definione: Treo Eb pora and tera $ bil porta. Berg port car do heal e rar. cti . Y Mr In O pl cam figuriticrá ar fecemd ha ela hecha. : HARÁ AR R A SOS A tes MORE O [Boske las na Ata MODE U Monie Quluayd MODE 9 Port Defisátion Pd ]01 69 | manta MODE O Canrigura era o mi ra ahR sn LS (+ -1-1:2TT-] ¡~--------'-"-'-"'-"-"-"'-'--------- º--•oot• .... ..,.._,..""",..~..,.,. -~ ....... Pil'l ... ~--1-1 ... eMll .... .._Pl'\&.NO~lhlll!>t•ll,...._ IJ&ll•fMICll'i"~t•toi:w,...._._._,,...,_ ......... °""""' ......,,_1c11...,....-.,i.iw ........ ""''"',_,,.,,,., _ .. __ .,._.,._....,~ .... ,,.. ... s.i.111...i.,.. •Ol-,....11 __ ..,,.,.,_,_ wi.n ... ~ .. ...........,.0_111tln-1f 1 ,,_z.c.....VU11•c,.. ..... P'_,,..,c.,,t11~...s .. 11'11.,nip1~11._11tolMCPUf"9ln!1111'11PI•• .. .,.,l~tl,119N'1lodl"""PO<'C.c.,,MIMlbll1<1"' -l>fHtnn;oo-n¡ng1P1eN-.oc111..i1NU111p flocl,llton;l"'bl\HVl-1111~1-olpor!C. "TMl'-1 ....... -.N"-vt<-1:. ,..i.,,.,,,_, =:--...::.::.:: ::. :i"..!! ...ir-1 •"oct ... lll UTl-INTl••Sll-ln-..- lllf..-UFl"l-IHUlolll!fl-1.......,p d- No11· NI 111• llop-- •• .. _...,., ..... -w.e -~-.....a-11.-t. lil a oO&.ll:F.....,.,...Dtfl l_: • t-•""""""""-~ ...... . ,,,,.,,...,_ ... ~-- .. •o. ...... -. .,..,,. .. ___ ' ·11--•..... l/Dloi;p. _...,_ .. ,..... ... _ OEO Dtt elllllll ft --· '•" . . . " . " .. 17¡7 ¡~¡~ /~!: ¡: t' l2 SMl 5A·5 OUT>VT I OUl0\11 11\m'uT "Ol<10\lf t IWftVl 1"""1T ,,.. ....... •11 ........ °"'""'" ::.:r ~ ,, º"""'''"""" .. ,....,, °"'"" 1"""1" 11 IYV\" IWVf" 1211AlllllA-1 --.. ,. 1~1•-ú§1•1•1•1•1~1~1 -{5§. .. ,_,.,_..,.., . :: __ -- ·.. . -.{ : :: .... ..~ ..... , ...... °""' ......... 1255All2HA-5 MOdoll•lr,,.,.,..,,..,~, • t-a-10.....t.-a-.11 • ,.,,,,_ .......... t><,...,,_, __ '-ti.o lbildoto-. COlftbl,..iio"l!OINOOl1 ........... ,...,..t .................... 111•-·""'' .. .... ,.., ... -.1to ... _,.- ... -.111n!Mdl/O -·- 1'1Y','1f .. '® ' ::::::.. o..-.••· llQOll ..................... '°""*~'--.......... ~·--•or~ ...... l~~fJltlNCl.,,.Ol"lllllt>O'llMiilbullOI' l:IOlft 1<_.i!Or>Q lf'd rec1"'"11 dliU 1b'l- "~1"11" llQ .... ,l .,l~toqnl90'! prOl*tiul~dlKlpll ... ~t\'""111-IOllOOI ~:':=""''''IOO>trd~l..c.itl..ncl_ .. lllOO(JB.aic:FutCtloNIC.llnll..._,L tUlllll!nO.-A~. tO..~lli91",..lll!tft ~- ..... ...;~:.:;::~.":::..".:::.:.:::.::= ll,IOIMll'•Sll ................... ,.,_,bf.,.., ....... ..,...i~110¡,.p,,i. IN111\lfllemlplll~IQ .,..,,_,. • ..,_""""''".,"'"'""'-"'111-CN _ _.,_llM>'"'"'_"'t_'"' IN111"11'1111' IN nJ io • ·-·. 11, •I f ·-· ..... INT( 111 ,._., HIO'-lll'f'INhl .... °"'ttlf .n.,. .. -,,1111 .. .,..,...., ... ,_,.,,.. .. _ .... aou..., • .._., -D .. h1dlrll11ot11N_.. -·-- ~-·-:.:,;e t.~.~.~.~:.~::;) :3~J. ... "'· ¡-.. l.-1 ..... . -;:~ e¿_, .. -. ~-· .... 1 .. ······~-~~~-~ ~~'-' ~ ~ ~ """LMOOlll .... ~=51_! ·--~ - . . !~~,~'. ~-'--- L .. ~----' :::::.:::----{~~~~~~¡~~'-"}---------------------­ ...__ --..... ·--i ,...1.lfOOl1C....-~I USINUllA·I óff1Dio-..1"'""' .. 'IPJ.T11t011ou1p1¡1 .. woo .....-io1ne1ic.1etn.lffti1CN"91wnt11r111111DV110 '"°-11-flO'! ™º"'l'•illMMlllY"'9fltJ ... ~lllllMWll'"'°"'l- .. 11lll'flClll-ID1Mflglow ea..._...,.'-Q.lil.._"OlllNtlllpulifll- ....a!IM.ll'ltl ..... dllllnMl.-tlOl"""IN.1-., ... , .. ,,._ ..... .....: ..... _ .. '""" 1111 pen~ .....iftoll«U .... t"*lll""'--ll>9dlllOll1PllllP!' ~- .,.,......,.,.._Q..~~-°"'- ... 1 ... tc...tit -........ ""'.,,.~- ...... ,"",_,.._ ........ .._.....11Mlly\J19C~.IN111•'91•­ AC'll•r-",Orlf1t1--·-1NT(lel"-".llll _..,.,..ta111 oo..io-"'"°"' cwolf'Oll.illl'llll.V-all'C1 llf'lll M!fwllwllt'llllt""-otl'C,. -·-· t1~t1~1t~:tl :: .. _ -. . .............. ~ ... ... ..... .• intef •. ... l~l~f~l~l~l;,;,~J "' .. ir1tef llSSAll25$A·!I 1'1149o.lnll$Qflh,,._,- ... ... : . ., .,, .. , .,, ... .,, ... "" ... ... ... . .,, •. .,, : ... . ... . .,, . ... . "" ... .,, ... .,, .., .. ... ... . ... .,, ... .,. .. . :: . .......... ~e_,.._-. n..._. ....... ot_~-•otdot """"",.,..c".,..""_.....,-.n.....,... .,_ .............. ",.,.__._..._ :._.,._._..,.,._.-i~a_.....~c lf.......,_.., • .,..,,..... ,,. .. c,....lf'Cr.flet.1_,.,.ffldloldoltll1-...0 ........ _._,..,._,. 1111i .. ci..1.c,~-·_,...,.-..tloll -v-~·-··----~ ..... < ..... °""""C.....,MhftllM~C ""'"'"'tl!lJ-1~---,.........,,_ ,...••c--1-•u,,. .. n.11.....,. .._...,AM•~ .... t>~hlfll....., IJlll .......... ~ ... _..-.,id>_IUI ___ ,....PtwtCStn.t 111 ..... Q.~Ci.-fft"-••"-""~" ........... 111111,...,........~i... .... 1•2,,_.C ..... -•--~llot"__. ---.....,....-.._....,.""' ... .,,.,e - :::: :::: . .. ...... ...,,._ ......... .._.. .... ~--...,-...-~8-__...,.,, n....1r .. ~~ ..... · .. -~ ... t.- """C.A_...._._..... .. hrtClri _.. . .,_ ........... .. '., ........ ~ 1-.1--t! .. 1-1-.:? lnlel 1211AllHIM APPLICATIQNS OF THE !255A , ... l.~!4 11 1 ....., _.,¡.,i IOOI 1111' lftltrlK"'G ~pl't(llllle•• ·~·•·-•~'º"'''".e• •-1 •"J llO o .. 1u •lll-• .... -, .. -!IOl'llll•l ..... ~IC. [Kfl """'...-ai d••kl 111 I -llf 1n1- M .... ltpl'IMl"_l __ .U_!al9d•ltftlll1'19 _,, ... ~ ...... 1011 .... lftlll'I- "-~ .... -· - ""(:PU f ... IMflCI- dlllftll- d - 111~ 11"""-"'1111 ~o--""' - r.oc ...... ••••""'""'º'' ... ''''-""'•"''·ª'''. •""Nl'IO t,.. W o..,,~ .. lfttll!tc• c111r1C1.,,t1ie1 tllt llo0tn&1•-·•1 .. -""""O·---"Qlfttt - 1n1noro101P11 11..,,o-l1'Cl•a.oinW>t,..,.1.,...,o,.r. U.....iOllCl'IOl1Q.l'l.IC""l..,¡~uri_.tfyO.­ OPllllO-tt~1'2UAlll11Klfy"1"1"--• __ ,......J111\tfHog~:ISpnoMftlt ....... """"º' l'fll'C.lll•plat'O'l•olt ... l.l:>M.. , .... ".ll'nlltrlllWfM:• ............. 12SIAll255A·5 ABSOLUTE MAXIMUM RATINGS" ,..._1t_,.,,,.,~1;n, .o'CtoJo'C: S19'•'-'""' .. .u·e11•1!id'e VDl~:==l~~Go-,_,_, .... ºHDT!C(·S1,.1P11~1110u~Jtld""'-'"Al>IOIW'W ..,.,..,.,..,,11,111191·..,.,c..,11~.,.1_.,.111.,,. -•Tll<•,.•ll,..11•tlW1~0ft"""'""""llOfttilo~ llollofl~tf-•111"-•0l•~ro....,c __ .,.. lf'OM-•lt<'l"'•l&lltCl-1 ••"•°""" o.e. CHA!ll&CTERISTICS "'. Cl'CICl1V<:."cc• •IV~ s .... BIE - M ·- V IQ.,•·~ V IQ,.•-JCD¡A 1255All255.f..5 A.C. CHAPIACTERISTICS (Conllnuld} ""' - """''ºº_.,, ,_.,..,10.1111P1•llO ACKl\.W- ..... ....Do11lrl .... T.L..iSt1 ~~~-,-+"'"'~~~·""'==~'--~~-1--...¡...::;.i-~~,_,_:2:~~-~~~:~:7~,.....~~--1 ¡--;;;;-ir~~,~~':"~"2:~;;:;::···~:P'~~·~~-1-2!!-1-:=-J-!!~1-c--1_:_,__J ""'' 1 • ..-. ... -•..,._,...,_c ~C.CHARACTERISTICS rr,•lr'CllW'e.~· •IV1...,0llD•M ............. .... - -_. .......... 1111.-0 -· "'°' Wll•l100al•al'I llC1t•01aOIF•ll'I l'tl•0 .. 111•1•'1 llD•01C1UfJll•Cll'I lfl•l1ot"ITlll•ll1I ACl(•11•01Tlll•ll'I 1 '-C- ...... c_ .. 11qf,-.tC,.•I_, ~ :;;;-:.,-=..-.:.~-"'-,.,...., ___ .._....._,.._,.,,tioa .. - lfltel 1255All255A·5 WAVEFORMS WAYEFORMS (Conllnu.d} MOOr;Q{IA!llCINPU1) M00!1{1Tl'09!01Nl'llll ··--------_l~-- ~. ::::..-::----r==.====1>---------------------- MOOI O la.\llC CUfPVl) _ __.__ff--::-=1: _· -1 ,... -~·-----' '' LJc: ~~ .... :::x t=== _,J\_ ·-----'---ti---.-~ .. 'i== National Semiconductor Corporation DM54LS95/DM74L5885 4-Bit Magnitude Comparators General Description These 4-4 mignitudo comparators perlorm comparison ol siralght binary or BCD codes. Three fulty-decoded decisions about two, 4-bii words (A, B) aro mada and are extefnally avállabie al ihree puipula These dovices ate tuliy expand- able lo any number ol bits withoul external gates. Words ol greater length may be compared by tonmeciióg COMPAA- tors in cascade. TH A > 8,A < B, andá = B outputs ola siaga handling teas-sigoificant bis are conmectod lo th cor- responding inputs ol ihe next stage handiing more-signit- icant bits. The stage handiing tre tloest-significant bits must have a highJevel voltage appiled 10 the A — B inpul. The cascáding path ls Implemoanted with onty a heo-gale-level delay to reduce overall comparison times for fong words. Features m Typical power dissipation 52 mv MB Typical delay [4-bíl words) 24 ns Connection Diagram Duai-in-Line Pacisge DáTA UTE *eoc ad ur Al At s A0 Do wo fi fi fi fa 10 1. Order Number DIBALEMES, OMNTALOOGA or DAI7ALODEN Des NS Package Number JidA, IAA or 16 PT 3 a s s 7 no ACB AB A>D A>U Aanb ácf OM o e PUT CABCADING IPUTS OUTPUTS TUFICTH Function Table Compering CG inputs inputs AS,B5 A,B2 A41,B3 A0, 80 A>8 A - A3> pa Xx Xx Xx Xx x Xx -H E A3B2 Xx Xx Xx *x Xx H LL - A3=B3*] A2B1 Xx Xx Xx X - H. A, A3= 83 Al = 82 Aj Bo xXx XK Xx -H: Lo. E] Al B2 At = B1 AD < BO Xx xx. o AL L A = 83 A" a2 At» B1 AD = BO H L L- 0H Men Ad" BJ AZ = 82 At Bi AD = pO Li ,H Lo. 0 U AL. A» pa A2 =B2 At = Bt AD = BO L t Hno - Ho A = B3 A = 82 Ay» 91 AD = BO Xx x A o H: A=B3 | A2=B2 | A1=81 | A0=BO0 H H A L A = 83 A2 == 82 Al - Bt AD = B0 L L 4 5 L Ho He Level, Lo Low Level, X = Dont Cara 2-61 S O S T L M O / G E S T P S M O ~~~~~~~~~~~~~~~~~~~~~~~~~~~~---,., all nal e iconductor ol orat1on O 54LS85/DM7 4LS85 · it agnitude omparators eneral escrlptlon ese "·bit ágnrtude parators r1 r e parison l tr l ht l ary Of D cocWs. tv e lu!ty-dee d &eisi ns lbOUt t o, •- it ords ( . 8) re ade a d r• tt rnally avtllable at three outpu!L These davlces are h.Jlly expand· l to arry rnber t itl ithout irtomal g.1tes. ords ! rater leingth rnay be co c>ared y eonn.cting compara· ton In encade. M > , A 8, A • 8 outputsol a 119g1 handting ktu-ligotficant bi1s are conntelad to~ cor· r~ i uta t l e oext t e ndling or•lignll· o nectlon l r QuoMooüw ....... .... ...,.. .. ce •1 l •1 •1 11 ,. 11 "' ... • • >I ... , . ..uT AICM*O...,,.. aut TI unctlon able "-""' ...... :!l,831 .2,12 ,81 D, 0 "3> 93 A3 < 83 3 • B3 A2. > 82 A3 .. 83. 2. < 82 3 - B3 A2 - 2 > 01 A3 • 3 2. - 2 1 81 X A3 • 93 2 .. 82 1 - 81 O 90 A3 ... 83 A2 - 82 1 - 8 O 80 3• 83 2. .. 82 1 - 8 AD• BO A3• 83 2 - 92 1 .. 81 AD• BO l - 93 A2 - 82 1 - 81 O • 80 l - 93 2 - 2 1 .. 8 o- 00 l - 83 - 82 - 81 o- 0 l - 3 A2 ... 82 1 ~ 81 AD• BO -tt,l\L..W,L• Larrl...,¡,}I:. • Qon.1C.. >B X - 1 l nt its. e t e ndli g Uv.• loa t0 i nibunt it u1t V9 i -level lt e pll d to l e - I ut. he t eding ath 11 l l ented With nly ~t..w.-el l y t ce C"J-.11 partson tim s fOI' k> g WOfd-. aturee • pi 91 tir lü l n 2 W • ypical l y ( -blt ordl) 4 s l.Jl'IQ7t...I e-. ..... B AB 0.1 mA 01han 0.3 ''" Highlevellnput Vcc •Mu: AB 20 ,.,. Qthe" 60 '" lowl.evellnpu1 Vcc .. Max AB -0.4 mA O!hOfS -1.2 los ShortC;cuit Vcc - Max OM54 -20 -100 OutpulCutrcnl (Noto2) mA OM74 -20 -100 "'' Supptv Curren! Vcc - Miu(Note3) 10 20 mA "°'11:A111Ytlo:all.,.11Vcc•5V,f11 00 25'C lla'-2:Nolll"Q'llhan-o..l&Mthcluldt>91.l'IOef """"'al. 5V. ;' o 1 Swltchlng Characterlstlcs atvcc • svandTA .. 2S'C(See5ection 11orTes1wavetormsandOutputLoadJ ¡: .. .. ,,.., To Nurnber of AL• 2k0 E I srm•ol Paramet•r Input '""""' Qatet.ev• CL • 15pf Cl • SOpF Untta ~ llln llu llln .... o 1 11: 1 PropagaliOn Dela)' runa AnyAorB A< B. .... ""-" 36 <2 .. Low·lo-High leve! Ovtput Dala Input A>B ~ A•B 'º 'º ""' Ptopagation Oelay Tune AnyAorB A< B, 30 'º High·to-Low l.....i 0vtput Data Input A>B '""' A•B 30 .. Propagation o.iay rime AB 22 26 low·to-H'Qh~Qo.rtpu\ OIA • 8 ..... Ptope.gabon Oel.ly Time AB 17· 26 High·to-low Level Output orA •e ""' Propagation~Time A•B A•B "' 25 ............. .._Out¡M ..... -tionllolllyllme ·A· B .,.. : .. :a· - -··2·· 11. .i1. --··· '"' .............. .._ Out¡M ···- ""' Propagltion Delly TUM A> B' AUt CEA• B ..... -Oollyllme A>B A_$·a- 17 '"' .............. .._ Out¡M OfA • B D M 5 4 L 5 1 2 5 4 / D M 7 4 1 5 1 2 5 7 r National Corporation DM54LS125A/DM74L3125A Quad TRI-STATE? Buffers General Description This deyice contains tout indopandan! gates esch ol which prms a non-inverting butler function. The outpuis hava tha TAI-STATE featura. When enabled, the outputs exhibil the low impedánce characteristics ol a standard LS output with additional driva capabslity to parmit tha driving of bus output trsnsistors ara turned of! presenting a high-imped- ance stato to the bus ne. Thus tha outpul will act neither añ a significant toad nor As a driver. To minimiza tha posmbility that wo outputs will attempt to tako a common bus 10 0ppo- site logic lava!s, the disable lime is shorter than, lhe enable fines without external rosistors. When disabled, boíh ihe time ot the outputa. Connection Diagram Duar-/n-Line Package A Je lis fra fer fro Ja Ja O E « [s Je fr A TUE: Order Number DMSSLS 12544, DM74L8125AM or DINTALS128AN Dos NS Paciage Number 3144, 10144 or N14A Function Table Y=A A c Y L 1 L H L H Xx H Hiz H = High Log Level L = Low Logic Level X = Exts Low or High Loge Level +6 = TRESTATE (Outpute are deabled) 2-92 e ~~~ i ColporaHon ~ 54LS125A/ M74LS125A uad l·S ® u fers ~ eneral escrlptlon m his ovice tasns r n tl endenl l s ach t l'\ich ! f:'~:i.~~ ... ~·~:=w~::.=.·:ou:~: tput transist~ re ad ll t entl g i .j ped· ee t la t t e s line. u!I t e tput ill 1cl eit ef u 1lign1fl n1l ad ta 11 rr er. o 1ni 1ze e Sllbihty lt two t uts 'Nlll n pt e on us to o po- sit l ic le els, t e ís ble li e Is s orter thlt\ lhe abla b o t t o tputs. l l pedance aractensllC9 t t ard tput ith d1ti0nal rt e pabillty l er it l e ri i g l s ll n itn ut ir:temal ra i tors. hen lb& led, th t o nectlon l r uaH ·U e ackage Vcc C. C3 Al 1 .. C1 l1 ca Al YI Qlll) I.nlD1·• .. °".dM' ud.llr ll14LS12W, O 1&. 125All CM' 117a.l 1 H ... lf'e U N nlberJ14A., 11 AotM1U nctlon able ..... ~ 1 e 1 L •>tfll.OQll:w..i • l.osl glci....1 X•E-.LoworHl;hll9=~ K-Z-TRl-ITATE(Ov1;Ml-clllbl91) · 2 y ... , bsolute Maxlmum Ratlngs 1No101 speclllc•tlons tor Mllltuy/Aeroapace producta are not conlalned In thl1 datHhHl, Refer to the aHoclatad rellablllt)' electrlcal U!1t 1peclflc1t1on1 document. Suppl'(VOltage 7V ll'IPU!Voltaga 71/ Qperat1ng Froe A1r Temperatura Range OM54LS -SS'Cto +125'C C'-'74LS O"C lo+ 70"C Storage T empe11ture Ranga -65'Cto +1SO'C Recommended Operatlng Condltlons Nota: The ''Absoluto Ma.nmum Ratings" are those vahJos bB'yO(l(J which the ssfoty of /he dovice CAnnot b6 gUJJrlln· lood.. ThB de vice should not b6 0~1ed at thase lir111ts. Th6 parsmetnc vnluos defined in tf"l6 "Electnc.al Charactoristics" 1sblo Br8 not gU4ranteed at th8 ab5oflfft1 maximum ratmgs. T116 "RBcommonded Operatmg Condllions" tab/6 wilf d6fina th6 cond1tions fot actual dB'llCB opersbon. symbol Parameter DMSCL9125A Dll74Llt25A Unlte Mln Nom .... Mln Nom .... Ve<; Supp1)"VO!taga •.s s.s 4.75 S.25 V'" HIQh lava! Input Vofttge V" LowLeve1\npt.rtVottage 0.7 0.8 '°" High Level Outpu1 CUtrant -1 -2.8 mA lot. Low LOYel Outout CUnent 12 .. mA TA Free Alr Operating Temperatura -SS 125 70 "C Electrlcal Charactertstlcs """ •ecommended DP'"""" ''" ""1.m.,.an.o , .... (Wlkm • .....,.,. nofad) Symbol Paramel91' Condltlona lilfrl ~ t) llu """' v, Input Clamp Voila ge Vcc, • Mln.11 .. -18mA -1.5 V VOH Highlevel()u1put Vcc,•Min.!ott•Mu ... V"14ge V1L • Max. Y1H • Mkl 3.4 V VO<. Low Level Output Ya;;•Min,lot.•Mu 1 OM5' 0.25 0.4 Voltage Y1L •Mu 1 OM74 0.35 o.s 1oL • 12 mA, Va;• M1n 1 OM74 0.25 0.4 Input Cunen\ a Max Va;• Max,V¡ • 7V lnpu1 Vol\age 0.1 mA .. High Level Input Curren\ Va;• Max.V1 • 2.7V 20 ,.,. '" Low Leve! Input Vcc, .. Max, V1 • 0.4V Curren! -0.4 mA 'ozH 011-State Outp\Jt Cunent Vcc - Max. Vo - 2.4V withHighleve10utp1.rt V1H • M1n, V1L • Max VoltageApplt0d 20 ,.,. "'" Otl·Slate Oulput Cunent Vcc .. Max, Vo .. O.~V Wllh Low Levol Output V1H • M1n, VtL • Mu: VollaQGAPP'•'ld -20 ,.,. "" ShOrtCircuit Yr;c • Max 1 OM5' -20 Output Cunen\ (Note2J 1 OM74 -20 -100 mA -100 lec SuPPl'!'Currlllll Ycc • Max (Note 31 11 20 mA IWte1:MlytlcM1f9 llVcc." ~V. Tot.,. 2S'C ...... l:Holll'O'ehl\oneOl$.ll~belflar1'd1l1 ..... 1ndlNCUlllCll~n:il~oi-...aond. .... l:la;•ll"IM..,.edwrtn .. dlll"°'*D!(C1~110Vll'dlNdllllOlll~ 2·"3 Swftchlng Characterfstlcs al Vcc .. sv 1nd T" .. 2s•c ¡seeSection 1 ror Test Wavoform9 and Ou1py1 LC>adJ R1.•M70 svmbor P1rameler CL • SOpF C1. • 150pF Un11a 11/n .... "'" Mrr IPLH Propag1110n De1ar Time low IS 21 "' lo High level Oulput ""'' Ptop1g11Jon Deray Time High " 22 "' to Low t.....el Ovtpul ~ZH Outpul Enablo Time to 25 ,. HighLeveJOulpul ~ZL Outpu1EnableTimelo 25 40 "' Low Lewl Output lpHZ Oulput Oisablo Tlme from "' "' H'IQh LtNelOulpr.:t fNoto 1) /pu Oulpul 01sable Time rrom "' Low Lev.IOul?t·l(Nole 1) Nai.l:C..'"~· 2·94 ;¿ m Natlonal ~ a Semiconductor -e~ DM5=~DM74LS245 : TRl·STATE® Octal Bus Transcelver- General Oescrlpllon Thtse octal bus !rlnaeeNera are deslgned lor asynchro- nous two-way comrnunlca.tlon botween data buses. The control lunction lmplomenlalion mlnim11es oxtornal timlng requirements. Tho d8Yica a1low1 data transmission lrom tl'M1 A bus to lile 9 bus or lrom the B bus 10 tho A bus depending upon the logic level at the direction control (01R) Input. Tho onable input (0:1 can be usecl lo disable U>9 davlce llO that !he buses are etfllciivelylsolated. Features • Bi·Oirectlonal bus transceivor In a higfl..denalty 20-pin p1cQge • TRl·STATE outputa drive bus Une1 dlractly Connectlon Dlagram • PNP lnputs roduce 00 IDading on bus Unes • Hvsterosis at bus lnputs lmprow noiM mar;irls • Typlcal propagalion dolay times, port·lo-port 8 ns • Typlcal onable/disabla times 17 ns • IOL (slnk cunont) 54LS 12 mi\ 74LS 24 mA • lett (source cunen!) 5"LS -12mA 7.41.S -15mA °" A2 AJ M Al Al AJ Al C1C! Ordf't...,.,,,.., DM14W45J, Dll74LS245Wll or Dll74Ll245N ..... PaeDft Nurnbtt J20A. llZ081)1' HIOA Functlon Table En- ......... Opentlon a Control DIR L L 9 data to A bus L H Adatat0Bbu1 H X laolation H .... l.IM/,L•U.~X•kr~ ,., .. ¡ ,, Absolute Maxlmum Rallngs 1No101 SJIK!flcatlons lor Mllltary/A1ro1P1CI producta 1r1 not cont•ln•d In thl• d1t11hHL R1l1r to lh• HIOCl1led ~ 1tectrlcal IHI epeclfle11lont1 docum1nt. Si4:1ply Vol ta ge 7V 1~1Voll1ge OIRorG 7V A0tB 5.SV ap.11ting Free AA Temperatura R1nge No1e: The "Abso/r.Jt11 Ms.~um R11tm¡¡s" are thOSB valuos bt!yond which thB ufety of ttw l'.#vlco c.tnnot be gU8ran· t-4 Th6 t#W:o lhould not""' C"Pt'rsted ar thoso limít~ Tho ,,.ramstric va/utJs dolined in t"- 'ºElectncal Chs,acteristics" t.ablo ,,,.,, not guars.nteed at the absolutB maximum ralings. T1J6 ''Rocommando Vcc- Min 0.2 0.4 J V°" High l.evlll 0utput Voltage Vcc • Min, V1H • Min OM74 2.7 V1L• Mait,IQH• -1mA Vcc • Min, Y1L • Mln OM54/DM7<4 2.4 3.4 V Y1L- Mu,loH - -3mA Ycc - Min, Y1H - Min DM54/DM74 V1L • O.SV, t°'"' • Max Vot. Low LavGI Oulput Yoltage Ycc - M1n IOL., 12mA DM74 0.4 Y1L• Mu loL • Max DMS< o.• Y1H • M1n DM74 o.s ~'" Off·Stata Outpul Curran!, Vcc'" Mu: Yo• 2.7V 20 "" H1gh Le~al Yottaga App~ed V1L • MB.l. "'" OU·Slata Oulput Curren!, Y1H • Mtn Yo• 0.4V low Level Yollago Apphod -200 "" Input Cunenl al Ma.r.imum Ycc •Mu AorB 1 Y1 • S.SY 0.1 mA lnput'lotia~ DIRorG l V1 .. 7V 0.1 ''" H1gh Le~al Input Curren! Vcc - Ma ... V1 .. 2.7V 20 "" 11,_ Low La~el tnpul Curren! Vcc - Max. v, - 0.4V -0.2 mA ~s Shon Cm:u1t Ovlpul Curronl Vcc • Mu: (Noto 2) -40 -225 mA Ice SupplyCurranl OutputsH1gh 1 Vcc .. Mu .. 70 Outpuls Low 1 52 90 mA Outputs al Hi-Z 1 .. ., .... 1:Alitypq.'llleltVcc• 5'/, T,. • 25'C. '"'- t:No111U1 Nn - OUtiiul •hOuldbe lha1ld •I • lllM. nol to"o:-1- MQWidO..ll>Ofl 2·189 Swltchlng Characlerlsllcs vo:; - 5V, r. - 25•c1SeeSection 1 '"'"~w""'"""'ª"""'-Loadl Dll5417' SymbOI p.,..m•l•t Cond- LS245 U ni ta llfn .... """ Ptopagation Do!ay Time, low·lo·High-Lavol Output 12 ns '""' Pre>pagabon Oelay Time, HIQh·to-lOW•LENel Output CL•45pF 12 ns lpZL Output Enable Time to Low Lovel AL• 6870 'º ns lpzH Output Enable Time to High Level 'º "' !pu Output Oiu.b1o Time lrom Low Level CL • SpF 25 "' ""' Outpul Oisable Time trom High Leve! AL• 6670 25 ns """ PropagatJOn Dela y Trme, Low-to-High·Laval Qutput 16 ns ""' Prop1;1tion Oe1ay Time, HigtHo-Low-Levol Outpul C,. • 1SOpF 17 ns tpn Output Enable TllTIG to Low l&Yel At. • 6670 45 ns lpZH Output Enable Tune lo H.gh l.ftel .. ns 1 f 1 1 1 f 1 1 ! l -- DM 54 04 /D «A . Semiconductor Corporation DM5404/DM7404 Hex Inverting Gates General Description This devica contains six independent gates each ol which pertorms the logic INVEAT function. Connection Diagram Dual-in-Line Package Mar a 2] dj rs ña “ ha la lo la loo l, la Por. pr por Pp al Y" Ai Y a Y] cub Order Number OM5404J, DM7404M or DM7404N Ses NS Pacioge Number J14A, 1144 or N14A Function Table Y-A inputa Output A Y L H H L H = High Logic Level L = Low Logic Level TLF MODA 422 1~~ctnr 1 a Cotporatton i'!!I 5404/ M7404 ex l rti g ates eneral escrlptl n his vice ntains ll: n ndent l s ctl l hich rl0t s e lc N AT tlOn. o nectlon l r " .. " rdw umber DlllMNJ, 7'° or llH 4N ... ,.....~.'14A.IU4AorN14A nctlon abla i Absolute Maxlmum Ratlngs 1No1•J sPfCUlc.tlon• for Ml/llary/A•rospace producta ar• nol ,onUIMd In thl• dat .. hffl. Reler to !he •Hoclal•d ,.11ablllty eleclrlc•l IHI 1peclflcallon1 documenL S;IP(>lyVOltage 7V Note: nie ':AbS(){uto Ma.wnnvm R111ings" IJfB ff!OSB values ;io beyond which /h8 UIBty O/ /he clevt:O CBfll'IOI be guaran- leed. Ths (J6vics shoukf no/ be operated at theso bmits. Tho parametric YtJ!uos dtlfinod in tho "Eloctrical Ctuvactenstics" inputVoltage 5.SV 0¡>erabng Free A.u Temperatura Range OM54 -ss•c10 +12s•c /11bJ9 are no/ guarantHut Vcc • Mln, loL .. Mu 0.2 o.• V Voltlge V1H • Mln Input Cutre ni • Max Vcc - Max. v, - 5.5V mA lnputVolta119 ''" High Level /npul Current Vcc • Max. V1 • 2.4V 40 "" '" law Leve! Input Curran! Vcc .. Max. v, .. 0.4V -1.6 mA los ShortCtrcu1t Ve.e• Max DM54 -20 -55 mA Output Curronl {Nota2) OM74 -te -55 '""' Supply Curront w11h Vc;c • Mllll 12 mA Outpu1sH1gh 'cct SupplyCurronlWllh Vcc - Max te 33 mA Outpuls Low Switching Characteristics al Vcc - sv andT,. .. 2s·c1SoeS&c:11on 1 lcxTest WavoformsandOutpul Load) s,-mbol Par1rnet•r Condll/ona llln .... Unlta IPLH Propagat1on Oelay Tuno CL • 15pF 22 ns Low to tl1gh Leval Oulput AL• 4000 lpHL Prop11ga11on Delay Tima t5 "' H.gh lo Low Leval OutpLII NoM 1: All lrPG&I& ••• •1 Va; ., ~V. T.., " tt"C lilcii.J:Nolmor•ll>Mon.(MU)..J\~b.tlhor19Cfllatim. 4·23 Nattonal Semiconductor Corporatton DM5438/DM7438 Quad 2-lnput NANO Buffers with Open-Conector Outputs General Descrlptlon Pull·Up Resistor Equatlons This device contalns lour lndependent ;ates each ol whlch pettorms lhe logic NANO lunctlon. The open-col!&elOI out· put1 requite extemal pull·up reli11ora lor proper loglcal op- er1tlon. R~ .. :,~=¡~ ~2~: RMIN • V~~3~l1~0l. Connectlon Dlagram Functlon Table Where: N1 (loH) - total rnarimum output high CUTIN'll for ali outputa tied to pull-up resistor N2 (l!H) .. total maxlroom ~ high an.11 fOt al q,utstiedto~tellslot N:J (111.J • tot.11 muimum Input low curent tor 1111 ~tiedlOpull-optllllistci- DuaMn-UM ........ " Order Numbet DM5431J, Dll74311it °' D117431H Sff NS P1cbge Number J1CA. M14A or Nt4A y - ill lnputa Dutput A e y L L H L H H H L H H H L 4.55- Absolute Maxlmum Ratlngs tt101o1 Speetflutlons lor 1111\lt.-y/Aeroap•c• product1 are not contalned In lhll dltmthHt. Ref1r to tf'l• H~lated r1llabUlty .. ectrlcal test 1p1clllc•t1on1 documenL SupPly Voltago 7V lnputVoltage Outpu!Voltago 5.SV 7V Note: 7116 "AbSólUtB Mannum Rallflgs" JJ!9 lho5" nlue.r beyond wflich t/18 safsty o/ thB dtlvo cannot b6 guafln. tBed. The dtmc6 shculd not b6 oporattKJ at t/>856 Nmtts. 11':9 ¡MramsfnC VJJM1$ deflned In tf!B "Eloctncal CIWaCIBnJflcs" taf)ls .us not guaranteed al 1/18 absoluts muimum tStmgs. Ttla "RIJCOITllrl6fJd< Operating CóndiOOM" tabla wdf d6tm. lh8 concJ¡tion!I for actusl dew:o oporatJOn. Operaling Freo Alr Tcmpo1ature Rango DM54 -ss·c10 +12SºC OM74 O"C to + 70'C Slorago Tomporaturo Ranga - 65'C to + 150"C Recommended Operatlng Condltlons Symbol Puam1ter DM5438 DM74311 Unlu llln Nom .... llln Nom .... Vcc SupplyVOltage 4.S s.s 4.75 5.25 V1H Hil;Jh l&Yel Input Volt&QU VIL Low Level Input Voltl;e o.e o.e V v.,.. High Leve! 0utput Voltag-a s.s s.s lot. loW Leve! Output Current .. .. mA r, Free Atr()perating Temperatura -SS 125 70 ·e Electrlcal Charactertstlcs CNrK recommended operatsng free alr temp«ature range (un1eu olhwwlle noted) .,,,_ hnlMllf COndlllona ... TYI' .... u.... (Nole 1) v, Input Oamp Voltage Vcc"" Mln,11 • -t2mA -t.5 lcex HlghLENelOu:tput Vcc - Mf'I, Vo - 5.SV 250 "" Corren! V1L""MM VOL LowLevelOutput ~ Vcc • Min, IQL .. Mp: Ó.4 v ..... V1H"" Mln lnp.rtCU!Tent •Max Vc;c "" Mb'., V¡ • 5.SV mA lnputVoltage '"' Hligh Ll'#el Input Curren\ Vc;c"" Mu. V1 • 2.4V 40 ,... '" Low Levet Input Curren\ Ycc "" Millll. V1 • 0.4V -1.6 mA iCCH Sopply Curtent wilh Vcc .. Max e.s mA ()utputsHlgh '= ~Currentwtth Vcc • Max 34 S< mA Oufputs Low Swltchlng Characterlstlcs 11 Vcc .. sv l.ndTA - 2s•c (Soo Sectlon 1 torTest wavetorms and OulP'lt Loadl ...... , Parameter Condltlone llln Ma1 Un1t1 IPLH Propagabon Oelay Tima Ct_ • 4SpF 22 Low to High Lavel Oulp¡.it RL • 1330 '""' Propagation Oelay Time " High to Low level Outpu1 N11t1 l:Altypota!1ar11tVc:c - Sl/,T,. - z5·c. DM 54 06 /D M7 40 6 DM5406/DM7406 Hex Invertin g Butters with High Voltage Open-Collector Outputs General Description This devica contains six independent bullars Bach ol which periorma tha logic INVEAT tunciión. The open-collector put- puls Tequire axternal pullyp resistors for proper logical 0p- eration. Connection Diagram Pull-Up Resistor Equations A Yo lMind — Yon MAX "Ni; dom) + Nz ll . Yo Mar) — YoL Pin lan — M3 fi) Where: N; (Io) = total maxamum output high current lor all Outputs tisd to pull-up resistor Na (lim) = total maximum input high current for all inputs bed la pull-up resistor A (lu) = lotal maximum input low current tor all inputs tied to pull-yp tegistor l ? p 4 p p y 2 ! A Y AJ 1 cho TL/F/4408 1 Order Number DM5406J, DM7406M or DM?408N Set NS Packege Number 3144, M14A or NI4A Functlon Table Y=A input Output A Y L H H L H = Hgn Loge Lera t = Low Loge Level -a~ fJ Natk>nal • semiconductor Cotporatlon 1 ! 5406/ M7406 ex l ertln uffers ith i h olt ge pen-Collector utputs eneral escrlptlon This device contains six ltldepandent buffers each ol wtuch perfOf s the loglc IN AT lunciion. he open-collector OtJI· puts require extemal pu!l·up re!ilstors lof propet log•Cal op· eta bon. o nectlon l r .. " " ull- p esistor quatlons A~AX .. N~~l:;n~ -N~~H) AMtN - V~M~·:,3-{l~L here: 1 (1o~1l • t t l ax1 um OtJtpul i c rr n! l r ali outputs llecl to pu1t.up resislor z (11.U .. t t l axi u i ut i rr&nt fer ll ln .Jtsbec:l lO ll· re11sl0t NJ (11L) • letal axi i ut l rr nt l r ali lnputs tied topuU-llptesi1tor " .. "' TLJFllOl•I rdlr umb«D 5408J, 740lll °' 740t!N M S K ag• u bet J A. 1'A ot 14A nctlon able • I ut utput H•Hql'l~l .. .. L • La-Loqcl .. .. Absoluta Maxlmum Ratlngs 1No1•> Speclflc•llona for Mllltary/Aerospace products 1r• not Note; The "Absolute Maxmium Ratmgs" are lhóse values contalned In thl• datasheet. Reler to lh• a11oc1.11ed beyond 1111lich lhe $df8ly Of th8 devicd UMOl be guann- rellablllty electrlc•l IHI 1peclflcat1on1 documenL 1e9d. The devic6 sflould not b6 oporat9d at thtlSfl limits. T1HI SuppltVoltago 7V paramelric vsf1J6Sd8finedin thtJ ''Eloctnca!Ch.aract~ticS" input Voltago s.sv tablo are nDI gvaranteed at tfHt ebsolute (Tl¿Q(T!llffl ratings. The "Rscomm6nded Oporatmg CondlOOns" tab/6 wr11 dehnll 0u1PUIV011a90 30V !he condttJCns for actual devicB optKStion. li! 1 Opofating F100 Air Temporature Rango OM54 -ss·cto +12s•c DP.474 crc10 -..1o·c Storage Tomporalure Ranga -6s•c to + 1scrc Recommended Operatlng Condltlona Symbol Paramel.r DMHOI DM740I u .... ' ! .... Nom .. .. llln Nom .... 1 Vcc SupptyYoltage •.5 5 5.5 4.75 • 5.25 V 1 V1H High Levtl 1nput Vo!tage 2 2 V 1 VIL Low LM Input Voltaga 0.8 0.8 V 1 Ve>< Hl;h Lev1I Output Volta;e 30 30 V 1 loL Low l.9'191 Output Cl.rrent 30 40 mA r. Ftff >Jt Opwat!ng Tempwature -55 125 o 70 •e Eltctrlcal Characterl1tlca """rocommended opeotVottag• 1 mA ''" H!gh Lsvel lnptJ1 Current Vcc .. Max. V1 .. 2.4V 40 ,.,.. '" Low Level Input Current Vcc • Max. V1 • 0.4V -1.6 mA ·= Suppty Current wilh Vcc •Mu OutplJ\sHtgh 30 ., mA ¡ lcCt. Suppt¡Curt9ntwllh Vcc • Max Outputs Low 27 38 mA i Swltchlng°Characterlstlcs 11\ Vcc .. 5V and TA .. 2s·c (See Section 1 for Test W1V1torm1 and OUtliut Load) Symbol P1r1m1t1r Condttlon1 llln .... Unlta i "''" Propag1110n Oelay Time CL"" 15pF 15 "' Low lo High Level Outpul AL• 1100 ' '""' PrOPIQlllOn Dela y rima Htgh to Low Level Output 23 ,,. 11oti111A1tf1X.811.,.•tVcc•5V,T.-":wc