escuela politÉcnica nacional - repositorio...
TRANSCRIPT
ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA ELÉCTRICA
TARJETA DE ADQUISICIÓN DE DATOS ANALÓGICOSUTILIZANDO UN INTERÍAZ PERIFÉRICO PROGRAMARLE (PPI)
CON PROGRAMA EN ENTORNO VISUAL
TESIS PREVIA A LA OBTENCIÓN DEL TITULO DE INGENIERO EN LAESPECIALIZACION DE ELECTRÓNICA Y CONTROL
CARLOS GERMÁN PILLAJO ANCOS
Quito, Noviembre de 1997
En este sueño hecho realidad, doy gracias a mi amigo incondicional, quien desdeel inicio de mí carrera me dio íuz en el camino, dándome aliento y fuerza creadora
a la vez. "Eres único gracias Padre Celestial"
A mis padres que hicieron de mi un luchador incansable, en especial q mi madrepor el amor que me ha brindado, por su fortaleza y por infundirme constancia enel trabajo.
Un agradecimiento sincero al Ing, Marco Barragan y, a todos los amigos,compañeros y demás personas que colaboraron con sus consejos oportunos,especialmente a J,G.
-SL"
DEDICATORIA
Con este trabajo quiero despertar en Ustedes, queridos compañeros, el deseo deaplicar los conocimientos adquiridos con el afán d$ superación.
Este trabajo es para Ustedes.
CERTIFICACIÓN
Certifico que el presente trabajo ha sido
realizado en su totalidad por el señor
Carlos Germán Pul ajo Angos
Ing. Marco Barragan.
Director de Tesis.
ÍNDICEPágina #
CAPITULO I
1.1 INTRODUCCIÓN ..,.„... , ,.,..., , ,..,.,........1
1.2 REQUISITOS FUNCIONALES 3
1.2.1. REQUISITOS DE HARDWARE ....... ...4
1.2.1.1 CARACTERÍSTICAS GENERALES DE LOS
COMPUTADORES PERSONALES ....... .........4
1.2.1.2 MEMORIA..... 7
1.2.1.3 CLASIFICACIÓN BÁSICA DE LOS COMPUTADORES
SEGÚN SU MICROPROCESADOR ....10
1.2.2 LAS SEÑALES PERMITIDAS
1.2.2.1 BUSES .13
- LOS BUSES LOCALES .......21
1.2.2.2 DESCRIPCIÓN DE LAS SEÑALES DEL
- BUS DEL SISTEMA 24
1.3 ENLACE DE LA TARJETA AL PC
1.3,1 EL CONECTOR 32
-TAMAÑO DE LA TARJETA ...33
- POTENCIA DE LA TARJETA MADRE .....33
- DESACOPLAMIENTO DE POTENCIA ....34
1.3.2 PÓRTICOS DEL COMPUTADOR PERSONAL ..35
CAPITULO U
DISEÑO DEL HARDWARE
2.1 ESPECIFICACIONES INICIALES..... ........36
2.1.1 ESTUDIO DE LA INTERFAZ PROGRAMABLE .....37
- DESCRIPCIÓN GENERAL ..,..,„...,.,....,„...., ,..,..,....37
- FUNCIONES DE LOS PINES 38
- El registro de control ..,....,.........._........,..——, 40
- En el Modo O 41
- En el Modo 1 ............................ , .......42
- En el Modo 2 .....44
2.2 REQUERIMIENTOS DE HARDWARE 45
2.3 SEÑALES Y DIRECCIONES UTILIZADAS POR LA TARJETA ADAIO....48
2.4 DESCRIPCIÓN DEL HARDWARE
2.4.1 DESCRIPCIÓN DEL DISEÑO ..49
2.4.1.1 BLOQUE DE DECODIFICACIÓN .......50
2.4.1.2 SEÑALES DEL PPI 52
2.4.1.3 BLOQUE DE CONVERSIÓN D/A 53
- CONVERSOR DIGITAL ANALÓGICO (DAC0830), DE 8 BITS ....54
- Consideraciones Digitales ...56
- Consideraciones análogas ...57
- Consideraciones del Amplificador Operacional ....57
2.4.1.4 BLOQUE DE CONVERSIÓN A/D ,.... ..59
- Reloj del conversor .61
2.5. DISPOSICIÓN DE ELEMENTOS EN LA TARJETA 62
CAPITULO III
DISEÑO DEL SOFTWARE
3.1 ESPECIFICACIÓN Y SELECCIÓN DEL PROGRAMA ...64
3.2 PROGRAMAS DE COMUNICACIÓN ....67
3.2.1 INSTRUCCIONES PARA EL MANEJO DE PÓRTICOS I/O .....68
3.2.2 LIBRERÍA DE ENLACE DINÁMICO (DLL) 68
3.2.3 BLOQUE DE PROGRAMA DE COMUNICACIÓN (Lenguaje G) ...70
3.3 PROGRAMAS EN ENTORNO VISUAL .72
3.3.1 PROGRAMA EN QBASIC , ...72
3.3.2 PROGRAMA EN VISUAL BASIC (V3.0) ....74
- REALIZACIÓN DEL ARCHIVO DE AYUDA 80
3.3.3 BLOQUES DE PROGRAMA EN LAB VIEW „ .......82
4.1 PROGRAMAS DE COMPROBACIÓN DE DIRECCIONES 84
4.2 PRUEBAS DE ACOPLAMIENTO Y FUNCIONAMIENTO
4.2.1 PROGRAMAS DE GENERACIÓN DE DATOS 84
4.2.1.1 LISTADO DEL PROGRAMA EN TURBO C++ ,...85
4.2.1.2 LISTADO DEL PROGRAMA EN QBASIC .86
4.2.1.3 LISTADO DEL PROGRAMA EN VISUAL BASIC V3.0 .......87
4.2.1.4 LISTADO DEL PROGRAMA EN LAB VIEW ...87
4.2.2 PROGRAMAS DE ADQUISICIÓN DE DATOS.
4.2.2.1 PROGRAMA DE ADQUISICIÓN EN QBASIC 89
4.2.2.2 PROGRAMA ADQUISICIÓN EN VISUAL BASIC V3.0 .......90
4.2.2.3 PROGRAMA DE ADQUISICIÓN EN LAB VIEW 91
4.3 RESULTADOS. OBTENIDOS ..........93
4.3.1 RESULTADO DE LAS PRUEBAS DE CORRECTA OPERACIÓN .94
4.3.2 RESULTADO DE LAS PRUEBAS DE
FRECUENCIA DE OPERACIÓN 94
4.3.3 RESULTADOS DE LA FRECUENCIA DE ADQUISICIÓN 95
4.4 ANÁLISIS TÉCNICO-ECONÓMICO 96
4.4.1 ANÁLISIS TÉCNICO.... .....97
CAPITULO V
CONCLUSIONES Y RECOMENDACIONES.
5.1 CONCLUSIONES ...99
5.2 RECOMENDACIONES. 101
BIBLIOGRAFÍA....... 102
ANEXOS
A GRÁFICOS DE LA TARJETA.
A.1 Diagrama de Bloques del Diseño ...........103
A.2 Diagrama esquemático del Diseño 104
A.3 Gráfico de la Disposición de elementos en la tarjeta 105
B MANUAL DEL USUARIO.
B.1 CARACTERÍSTICAS GENERALES 106
B.2 CONFIGURACIÓN 107
B.3 INSTALACIÓN ....108
B.4. CONEXIÓN ...109
TABLERO DE CONEXIONES Y PRUEBAS DE LA TARJETA ADAIO ....112
C SOFTWARE
C.1. ASIGNACIÓN DE DIRECCIÓN BASE 115
C.2. ASIGNACIÓN DE DIRECCIÓN DE SEÑALES ANÁLOGAS 115
D CONSIDERACIONES TÉCNICAS 116
E DIAGRAMAS DE FLUJO DE LOS PROGRAMAS 117
F HOJAS TÉCNICAS DE LOS PRINCIPALES ELEMENTOS UTILIZADOS.
1.1 INTRODUCCIÓN
Son muchas las ocasiones en las cuales se necesita controlar o conocer el
estado de algunos elementos, dispositivos o sistemas externos al computador, y
los periféricos que éste posee no son suficientes o adecuados para ello. Así por
ejemplo el puerto paralelo es empleado para realizar algunos de estos propósitos
y , aunque supera muchas expectativas que se tienen con respecto al control de
sistemas, en ocasiones se ve también limitado en cuanto a la direccionabilidad de
las señales o al número de variables físicas que se pueden controlar
simultáneamente.
Debido a que, en su configuración básica, el computador personal no dispone de
puertos de entrada y salida analógicos que permitan realizar acciones de
supervisión y control directamente sobre los procesos físicos existiendo, sin
embargo, tarjetas que se comercializan para este efecto, pero con muy altos
costos.
Buscando superar las deficiencias antes mencionadas se propone una nueva
alternativa como lo es una tarjeta de adquisición y emisión de datos análogos la
misma que busca dar una visión de la utilización de los modernos elementos
como son los periféricos programables los que se caracterizan por su
universalidad, estos componentes son vistos por el procesador como unidades de
entrada y salida, agrupando de esta manera un cúmulo de alternativas para el
control y lectura más directa sobre un mayor número de variables física externas
localizadas en dispositivos ajenos al computador.
En vista de lo mencionado anteriormente un primer objetivo del presente trabajo
es la utilización de un Interfaz Periférico Programable (PPI) en el diseño y
construcción de una tarjeta de adquisición de datos, a la que se le ha
denominado ADAIO, que incluye: 16 pórticos analógicos, 8 de entrada y 8 de
salida, los cuales funcionan con voltajes normalizados entre O y +10VDc .pórticos
que pueden ser conectados al bus interno, para tarjetas de extensión, de
cualquier computador personal compatible que posea ranuras de expansión tipo
ISA.
La utilización de la tarjeta ADAIO acoplada como nuevo hardware de un
computador personal, por otro lado, abre un espectro de aplicaciones muy amplio
para el seguimiento de variables, puesto que, en la actualidad existen una gran
cantidad de lenguajes de programación en entorno visual.
En el primer capítulo se da una breve información previa para el entendimiento
de algunos detalles importantes que permiten un conocimiento y uso de señales
en ios computadores, indicándose aquellas señales que se utilizaron para el
desarrollo de la tarjeta de adquisición de datos ADAIO, se describe brevemente
los buses utilizados por los PC's, se proporciona información del funcionamiento
del Interfaz Periférico Programable (PPI),
En el segundo capítulo se describen las partes que componen la tarjeta ADAIO,
los puntos estratégicos para su construcción y los aspectos básicos de la misma,
2
se da énfasis en el acoplamiento de las señales y el modo de programación
empleada para ei PPL
En el capítulo III se presentan algunos programas a fin de comprobar el
funcionamiento de la tarjeta, en diferentes ámbitos de programación como lo son
en; a) Programación convencional (Qbasic), b) En lenguajes en entorno visual
bajo Windows, como lo son Visual Basic V3.0 y Lab View
En el capítulo IV se presentar las pruebas realizadas y los resultados obtenidos
en lo relativo al acoplamiento y funcionamiento en los entornos de programación,
mencionados concluyéndose con un análisis técnico económico.
En el capítulo V, se presenta las conclusiones y recomendaciones resultantes del
desarrollo del presente proyecto de tesis.
1.2 REQUISITOS FUNCIONALES
Para una mejor comprensión de los requisitos funcionales necesarios para el
diseño y construcción de la tarjeta ADAIO, primero se empieza estudiando las
características básicas con las que está constituido un computador personal o
compatible, cómo ve éste a los elementos externos, se estudian los tipos de
memoria, luego se vé la clasificación de los computadores personales de acuerdo
a su mícroprocesador con lo cual se empieza a enmarcar la compatibilidad del
hardware deseado. Más adelante se estudian los tipos de buses existentes de los
cuales se escoge el que permita una conexión y una mayor compatibilidad con
los equipos existentes a nuestro alcance y continuación se describe las señales
del bus utilizado.
Para terminar con el capítulo se ven además las características mecánico-\s permitidas para las ranuras (slots) de los computadores.
1.2.1. REQUISITOS DE HARDWARE
Según lo establecido, a continuación se hace una breve mención de las
características importantes de los Computadoras Personales, a fin de determinar
ef hardware compatible en el cual se desenvuelve el presente trabajo.
1.2.1.1 CARACTERÍSTICAS GENERALES DE LOS COMPUTADORES
PERSONALES
CPU (Central Processing Unit).~ Realmente la Unidad Central de Procesamiento
es en sí EL COMPUTADOR; los demás son dispositivos que hacen que el
trabajo del computador pueda ser visto o controlado por los humanos. La
CPU es el circuito electrónico encargado de dirigir el flujo de la información
entre él y ios demás dispositivos externos; normalmente la CPU es un solo
circuito integrado (un CHIP MICROPROCESADOR), existiendo algunas
familias en el mercado, de las cuales interesan los de la línea fabricada
por INTEL llamada familia iapx86 compuesta de varias pastillas de
circuitos integrados (chips) muy similares como son; el 80286, 80368,
80486 y 80586; estos microprocesadores determinan cuanta memoria
puede utilizar el sistema, que clase de programas puede correr y que tan
veloz puede avanzar.
Memoria.- Aunque el computador y toda su capacidad de trabajo están definidos
por la CPU, ella sola no puede hacer operación alguna. Se sabe que un
computador procesa la información de acuerdo a las instrucciones dadas
por ios humanos. Estas instrucciones deben ser almacenadas en memoria
la cual esta formada por circuitería electrónica. Hay diferentes tipos de
memoria: convencional, alta, extendida, expandida, y cada una resuelve un
problema diferente, así por ejemplo, algunos programas no corren si no
cuenta con cierta cantidad mínima de una clase determinada de memoria.
Bus.- Los datos o señales que fluyen entre la CPU y la memoria son
transportados a través del Bus, clasificándose según ellas en bus de
datos, bus de direcciones y bus de control.
El número máximo de datos que puede manipular el computador en una
operación esta determinado por su tamaño de palabra (bus de datos), este
puede ser de 8,16 o 32 bits, independientemente de que tan grande sea la
palabra del computador, los datos se deben transportar al
microprocesador, obviamente, un bus más ancho permitirá la entrada de
más datos en menos tiempo. Considérese, por ejemplo, una 8088 de 8
Mhz contra una 8086 de 8 Mhz, la única diferencia entre las dos es que la
primera tiene una ruta de datos de 8 bits y la segunda de 16 bits.
El bus de direcciones y de control determinan qué clase de tarjetas del
circuito de expansión pueden funcionar en la máquina, en esto, todos los
buses conocidos son compatibles en diferentes grado uno con otro
excepto los de micro canal.
Respecto a los buses en orden cronológico tenemos: a) El bus ISA
(Industry Standard Archítecture) es el nuevo nombre dado ai bus
compatible que utilizan la mayor parte de los computadores, b) El de Micro
Canal el cual fue introducido en 1987 por IBM para sus máquinas PS/2 ,y,
c)EI bus EISA (Extended Industry Standard Archiíecture) es la respuesta al
Micro Canal dada por los fabricantes ajenos a IBM.
BIOS.- (Basic Input/Output System) es el programa de sistema a bajo nivel
que determina la compatibilidad de la máquina. Este programa se
encuentra en una memoria sóio de lectura (ROM), el cual se localiza en la
tarjeta del sistema (tarjeta madre). Como se conoce, el Sistema Operativo
DOS no se comunica directamente con el equipo sino que emite comandos
a través del BIOS.
Tarjeta de Vídeo .- La tarjeta de vídeo afecta el tipo de programas que se pueden
correr y qué tan rápidamente llegan los datos a la pantalla. Se le puede
remplazar fácilmente, y hasta el computador personal más antiguo puede
utilizar cualquier versión desde una tarjeta monocromática hasta una VGA.
Las tarjetas de vídeo han mejorado ofreciendo más colores, mostrando
más puntos en la pantalla y siendo más rápidas.
Puerto Paralelo,- El puerto paralelo común ofrece sólo una de las formas de
añadir entradas y salidas, accesibles al usuario de un computador
personal. Los circuitos y el conector para el puerto paralelo generalmente
se encuentran en una tarjeta de expansión , y debido a que los circuitos de
puerto no son complejos, las tarjetas de expansión casi siempre incluyen
funciones adicionales.
Otro nombre dado al puerto paralelo es puerto de impresora, reflejo de su
uso más común.
Puerto Serial.- El puerto serial del Computador Personal, conocido también como
puerto RS-232, es muy útil, ya que permite la comunicación, no sólo con
otros computadores, sino también con otros dispositivos tales como
mouses, modems y por supuesto microcontroladores.
1.2.1.2 MEMORIA
En vista de ía importancia de la memoria y como se mencionó existen bloques de
memoria los que se clasifican en: convencional, alta, extendida y expandida. Las
tres primeras se distinguen sólo por las direcciones que ocupan en el mapa de
memoria del sistema. La memoria convencional ocupa los primeros 640K La
memoria alta también reside en el primer megabyte entre los 640K y los 1.024K
(1MB). La memoria extendida comienza en 1Mb y continua hasta el tope de la
memoria física presente en el sistema.
Los computadores con microprocesadores 80286 y otros posteriores pueden dar
acceso a más memoria llamada memoria extendida. Los Computadores pueden
usar 640K de memoria convencional a! correr el Sistema Operativo y programas
para DOS. Estos primeros 640K están localizados en la tarjeta madre o en
tarjetas de expansión.
Muchos computadores compatibles disponibles con un microcontrolador 80386 y
80486 alojan hasta 4 MB directamente en la tarjeta madre. El resto está
configurado en memoria extendida o expandida.
La memoria expandida, sin embargo, está fuera de! espacio normal de
direcciones el procesador y para tener acceso a la misma hay que usar un
programa especial llamado administrador de memoria expandida (expanded
memory manager) o EMM, este programa divide la memoria expandida en una
serie de unidades de 16K llamadas páginas, cada página separa 64K de espacio
de direcciones sin usar en el área de memoria alta, para que sirvan como un
cuadro de página de EMS (Especificación de Memoria Expandida).
Los diseñadores del primer computador IBM PC decidieron reservar el área de
memoria alta (una vez más, el espacio de memoria entre los 640Ky 1MB), para
los buffers de video, la ROM del sistema y la RAM instaladas en tarjetas
adaptadores.
Espacio de Memoria para vídeo.- La memoria de vídeo es la que utilizan las
tarjetas de vídeo para llevar un registro de lo que se va a mostrar en
pantalla. Cuando un programa coloca un carácter o dibuja un círculo en la
pantalla, en realidad está haciendo cambios a esta memoria de vídeo.
IBM separó 128K de la memoria principal para la memoria de vídeo,
aunque la mayor parte de las tarjetas de vídeo no necesita realmente
usar tanto espacio de memoria. En la siguiente tabla se indican algunas
tarjetas de vídeo popularizadas con su capacidad de memoria.
TARJETA
MonichromeDisplay Adapter(MOA)Color Graphics
Enhanced GraphicsAdapter (EGA)
Vídeo GraphicsArray (VGA)
Super VGA
ESPACIO DE ACCESO AMEMORIA UTILIZADO
BOOOO-B1QOO(4K)
B8000-BCOOQ(16K)
AOOQO-BFFFF(128K)(BOOOD-B1000 puedendesactivarse)AOOOO-BFFFF(128K)(BGOOO-B1GOO puedendesactivarse)AOOOO-BFFFF(128K)
MEMORIA TOTALDE LA TARJETA(K)4
16
256
256
512-1024K
ROM EN LATARJETA
Nada en el espaciode direcciones dememoria.Nada en el espaciode direcciones dememoria.COOOO-C3FFF(16K)
COOOO-C5FFF (24K)
COOOO-C7FFF (32K)
ROM (Memoria para lectura solamente).- En este segmento de la memoria
principal los programas son cargados sólo una vez con un dispositivo
especial que puede ser un PROM(Memory Only Read Programer), un
programador EPROM. Pues bien, a diferencia de la RAM normal, la
memoria ROM no pierde los datos de su memoria cuando se apaga la
máquina. En esencia puede decirse que ROM contiene los programas
que le dicen al sistema cómo usar una tarjeta de circuito.
Debe ínsistirse de que el sistema operativo no se comunica directamente
con el equipo sino que emite comandos a través de BIOS, de tal manera
que determina cuan compatible es un Computador Personal.
Memoria Extendida.- Un Computador con microprocesador 80286 puede
realmente dirigirse a 16 megabytes, así como uno con 80386 u 80486
pueden dirigirse a 4 gigabytes de RAM. La memoria RAM superior a 1
MB es memoria extendida. Estos chips tienen acceso a memoria mayor
que 1024K(1 MB), pero únicamente en modalidad protegida.
Decimal1408K-1
(1403=1024+384)1024C-1 ;
768K-1-
640K-1-
247K ---
69K- -----
-1 K -----
OK --- —
MemoriaExtendida
Área reservada:ROMs y Buffets
Área reservada:Memoria de vídeo
AplicacionesDOS
TSRs
DOS
Área BIOS
Hex-15FFFF
FFFFF
BFFFF
-9FFFF
3B400
-11400
OD800
00400
-00000
Tabla 1.2.1
En la tabla 1.2.1 se puede observar el mapa de memoria básico de un
computador personal.
1.2.1.3 CLASIFICACIÓN BÁSICA DE LOS COMPUTADORES SEGÚN SU
MICROPROCESADOR
En busca de realizar un realizar un hardware compatible con todo computador
personal , y tomando en cuenta que, en el mercado de los computadores se
utilizan varios circuitos microprocesadores, los mismos que en su mayoría están
basadas en una línea fabricada por INTEL llamada familia iapx86, conformada
10
por:
El 8088 es el anterior y menos poderoso que el 80286 y se utilizan en la mayor
parte de la máquinas de clase XT. Este microprocesador viene con lo que se
acostumbra llamar paquete de 40 patas DIP (Dual In-line Package —Paquete de
doble hilera—). Los computadores Turbo AT/XT compatibles pueden tener
velocidad de procesamiento de sus datos a 8 Mhz.
El 80286 , diseñado por Intel en 1981. Este microprocesador viene en un
cuadrado de plástico llamado PGA (Pin Grid Array —Disposición reticular de
patas—), contiene mucho más poder que el 8088, debido a esto, éste
microprocesador se calienta más rápidamente ai trabajar y , por lo tanto, se
requiere de dispositivos adicionales de enfriamiento como disipadores de calor.
El 80386 , en sus dos versiones 80386DX y eí 80386SX , es un poderoso
miembro de la familia del 80x86. Fue introducido en 1985 y viene en un paquete
PGA. Contiene abundancia de funciones de programación, incluyendo la
habilidad de muitiíareas en programas bajo DOS con la ayuda de un programa
supervisor. Su ruta de datos de 32 bits acelera el acceso a la información,
aunque sólo pocas tarjetas de expansión utilizan plenamente ía función de 32
bits. La 386SX es idéntica a el 386DX excepto que tiene una ruta de datos
externos de 16 bits.
El 80486 , en sus dos versiones 486DX y 80486SX es una especie de mejora al
386. Combina a su predecesor afinado con dos circuitos integrados que aceleran
los sistemas 386: el controlador caché 385 y el coprocesador numérico 387, su
13.
microcódigo es más grande y más rápido, de manera que un 386 de 25 MHz en
conjunto con un 385 y un 387 ejecutan por segundo solo la mitad de las
instrucciones que un 486 de 25 Mhz.
El 486SX tiene una ruta de datos de 32 bits, controlador de memoria y 8K de
caché, igual que el 80486DX , pero no tiene coprocesador numérico.
El 80486DX2, el chip Overdrive y la duplicación de reloj. A diferencia de los
coprocesadores de punto flotante de un tiempo atrás (las familias 8087, 187, 287
y 387), el 80487SX no colabora con el procesador principal anterior, sino que se
toma el control de todo el sistema por completo, desconectando efectivamente al
80486SX. Intel llevó las cosas un poco más allá con un chip llamado Overdrive,
éste circuito integrado Overdrive posee al propiedad de correr simultáneamente a
dos velocidades de reloj.
Cuando transfiere datos a o desde el bus, la memoria o cualquiera de los otros
elementos aparte de sí mismo, lo hace a 25 Mhz; pero las operaciones internas
—operaciones aritméticas, toma de decisiones, operaciones lógicas, y
similares— son efectuadas a dos veces la velocidad del reloj — ! 50 Mhz
internamente ! El efecto neto es que el chip Overdrive hace todo al menos tan
velozmente como el 80486DX de 25 Mhz, y muchas operaciones a doble
velocidad. El resultado es que este chip Overdrive acelera la velocidad del
computador de treinta y tres hasta un cincuenta por ciento aproximadamente.
El 80486DX2, al igual que el chip Overdrive, corre externamente a "X" Mhz, pero
internamente a "2X" Mhz.
12
De lo mencionado anteriormente, se puede decir que para el desarrollo adecuado
del presente proyecto de tesis se necesita un computador que tenga un
microprocesador de rápida respuesta, que trabaje con multitarea, que posea una
gran capacidad de memoria RAM, y que tenga un cooprocesador matemático
incorporado para una mayor velocidad en sus procesos matemáticos utilizados
en operaciones por programas con entorno visual.
1.2.2 LAS SEÑALES PERMITIDAS
Luego de haber determinado el hardware básico para el funcionamiento de la
tarjeta ADAIO la próxima interrogante que se plantea en el desarrollo es ¿ Cuáles
son las señales básicas que utiliza la tarjeta, de tal manera que sea adaptable a
todo computador compatible?. Para responder a esta interrogante previamente se
estudiará el conjunto de señales permitidas en las ranuras de los computadores
llamadas buses.
1.2.2.1 BUSES
La estructura de ranuras o slots, para conectar tarjetas de expansión a un
sistema básico de microcomputador, ideado primero por Apple y luego masificado
por IBM en su línea de Computadores Personales, XT's y demás clones
compatibles, ha demostrado que sigue siendo conveniente desde el punto de
vista conceptual y funcional. A través de cada ranura se logran llevar todas las
señales necesarias para realizar las diferentes interfaces del sistema
13
(impresoras, unidades de disco, pantallas, rnodems, scanner, etc.). El conjunto de
estas señales recibe el nombre de BUS y tiene, en sus diferentes
configuraciones, un determinado número de señales con funciones específicas y
una forma física estándar con el fin de poder conectar y/o desconectar en él
diferentes modelos de tarjetas con diversas aplicaciones.
Esto, ha permitido el desarroilo y versatilidad de los computadores personales,
adaptándolos a muchas aplicaciones teniendo como base un sistema principal
compuesto por un microprocesador (CPU), una memoria básica y una serie de
circuitos de entrada y salida mínimos para que funcione el sistema, con las
diferentes tarjetas de expansión, hasta formar un sistema de acuerdo a las
necesidades específicas de cada usuario.
El bus ISA.- (Industry Standard Architecture), fue el primer bus utilizado en los
Computadores Personales y XT de IBM como sistema de arquitectura abierta.
Esto permitió la proliferación de clones y una variedad de tarjetas de expansión e
¡nterfaces de bajo costo que se encuentran en el mercado. De los buses ISA hay
dos versiones: el de 8 bits y el de 16 bits.
El bus ISA de 8 bits.- El bus de 8 bits salió en el año 1982 y se conservó en los
computadores XT. Este bus se encuentra en forma de conector en línea de doble
lado y tiene 62 contactos, 31 por cada lado. Sus contactos están numerados por
un lado como A1 hasta A31 y por el otro lado como B1 hasta B31. En la figura
1.2.2.1.a) se muestra la estructura física, la numeración y el nombre de cada una
de las señales.
14
SEÑAL PIN
Ground BlEeset B2
+ 5YDC B3IBQ2 B4
-5VDC B5DRQ2 B6
- L2 TOC B7-Caid 5alactí1! BB
+ 12VDC B9GixjunA B30
-SMEMW Bll- SMEMR B12
-HQW B13-líDR B14
-DACKL3 BISDRQ3 B16
-DACIC1 Bl?DRO 1 B18
-KEFRESH B19OodiC4.77MHz) B20
ERO. 7 B2LERO" 6 B22ERO. 5 B23IRQ 4 B24 .ERO 3 B25
-DACE.2 B26T/C B2?
BALE B23+ 5VDC B29
Ose (14,3 MHaD B30GiounA B3L
BT^
E
a
PIN SERAL
Al -I/O CHCK
A3 Data Bit 6A4 Data Bit 5A5 Data Bit 4A6 Data Bit 3A7 Data Bit 2Á8 Data Bit 1A9 Data Bit OA10 -r/QCHRÜYA1L AENA12 Addtess Bit 19A13 AddressBitlBA14 AddressBitL?AIS Addrcss Bit 16A16 AddressBitLSAl? AddressBrtHA13 AddmssBitlSA19 AadressBitL2A20 AddressBitLlA21 Address Bit IDA22 AddressBitS
A24- AddressBit?
A26 AddressBit5A27 AddiessBit4A28 AddressBitSA29 AddressBit2Á30 Addres Bit LA31 Adcliress Bit O
Como se puede observar en la figura
anterior, en una ranura se encuentra e!
bus de datos, el bus de direcciones, las
señales de control los voltajes de
alimentación. Casi todas estas señales
van conectadas al microprocesador a
través de circuitos acopladores (drivers o
buffers) con el fin de protegerlo de
posibles cortocircuitos o conexiones
equivocadas. Como podemos ver, en el
bus ISA de 8 bits hay un bus de datos de
Figura 1.2.2.1 a) Bus ISA de 8 8 bits y un bus de direcciones de 20
líneas lo que permite un direccionamiento hasta de 1 Mbyte.
El bus contiene seis señales de interrupción (IRQ2 a 1RQ7), tres canales de DMA
(Acceso Directo a Memoria) y una señal de reloj de 4.77 Mhz. Aunque cada
conector en el bus se supone que trabaja de la misma forma. El pin del oscilador
(B30), entrega una señal de 14.3 Mhz. Cuando se debe hacer reset en el
computador, el pin RESET DRV (B2) reinicia todo el sistema. Cuando se recibe
una dirección válida, el pin AEN(A11), le indica al sistema que se puede
decodifícar esta dirección. El pin -I/O CHCK o I/O Channel Check (A1), avisa a
los circuitos de la tarjeta principal, que ha ocurrido un error en la tarjeta de
expansión; el pin -I/O CHRDY o Channe! Ready (A10) se activa cuando una
tarjeta de expansión está lista, si este pin está en nivel bajo (0), el
15
microprocesador extiende el ciclo del bus generando estados de espera (wait
states).
Las seis señales de interrupción por hardware (IRQ2 a IRQ7), son utilizadas por
las tarjetas de expansión para demandar atención por parte del microprocesador.
Las interrupciones O y 1 no están disponibles en el bus ya que ellas tienen las
prioridades más altas del temporizador principal y el teclado. Las señales I/O
Read y I/O Write indican que ei microprocesador o el controlador de DMA quieren
transferir datos hacia o desde el bus de datos. Las señales de lectura y escritura
de memoria (-MEMP y -MEMW) le indican a la tarjeta de expansión que la CPU o
el DMA van a leer o escribir datos a la memoria principal. El bus de las XT tiene
tres señales de requisitos de DMA (DRQ1 a DRQ3), que le permiten a la tarjeta
de expansión transferir datos hacia o desde la memoria.
El bus ISA de 16 bits.- Con el avance de la tecnología, las limitaciones del bus
ISA de 8 bits se evidenciaron rápidamente. Las seis interrupciones disponibles se
coparon con la unidad de disco, el disco duro, [os puertos seriales y el puerto
paralelo, dejando pocas posibilidades de expansión. Así mismo, de los tres
canales de DMA, la unidad de disco y el disco duro ocupaban dos, quedando uno
solo libre.
16
SEflAL PIN
GiüuridReset
+ 5TOC3KQ2
-3YDCDE.02
-12TOC-Caid. selected
+ 12TOCGround
-SMEMW- SMEMR
-LDW- I)O R
-DAOC3DRQ3
-DACIC1DR01
- EEKRESH
IRQ 7ERO 6
[RQ4IR03
-DAOC2T/C
BALE+ SVDC
Ose (14,3 MHz)
BlB2B3B4B5B6B7BBB9B10BliB12B13B14B15B16B17B13B19B20B2LB22B23B24B25B25B27B23B29B30B31
-MZMCS16-IjOCSlfi
IR010IRQ 11IRQ 12IRQ 15IRQ 14
-DACECODRQO
-DACK5DRQ5
-DAC3C6DRQ6
-DACK7DRQ7
+ 5YDC-MASTER
Gaiaund
DID2D3D4D5D6D7D8D9
DIODHD12D13D14D15D16D17D18
a
m
m
B
PIN
AlA2A3MA5A(5A7A8A5A10AllA12A13A14A15AISA17AISA19A20A21A22Á23A24A25A26A27A28A29A30A31
ClC2C3C4C5C6C7C8C9CIOCUC12C13C14C15C16Q7C13
-DO CHC1CData Bit 7Data Bit 6Data Bit 5Data Bu 4Data Bit 3Data Bit 2Data Bit 1Data Bu Q-I/O CHKDYAE3íAddiess Bu 19Address Bit IBAadressBítl?AddressBLtlSAdaress Bit 15Address Bit 14Address Bit 13Address Bit 12Address Bit UAdaress Bit 10Address Bit 9Address BitSAddress Bit 7
Adaress Bit 4Address Bit 3Address BLt 2Addres Bu LAddress Bit O
-SBHE
AdiressBit22Address Bit 21
AdíWBit 19Address Bit 13Address BH 17-MEMR-MEM WData BítSData Bit 9DaiaBit 10Data. Bit 11Data. Bit 12Dala Bit 13Data. Bit 14Data. Bit 15
Figura 1.2.2.1.b) Bus ISA de 16
La capacidad de direccionamiento de
sólo 1 MB y el bus de datos de 8 bits
también se constituyeron en una
desventaja, que hacían que los equipos
fueran muy lentos para las nuevas
aplicaciones generales en el desarrollo
de nuevo software. Con la aparición del
microprocesador 80286 de 16 bits y tos
computadores AT en 1984, se diseño un
nuevo bus, el ISA de 16 bits, que
utilizaba en gran parte el bus anterior
ISA de 8 bits agregándole un segundo
conector de 36 pines alineado con el
primero con nuevas señales, (figura
1.2.2.1.b) De esta forma, se podían
utilizar la gran cantidad de tarjetas
periféricas y de expansión que existían
en el mercado.
En esencia, se agregaron otros 8 bits de datos, más direcciones, cinco
interrupciones, cuatro canales de DMA y algunas señales de control. Así mismo,
se incrementó la velocidad a 8.33 Mhz.
Se debe mencionar que el bus ISA de 16 bits o bus AT, fue ampliamente utilizado
por los fabricantes de clones y compatibles, éste bus todavía se encuentra en la
17
mayoría de los computadores personales fabricados actualmente, ya que para él
se fabrica una gran cantidad de tarjetas para periféricos y de expansión.
El bus MCA de 32 bits.- Con la introducción de los microprocesadores de 32 bits
como el 80386 y ei 80486, el bus ISA de 16 bits se quedó nuevamente atrás y se
creó la necesidad de un nuevo bus. En 1987, IBM diseñó el bus MCA (Micro
Channel Architecture) o Micro Canal para su línea de computadores PS/2.
Su diseño buscaba, además del objetivo de mejorar el rendimiento de los
equipos, para el cual se necesitaban fabricar sus propias tarjetas de expansión y
periféricos, razón por la cual no tuvo acogida técnica.
La principal diferencia entre los buses ISA y MCA consiste en la configuración
física, ya que el último tiene una separación entre los pines de 0.050" con el fin
de acomodar más conexiones en el mismo espacio, esto genera una
incompatibilidad total entre los dos sistemas.
El bus EISA de 32 bits.- En 1988 y 1989 fue desarrollando el bus EISA
(Extended Industry Standard Architecture) de 32 bits para satisfacer las
necesidades de mayor velocidad y desempeño que proporcionaban los
microprocesadores 80386 y 80486.
Para lograr la compatibilidad entre los dos sistemas ISA y EISA, se diseño un
conector, con diferente altura o nivel de tal manera que la transferencia entre los
dos buses se realice automáticamente dependiendo de la forma de la ranura en
la tarjeta.
Como se puede observar en la figura 1.2.2,1.c), el bus EISA tiene 30 líneas de
18
direccionamiento, 32 bits de datos, 15 niveles de interrupción y 7 canales de
DMA.
Una de las principales ventajas del bus EISA es su capacidad de manejo
autónomo del bus, que en pocas palabras podría explicarse como la capacidad
para permitir el intercambio de información entre dos periféricos sin la
intervención de la CPU. Aunque la velocidad del bus EISA se conservó en 8.33
Mhz, para permitir la compatibilidad con ISA, su velocidad para transferencia de
los datos es mucho mayor debido al aumento en la anchura del bus; esta llega a
ser de unos 33 Megabits por segundo.
19
Pin 16 bits 32 bits
Grouiid+ 5VDC4-5VDC
ReservadReseived
Eey
ReseñadReserved
+ 12VDCM-IfD-LOCK
ReservadGrouitil
Reservad-BESKey
-BE2-BEO
Giouiid+ 5VDC f
-Address 29
Graund-Addiess26-Address 24
KeyAddress 16
-Aádness 14
-Í-5VDC-t 5YDCGroraid
Address LOKey
Address SAddress 5Address 5
+ 5YDCAddress 2
KeyData 16Daia 13GrouruJDaia 21Data 23Data 24GroiandDala 27
KeyData 29+ 5VDC
+ 5VDC-MAKb:
Gioupd BlReset B2
+ 5VDC B3IF,Q2 B4
-5VDC B5DRQ 2 BE
-12YDC B7-Card seLected BB
+ 12TOC B9Ground BIO
-SMEMW Bll- SMEMR B12
-DOW B13- I/O R B14
-DACK3 B15DK.Q3 Bltí
-DACKL B17DRQ i B18
-KEPKESH B19Hoc3:[/l.77fyIH2:) B20
IRQ 7 B21IRQ 6 B22IRQ 5 B23IRQ 4 B24H20 3 B25
-DACIC2 B2fi
TJC B27BALE B28
-t-5VDC B29QscC14.,3MH-z) B30
Grouiid B3]Key Key
-MEM CS L6 Di- M D C S Ü f i D2
IRO10 D3IRO11 D4IRQ 12 D5IRQ 15 D6IRQ 14 D7
-DACKO DSDROO D9
-DACK5 DIODRQ 5 DI 1
-DACK6 D32DRQ 6 D13
-DACK7 DI 4
DRQ 7 DI5+ 5VDC D16
-MASTER D17Giound DI 3
- ni 9— U 17
M1=
1=
M
wmczBBü~cr
H
n
MCU
c=crcz:nc=cz
BCZ
cz
M
«HczQü
H
H
OBCZ
wcz
OMBB
^HB
•M
¿
B=)
ZJraZ3
nZ3mzaMZ3
=3
ZJ
m
m
m
m=3
•mZ3m
HZ3
M
HZ3
Z3
•»
•Z3B
H=3M
B
ñMc=crczwm
cz
nCZ
czSE=
CZ
jjí••czcz
Mczcr
•MM
••••i
mZ3
=3
=3
Z3
Z3
Z3
Z3
zaZ3
=3IBZ3BB
MZ3IB=3n2=3
Z3
=3B
Al -UOCHCKA2 Data Bit 7A3 Data.Bit6A4 Data Bit 5A5 Data Bit 4AS Data Bit 3A7 Data Bit 2A8 DataBitlA9 Data Bit 0A10 -DO CHEDYAll AEtrA12 AddiB5sEitl9A13 Address Bit 18A14 Address Bit 17A15 Address Bit 16A16 Adda«5£Bit 15Al 7 AUdressEitUAIS AddrasBiil3Al 9 Addi«5sBi1l2A20 AddrasBiíllA21 Addi^ssBiilOA22 Address Bit 9A23 Address Bit 3A24 Addiesí BÍ1 7A25 Adduess Bii 6
A26 Adiiness Bii 5A27 Address Bit 4A28 AddiesíBiiSA29 Addttss Bit 2¿30 AddresBiílA31 AAdressBiiOííey KeyCI -SBHEC2 Address Bit 23C3 Address Bit 22C4 Address Bit 2 LC5 Address Bit 20C6 Address Bit 19C7 Address Bit 13C8 AddiessBitl7C9 -MEMBCID -MEMWCll Data Bii 3C12 DataBit9C13 DaiaBitlOC14 Da.ta.Bit 21C15 DaiaBitl2C16 DaiaBít 13C17 DaiaBitl4CLS DaiaBitl5i™ 19
- CMD-STARTEZRDT-EX32GoüundKey-ESI 6-SLBUKST-MSBITSTW- RGrouiidEeseiTeiííeservedIfeservedGmundKay
-BE1-Addiesj 31
Gtoijnd-Adness 30
-Adrress 23-Adrress 27-Adrress 25GioundKey
Address 15Address 13Address 12Address 11GramidÁdieess9
ICeyAddress 7GrcnuulAddiess AAddress 3GraundEeyDaia 17Data 19Data 20Data 22GratuidData 25Data 26Data 28KeyGKJUILÍ
Data 30Data 33-MREQx
Figura 1.2.2.1.c) Bus EISA
20
Desafortunadamente, muchas tarjetas de interface tipo EISA no son más rápidas
que sus similares tipo ISA, debido a que sus fabricantes no utilizan todas las
propiedades de! bus. Así mismo, la baja velocidad del disco duro comparada con
otros periféricos, es un problema que no depende del bus en sí.
LOS BUSES LOCALES
Los buses locales ofrecen una mayor velocidad en las operaciones que
involucran gráficas, vídeo y sonido presentes en la gran cantidad de aplicaciones
con multimedia y otras similares, tan populares actualmente. La baja velocidad de
los buses ISA, MCA y EISA sólo se podía superar conectando directamente las
líneas de datos, las líneas de direccionamíento y las de memoria al
microprocesador. De esta forma, se pueden lograr velocidades hasta de 66 Mhz
en comparación a los 8 o 10 Mhz de los otros buses. Los dos tipos principales de
buses locales son Vídeo Local y el PCI, que se explicarán más adelante,
El bus local de vídeo (VL) bus .- Este tipo de bus fue propuesto en 1992 por la
Video Electronics Standards Association y por eso se ie llama VESA Vídeo Local
Bus, éste bus utiliza el mismo conector de 62 pines del bus MCA, por lo tanto las
tarjetas que utilizan éste bus tienen dos conectores, uno en cada extremo y para
cada bus. Los conectores o ranuras de la tarjeta madre, se colocan alineados con
¡os conectores o ranuras ISA. El bus VL es expandible de 32 a 64 bits
permitiendo su utilización en sistemas con el microprocesador Pentium, por
medio de otro conector tipo MCA alineado con el primero.
El bus local PCI .- El último bus es el llamado bus local PCI (Peripheral
21
Component Interconnect) propuesto por Intel en 1992 y apoyado por la mayoría
de los fabricantes de computadores personales, quienes lo han adaptado en los
equipos mas recientes, tales como los computadores que utilizan el
microprocesador Power PC 604.
El bus PCI, de 32 bits, es expandible a 64 bits y soporta la lógica de 3.3 voltios
junto a la normal de 5 voltios. Las ranuras PCI estarán dedicadas para los
periféricos más críticos que pueden estar conectados directamente a la tarjeta
principal o por medio de tarjetas de interface como son las unidades para
multimedia (CD-ROM), tarjetas para gráficas y vídeo, unidades de disco duro y
tarjetas para conexión en red.
De todas maneras, los sistemas seguirán incorporando ranuras ISA, EISA y
VESA, ya que el bus PCI es un complemento y no reemplaza totalmente los
buses tradicionales.
Del estudio realizado anteriormente se puede empezar diferenciando las
máquinas por dos cosas: su compatibilidad de programas y su compatibilidad de
equipo. La compatibilidad de programas queda determinada por la clase de
microprocesador que utilizan.
La compatibilidad de equipo plantea la pregunta, "¿ Se puede tomar una tarjeta
de circuitos electrónicos, ponerla en la computadora y que funcione ? JI
Buscando contestar esta pregunta se observa que ios computadores XT, AT y
compatibles comparten un bus común que se encuentra en las ranuras de la
tarjeta principal para insertar tarjetas de expansión, este bus es del tipo ISA . Sin
22
embargo, la línea PS/2, utilizan un bus nuevo y completamente incompatible
llamado MCA—Micro Channel Architecture (Arquitectura de Micro Canal).
MICROPROCESADOR BUS DE PC (ISA} EXTENDED INDUSTRYSTANDARDARCHITECTURE (EISA)
Intel 8088, 8086, IBM PC, XT, Portátil,80188,80186 PS/2 Modelo 30 y
Modelo 50NECV20, V30 Compaq Deskpro,
PortátilToshiba T1000,T120QAT&T 6300
Ninguna de estacategoría
Ninguna de estacategoría
Intel 80286 IBM AT, XT286, IBM PS/2 Modelo 50AT/370Compaq Deskpro 286Zeníth Z248.LP286SuperSport286AT&T 6300+Toshiba 1600,3100,3200AST Premíun/286
Ninguna en estacategoría
IBM PS/2 Modelo 502
IBM PS/2 Modelo 60
Intel 80386, Compaq Deskpro80386SX, 80486 386, 386S
Zenith Z-386
AT&T 6386AST Premiun/386ALR Flex Cache 20
IBM PS/2 Modelo 55
IBM PS/2 Modelo 70
IBM PS/2 Modelo 70IBM PS/2 Modelo 80IBM PS/2 Modelo 95
ALR Business VEIS A
Compaq Deskpro486/33
Tabla 1.2.2.1. d) Relación entre los tipos de microprocesadores y buses existentes en los
diferentes computadores.
De lo expuesto en la tabla anterior se observa que por más nueva que sea una
computadora siempre existirá las señales básicas las cuales están agrupadas en
los buses y, de los cuales el bus ISA de 8 bits es el más antiguo y por ende el
más compatible , ya que toda tarjeta con un microprocesador de la familia INTEL
iaxSG llevará consigo una ranura para bus tipo ISA.
En consecuencia de todo lo anterior, el tipo de bus en el que se desarrollará el
presente trabajo de tesis, es el bus tipo ISA de 8 bits, por ser el más general
encontrado en el mercado de los Computadores Personales, a continuación se
23
realiza un estudio de las señales permitidas en las ranuras de la tarjeta del
sistema.
1.2.2.2 DESCRIPCIÓN DE LAS SEÑALES DEL BUS DEL SISTEMA
Todos las ranuras de la tarjeta madre tienen buses con idénticas señales, todas
estas tienen niveles lógicos TTL, excepto por las líneas de fuentes y tierras que son
provistos por el bus en el conector. El bus del 8088 es conformado por la unión de
señales que soportan el acceso directo a memoria, interrupciones, tiempo y control
de I/O, lectura-escritura de memoria) generación de estados de espera, refresco de
memoria y detección de error. A continuación se da una serie de definiciones que
detallan la descripción u funcionamiento de todas la señales de ios 62 pines.
DEFINICIÓN DE LAS SEÑALES
OSC (Oscilador)
Esta señal es sólo de salida con una frecuencia de 14,31818 MHz y un período de
aproximadamente 70 ns. Tiene una relación de trabajo por ciclo de 50%.
Esta señal es la de más alta frecuencia de todas las otras señales de tiempo y la
frecuencia de ésta puede ser ajustada en tiempo con el ajuste de un capacitor que
esta localizado en la base de la tarjeta madre, ésta señal puede ser dividida en 4.
Además se debe tener cuidado cuando esta señal es usada como reloj de otro bus
ya que puede haber una dessincronización de ésta con otras.
24
CLK (Reloj)
Esta señal se deriva de la señal del oscilador, esta señal de salida se obtiene de
dividir la señal osciladora para tres la cual da una frecuencia de 4,77 MHz. Esta señal
no es simétrica con un tiempo en alto de 70 ns. y un tiempo en bajo de 140 ns. Esta
señal es sincronizada con respecto a las de control de lectura-escritura en memoria y
puede ser usada para generar estados de espera en ei bus. Un ciclo de bus es 4
períodos de reloj (aproximadamente 840 ns.)
Esta señal es únicamente de salida, utilizada para inicializar el sistema lógico tanto
en el encendido del equipo, como en una falla de voltaje, además ésta es utilizada
para inicializar a los elementos de I/O y traerlos a un estado lógico conocido de
operación.
AOaA19
Señales de salida desde la AO a la A19, que constituyen el bus de direcciones del
sistema, sirven para direccionar las memorias y dispositivos de I/O (AO es el bit
menos significativo y A19 es el más significativo). Estas 20 líneas son manejadas por
el microprocesador, como por el controlador de DMA. Con 20 líneas se puede
direccionar hasta 1M byte de memoria del sistema, pero no todos los espacios de
direcciones son permitidos en el bus del sistema.
El procesador a través del uso de las instrucciones IN y OUT, pueden usar las
direcciones fuera de los 64K para localizar los pórticos de I/O, estas direcciones de
los pórticos son llevados en su bus a través de las líneas AO y A15, mientras que las
25
líneas 16 a 19 no son usadas y están inactivas; sin embargo, un computador
personal solamente direcciona pórticos de I/O usando las líneas desde AO hasta A9,
en el rango de 0200H a 03FFH HEX, válidas para el bus de! sistema.
DOaD7
Estas 8 líneas son bidirecionables y constituyen ei bus de datos1 señales utilizadas
para transmitir datos entre el mícroprocesador, ia memoria y pórticos de I/O (DO es el
menos significante y D7 es el bit más significativo). Cuando el mícroprocesador inicia
un ciclo de escritura los datos son llevados en su bus para fa escritura, ya sea en
memoria o en pórticos de I/O. Estos datos son validados antes que termine el pulso
de las señales de control IOW o MEMW, dichos pulsos son usados como reloj en el
bus de datos.
Además durante los ciclos de DMA el bus de datos es utilizado para transferir
información directamente entre los pórticos de I/O y memoria sin la intervención det
mícroprocesador.
ALE (Habilitación de retención de la dirección)
Esta es una señal de salida, manejada por el controlador del bus y es utilizada para
indicar que la dirección del bus es válida para iniciar un ciclo del bus. Esta señal se
activa en alto antes que el bus de direcciones empiece y se desactiva después que
éste bus inició.
Esta señal es utilizada para retener la información del bus de direcciones del
microprocesador, se debe notar que el bus de datos no contiene información de
direcciones validas y , por lo tanto, la señal ALE no puede ser utilizada para
demuttipiexar las direcciones.
26
Esta señal ALE es una buena señal de referencia para sincronizar el inicio de ios
ciclos de cada bus, tomando en cuenta que ésta señal no se activa durante los ciclos
de DMA.
I/O CH CK (Chequeo de canal de entrada/salida)
Esta es una señal sólo de entrada que se activa en nivel bajo, utilizada para el
reporte de una condición de error en el interface añadido. Cuando esta señal detecta
un nivel lógico bajo generará una interrupción no mascarabie (NMI) al
mícroprocesador.
I/O CH RDY (Lectura del canal de entrada salida)
Esta es una señal solamente de entrada que se utiliza para extender la longitud de
los ciclos del bus, ya que cuando la memoria o los pórticos de I/O, no son demasiado
rápidos para responder a un ciclo normal del bus se pueden añadir hasta 4 ciclos de
reloj en ei bus del sistema.
Si la memoria o un pórtico de I/O quiere extender un ciclo del bus, forzará la señal I/O
CH RDY a un nivel lógico bajo cuando se decodifique su dirección y reciba los
comandos MEMR, MEMW, IOR ó IOW.
Esta señal debe ser cuidadosamente controlada ya que sólo añade estados de
espera al ciclo del bus en incrementos de 210 ns hasta un máximo de 840 ms.
IRQ2 al IRQ7 (Pedido de interrupción del 2 al 7)
Estas 6 señales son sólo de entrada , y utilizadas para pedir una interrupción al micro
8088 desde el bus del sistema, y van directamente al controlador de interrupciones
27
de la tarjeta principal del mícroprocesador. Los programas básicos de configuración
del sistema inicializan al controlador de interrupciones y activan al IRQ2 como el de
alta prioridad y el IRQ7 como el de baja prioridad.
IOR (Lectura de entrada-salida)
Esta es una señal de salida del controlador del bus, utilizada para indicar la
presencia de la dirección de algún pórtico de I/O en este bus de direcciones. La
dirección del pórtico de I/O debería responder localizando sus datos de lectura en el
bus del sistema, aproximadamente 30 nanosegundos después del pulso de la señal
IOR para asegurar que el proceso de trasferencia de datos sea válido.
Cuando ocurren ciclos de DMA, la señal IOR es controlada por el controlador de
DMA. En este caso el bus de direcciones no contiene ninguna dirección de pórticos
de I/O pero, en cambio contiene una dirección de memoria donde los datos de los
pórticos serán escritos. Los pórticos de I/O no son seleccionados por una dirección
sino por una señal.
IOW (Escritura de I/O)
Esta señal se activa en nivel lógico bajo, es una señal sólo de salida y es manejada
por el controlador del bus. Indica las direcciones , y los datos a ser escritos dentro del
pórtico de I/O, en sus respectivos buses. Cuando la señal se activa en bajo el bus de
datos no es válido así que los datos del pórtico deben ser retenidos usando el pulso
de esta señal.
Cuando ocurre un ciclo de DMA, la seña! IOW es activada por el controlador de DMA
28
y es utilizada para escribir los datos desde la memoria Jos mismos que son
actualizados en el bus de datos.
MEMW (Escritura de memoria)
Esta es una señal que es activada en nivel lógico bajo, utilizada para escribir los
datos del bus del sistema a la memoria, es activada por el controlador del bus e
indica que el bus de direcciones contiene la localidad de memoria en la cual los
datos van ha ser escritos.
Además durante los ciclos de DMA esta señal es manejada por el controlador del
DMA. y es utilizada para escribir datos en el bus desde los pórticos de 1/0 a memoria.
MEMR (Lectura de memoria)
Es una señal que se activa en nivel lógico bajo, es sólo de salida utilizada cuando se
requiere una lectura de datos de memoria, esta señal es activada por el controlador
del bus. Indica que bus de direcciones contienen una dirección válida de memoria y
que la localidad de memoria especificada es utilizada para la lectura de datos del
sistema.
Además durante los ciclos de DMA ésta señal es activada por su controlador e indica
que la dirección de la localidad de memoria debe manejar el bus de datos.
DRQ1 al DRQ3 {Requerimiento de DMA del 1 al 3)
Estas tres líneas son activadas en un nivel lógico alto, son señales de entrada
utilizadas por el interfaz cuando requiere ciclos de DMA. Sí un elemento o ínterfaz
29
quiere transferencia de datos entre él y la memoria sin intervención del
microprocesador éste requerimiento es inicializado por la activación de la línea DRQ.
Estas líneas van directamente al controlador de DMA en la tarjeta del
microprocesador donde son priorizadas antes que el ciclo del DMA sea dado. Ef
programa de configuración básica del sistema del computador personal activa el
conírolador del DMA, de modo que la señal DRQ1 es la de mayor prioridad y la
señal DRQ3 es la de menor prioridad.
DACKO A DACK3 ( Actualización del DMA de O a 3)
Estas cuatro señales son activadas en nivel lógico bajo, son señales de salida
utilizadas por el controlador para reconocer las peticiones de DMA. La señal DACKO
es utilizada para el refresco de memorias dinámicas.
AEN (Habilitación de direcciones)
Esta señal es de salida activada en nivel lógico alto utilizada por el controlador DMA.
Indica que tos ciclos de DMA están en proceso, en la tarjeta del microporcesador
esta señal es usada para deshabüitar los buses de dirección y de control, además
habilita el bus de control y direcciones del controlador DMA.
En el bus del sistema, su propósito es deshabilitar las direcciones de los pórticos de
I/O decodifícados durante los ciclos DMA, así que ¡as direcciones de memoria no son
utilizadas tal como las direcciones de los pórticos de I/O durante los ciclos de DMA.
Esto es posible porque las señales IOW e IOR se activan con direcciones de
memoria durante los ciclos de DMA.
30
TC(Contador de terminal)
Esta señal es activada en alto , es una señal de salida utilizada por el controlador
DMA, para indicar que ha terminado una trasferencia de datos a un bloque DMA.
POLARIZACIÓN DEL BUS
Además de las señales descritas anteriormente el bus del sistema provee de los
niveles de voltaje para la polarización de las tarjetas extemas conectadas a
cualquiera de las ranuras. (Como se pudo observar en la figura 1.2.2.1, a)
+ 5 VDC
Este nivel de polarización del sistema es habilitado en dos pines (B3, B29) ubicados
al borde del conector y, es regulado a +/- 5% (+4.75 a +5.25 VDC).
+ 12 VDC
Este nivel de polarización del sistema es habilitado en un pin (B9) ubicado al borde
del conector y, es regulado a +/- 5% (+11.4 a +12.6 VDC).
-5 VDC
Este nivel de polarización del sistema es habilitado en un pin (B5) ubicado al borde
del conector y, es regulado a +/-10% (-4.5 a -5.5 VDC).
-12VDC
Este nivel de polarización del sistema es habilitado en un pin (B12) ubicado al borde
del conector y, es regulado a +/-10% (-10.8 a -13.2 VDC).
GND (TIERRA)
El sistema provee de la señal de tierra en tres pines del conector. ( B1, B10 y B31)
31
1.3 ENLACE DE LA TARJETA AL PC
Luego de conocer la función de cada una de las señales y su posición física en
ia ranura de bus tipo ISA y, para establecer un adecuado enlace entre una tarjeta
externa y el computador personal, a continuación se realiza un estudio de los
aspectos físicos en la construcción de ia tarjeta, tales como las características
mecánicas, las dimensiones físicas estándares para la ranura de! bus tipo ISA de
8 bits; a demás, se determina la dirección de cada uno de los pórticos utilizados
y la dirección de pórtico permitida para ia conexión de una tarjeta prototipo.
1.3.1 ELCONECTOR
La mayoría de diseños de ínterfaces se hacen en base a tarjetas predefinidas que
deben ingresar en una ranura del sistema, por lo general, toda tarjeta madre de un
computador persona! posee ranuras para bus tipo ISA (de 8 bits) para la conexión de
tarjetas externas. Las ranuras o conectores para éste bus bits son capases de llevar
62 señales (31 en cada lado), las que pueden ser utilizadas por tarjetas de diseño. E!
espacio que existe entre cada ranura dentro de la tarjeta madre es de una pulgada.
Además cada una de las señales están dispuestas en los pines de la ranura, los
cuales están espaciados en un décimo de pulgada, y cada ranura puede soportar
una tarjeta con un área de aproximadamente 10.42cm *33.02cm.
El la figura 1.4 a) se indican los tamaños estándares de la tarjeta para que estos
calcen justo en las ranuras disponibles para este bus en la tarjeta madre del sistema.
32
J~hi>-• 3 L Terminales
conectar a isnuja.
0.3'- 3.2' 0.73.9'4.2'
13.I51
4.2'
03'I
0.1'
* DumensLoiifis dadas en pulgadas
Figura 1.4,a) Dimensiones normalizadas para tarjetas Upo ISA de 8 Bits
TAMAÑO DE LA TARJETA
Las dimensiones máximas de una tarjeta pueden apreciarce en la siguiente
figura1.4.a). La tarjeta debe ser construida de un materia! con un espesor mínimo
de 0.060 pulgadas para asegurar un buen contacto en el conector, además los
bordes del conector de la tarjeta experimental deben ser de buen material
conductor para tener un contacto confiable.
POTENCIA DE LA TARJETA MADRE
Hay 4 niveles de potencia permitidos en cada ranura de la tarjeta madre. En la tabla
1.4.b) se dan los niveles de tolerancia de potencia permitida para cada tarjeta
adicional, asumiendo que existe una configuración estándar.
FUENTE DC(VDC)
+ 5
-5
+ 12
-12
MAX Vdc(VDC)5.25
5.50
1ZS
13.2
MIN Vdc(VDC)4.80
4.60
11.52
10.92
Corriente (A)(Amps)
7
0,3
2
0.25
POTENCIA Corrí(Watts)
35
1.5
24
3
¡ente Tipie;(Am|0.7
0.03
0.10
0.05
Tabla 1.4.b) Niveles de potencia permitida para una tarjeta adicional
33
DESACOPLAMIENTO DE POTENCIA
Un problema común en el diseño de circuitos electrónicos es ta inapropiada
distribución y desacoplamiento de potencia. La mayoría de elementos de estos
circuitos tienen diferentes requerimientos de potencia, que dependen de la
operación que estén realizando en ese momento. Ei propósito de introducir
elementos de desacoplamiento es suministrar, la potencia requerida de un
elemento por corto tiempo. Puesto que el sistema de potencia con sus cables y
alambres añaden inductancia a la fuente, esta no puede responder ios
transitorios de potencia requeridos. Para resolver este problema al diseñar se
añaden capacitores de desacoplamiento en los puntos claves, para que estos
transitorios de potencia sean absorbidos por ellos y no por la fuente.
Para grandes y lentas fluctuaciones de potencia, un banco de capacitores son
usados para almacenar la potencia requerida. Estos capacitores de
desacoplamiento son usualmente capacitores de tantalio con capacitancias de 8
a 20 microfaradios. Estos elementos deberían ser colocados entre el nivel de
polarización y tierra, en las cercanías del conector de la tarjeta y en los bordes de
la tarjeta.
En alta frecuencia un pequeño transitorio de potencia se presenta, por lo que se
deben utilizar capacitores de desacoplamiento a alta frecuencia, estos elementos
son típicamente de tantalio en el rango de 0.1 y 0,01 microfaradios.
34
1.3.2 PÓRTICOS DEL COMPUTADOR PERSONAL
En el diseño del Computador Personal original, IBM incorporó un
direccíonamiento de 10 bits, desde los bits AO hasta A9, para un total de 1024
puertos direccionables. El mapa de los puertos esta dividido en dos partes: la
primera de ellas (512 puertos) se localiza en la tarjeta madre, mientras que la
segunda (otros 512 puertos) están orientados hacia tarjetas que se inserían en
las ranuras del computador. La tabla 1.4.2 a) muestra algunas de las direcciones
que emplean los periféricos más comunes, así como el rango de direcciones que
tenemos disponibles para el desarrollo de experimentos.
RANGO UTILIZACIÓNHexadecimal
OÜQ-QOF Chip DMA 8237A-5020-021 Chip de Interrupciones 8259A040-043 Temporizador 8253-5060-063 PPI 8255A-5080-083 Registro de página DMAOAX Registro de máscara NMIOCX ReservadoO EX Reservado100-1FF NoUtilizable2QQ-20F Control de Juegos210-217 Unidad de Expansión22Q-24F Reservado278-27F Reservado (Adaptador paralelo secundario)2FO-2F7 Reservado2F8-2FF Comunicaciones Asincrónicas300-31F Tarjetas de Prototipos320-32F Disco Duro378-37F Impresora3BO-3BF Monitor IBM Monocromo3CO-3CF Reservado3DO-3DF Color/Gráficas3EO-3F7 Reservado3FO-3F7 Unidad de Disco Flexible3F8-3FF Comunicaciones Asincrónicas.
Tabla 1.4.2.a)
35
CAPITULO I!
DISEÑO DEL HARDWARE
En el presente capítulo se hacen las consideraciones necesarias de hardware
para realizar el proyecto de tesis, especificaciones cubiertas durante el desarrollo
de la tarjeta ADAIO, la cual está compuesta básicamente por bloques funcionales
de conversión, ios que serán oportunamente detallados, dando una explicación
de las consideraciones tomadas para su diseño.
En lo que al hardware respecta, se anaüzan primeramente las señales utilizadas
por la tarjeta prototipo ADAIO, luego se hace una descripción de ia construcción
de cada uno de los bloques de conversión, revisando cada uno de los elementos
utilizados y planteando las soluciones que permitieron resolver los problemas
presentados en el transcurso del proyecto.
Al final de este capítulo se plantean todas las consideraciones previas que se
tomaron para la realización del circuito impreso.
2.1 ESPECIFICACIONES INICIALES
Como se mencionó en el capítulo I, se impjementará una tarjeta para una ranura
de extensión con bus tipo ISA, la que contiene señales suficientes y elementales,
que se encuentra en todos los Computadores Personales compatibles, logrando
de esta manera una universalidad y sobre todo una compatibilidad en hardware,
con modelos anteriores que utilicen mícroprocesadores de la familia INTEL
80x86. Para los requerimientos básicos en cuanto a software, se plantea como
36
mínimo un computador que posea el programa Windows 3.1 en modo extendido o
versiones superiores de windows.
Los pórticos analógicos tanto de salida como de entrada funcionan con voltajes
normalizados entre O y +10 VDC, el flujo de datos tanto de entrada como de
salida del Computador Personal controta el PPI, por lo que se optimizará el uso
de los diferentes pórticos por medio de software.
2.1.1 ESTUDIO DE LA INTERFAZ PROGRAMABLE
A continuación se realiza un estudio del PP! utilizado como parte fundamental del
desarrollo de la tesis y puesto que es un objetivo del presente trabajo la
aplicación del mismo, para la adquisición y emisión de datos.
DESCRIPCIÓN GENERAL
Este circuito integrado es fabricado por INTEL para utilizarse como un circuito de
soporte del microprocesador; la realidad es que ha tenido gran acogida y utilidad
en sistemas en los cuales se requiere del manejo de muchas líneas de
entrada/salida. En la figura 2.1.1.a) se muestra la distribución de pines y la
organización interna de esta pastilla, la cual contiene tres puertos paralelos
programables de entrada/salida, de ocho bits cada uno.
Líneai dealimentación
PA3 1 —PA2 2 —PA1 3 —PAO 4 —-ED 5 —-CS 6 —GND 7 —Al 8 —AO 9 —
.PC710 —Pí^ 11 —PC5 12 —PC4 13 —
PCJ 15 —Fui 16 • —PC3 17—?$ 1§—PB1 19 —PB2 20 —
V> ;
.8255-A
—40 PA4—39 PAS— 30 PA6—37 PA7—36 -WR
—34 E§6—33 DI•—32 D2— 31 D3—30 D4-—29 D5— 28 Dfi—27 D7—26 Vcc—25 PB7—24 PE6— 23 PB5—22 PB4— 21 PB3
- PAO
a. Dtetribumóx de pi
PC3- PCO
teTB7 -PBO
-CS
. Esirwcrturalnicrna
Figura 2.1.1,a) ¡nterfase Programable (PPI) 8255
37
Hay que observar que 24 de los 40 pines del 8255 son líneas de entrada/salida.
Más específicamente. PAO -PA7 corresponden al puerto A, PBO-PB7 al puerto B y
PCO-PC7 al puerto C. Las 8 líneas del puerto C se dividen en dos grupos iguales,
cada uno de 4 líneas ( PC7-PC4 y PC3-PCO) ;estos grupos de líneas pueden
trabajar en combinación con los puertos A y B o como dos puertos individuales de
4 bits.
En la figura 2.1.1.a) se puede observar que la estructura interna del PPI se
encuentra dividida en dos grupos: el A y el B, cada uno de los cuales tiene su
propio elemento de control. El grupo A está compuesto por e! puerto A y los
cuatro bits más significativos del puerto C, mientras que el grupo B esta
compuesto por el puerto B y los cuatro bits menos significativos del puerto C. El
sentido (entrada, salida o bidireccional) y la función (datos o control) de las líneas
de todos los puertos se programan durante la operación normal del dispositivo
mediante una palabra de control de 8 bits que envía la Unidad Central de
Proceso al PPI.
Internamente, el 8255 dispone de cuatro registros de ocho bits cada uno, tres de
los cuales se dedican al almacenar la información que entra o sale por los
puertos A,B y C. El cuarto se denomina registro de control, éste se dedica a
realizar las funciones de control; programando este registro se configuran los
grupos A y B, definiéndose el comportamiento de los puertos y el funcionamiento
general del dispositivo.
FUNCIONES DE LOS PINES.- Además de las 24 líneas de entrada/salida
asociadas a los puertos A,B y C, la función de las líneas restantes del 8255 se
38
puede resumir en los siguientes términos:
Vcc y GND. Líneas de polarización del circuito integrado: la fuente de
alimentación (Vcc=5V) y el punto de referencia (GND- OV)
D7 a DO. Lineas de datos, comunican el 8255 con el bus bidireccional de
datos del sistema microprocesador.
/WR(Write). Se activa en bajo, y permite que la CPU realice una operación de
escritura sobre e! PPL
/RD (Read). Se activa en bajo, y permite que la CPU realice una operación o
ciclo de lectura sobre el PPI
/CS (Chip Select). Se activa en bajo, y se destina para la activación del circuito
integrado. El 8255 se comunica con la CPU cuando CS=0 o se aisla
cuando CS=1.
RESET. Se activa en alto, inicializa el PPI y borra (sitúa en O's) todos ios
registros internos, incluyendo el de control, configurando como
entradas todas la líneas de los puertos.
AO y A1. Estas señales, en combinación con /RD y /WR seleccionan el puerto
o registro del 8255 sobre el cual se va a realizar una operación de
lectura o escritura; normalmente, se conectan a las líneas AO y A1
del bus de direcciones del sistema. La tabla 2.1.1.b) resume el
sentido de las transferencias de información que se realiza entre el
bus de datos del sistema microprocesador y los distintos registros
internos del 8255, de acuerdo con el estado lógico de las señales de
control A1, AO, /RD, /WR y /CS,
39
Transferencia de información entreCPU y el PPI 8255
A10011
0011
XX
AO0101
0101
XX
-RD0000
1111
X1
-WR1111
0000
X1
-es0000
0000
10
OPERACIÓNA => Bus de DatosB => Bus de DatosC => Bus de DatosCondición inválida
Bus de datos -> ABus de datos => BBus de datos => CBus de datos => Control
Bus de datos en Hi-ZBus de datos en Hi-Z
X- no importaTabla2.1.1.b)
El registro de control,- En el momento de aplicar potencia por primera vez ai
circuito, el 8255 se encuentra en estado de reset, por lo tanto todas las líneas de
los puertos y del bus pueden dar datos flotantes o en estado de alta impedancia
(Hi-Z), por esta razón, antes de utilizar los puertos de entrada y de salida, el
circuito integrado debe inicializarse escribiendo en el registro de control un valor
de 8 bits, denominado palabra de control, ia cual configura el funcionamiento
general del PPI, el cual a su vez admite tres modos diferentes de funcionamiento
denominados Modo O, Modo 1 y Modo 2.
En la figura 2.1.1.C) se resume la función de cada uno de los bits que componen
el registro de control. Este registro solamente puede ser escrito, es decir, no es
posible leer su contenido desde la CPU. Cuando el bit más significativo (D7) es 1,
el registro de control determina el modo de trabajo de los tres puertos según los
restantes bits. En caso de que éste bit sea cero, los restantes bits del registro de
40
control se utilizan para sacar un 1 o un O por las líneas del puerto C.
Palabra de Control
ÜT Ltó 1¿ L>4 U a L>2 1• I 1)
v-« • „
->••
/ GRUPO B\o C (irías bajo)
1 — Entrada0 = SalidaPueilo B
O^SalidaSelección de Modo
— Modo U1 = Modal
/ GRUPO A \o C (anas alto)
— Enlrada0 = Salida.Puerto A
1 — Entrada.0^ Salida.
Selección de Modo00 = Modo 001= Modo IIX = Modo 2
Bandera de modo1 — Activa
Figura 2.1.1.c) Palabra de Control
En el Modo O (entradas/salidas básicas), cualquiera de los puertos A,B y C
puede trabajar como entrada o como salida; los datos son escritos hacia o leídos
desde un puerto específico. En este modo, las entradas y salidas tienen 16
configuraciones posibles; en la figura 2.1.1-d) se ilustran dos de ellas, al igual
que las palabras de control correspondientes. En el primer caso, actúan como
entradas tanto e! pórtico Af como el pórtico C, en cambio el pórtico B actúa como
salida. En el segundo, A, B y las dos mitades de C actúan como puertos de
entrada.
Una característica importante de este modo es que las líneas en los pórticos de
salida tienen capacidad para retener el dato, hasta que se escribe un nuevo
dato, mientras que las Ifneas en los pórticos de entrada no poseen esta
41
propiedad, es decir e! dato de interés deben estar presente al momento de la
lectura del puerto.
D7 D6 D5 D4 1)3 D2 DI DO D7 Dfi D5 D4 D3 02 DI D8
1 D
07 -DO
8 0 0 0
: A
8255A niL
B
1 ü = 32H 1 B
JL* PA7 - PAO
,4 PC7 _ PC4 D7 - DO
_#-* PC3 - PCD **— *"
+-S- PB7 - PEOS
0 1 1 B
A
8255A cj
B
1 i = P3H
¿4_ PA7 - PAO
^ \T PCVI
, pr-o ppn^ ^.. . TL/J - IT'wU
¿"I
HH- PB7 - PBO8
PAyPC corno salidasPB como estradas
íb) PA,PB jPC como
Figura 2.1.1 .d) PPI 8255 configurado en modo O
En el Modo 1 (Entradas/salidas validadas), los puertos A y B pueden trabajar
como entradas o salidas, mientras las líneas del puerto C controlan la
transferencia de datos entre los periféricos y el PPI, Una parte del puerto C
(líneas PC3, PC4 y PC5) están asociadas con el puerto A, mientras que otras
(PCO, PC1 y PC2) proporcionan señales de control para el puerto B. Las líneas
no utilizadas de C (PC6 y PC7) pueden actuar como líneas I/O convencionales.
En este modo, las entradas y salidas tienen la propiedad de retener la
información
Cuando los puertos están configurados como ENTRADAS, (figura 2.1.1.e), allí la
señal /STB (Strobe o validación) sirve para cargar en los registros internos del
PPI el dato que el periférico envía hacia e) puerto A o B. Al cargarse un dato en
los puertos del PPI, se activa la señal de conformidad IBF (Input Buffer Full), la
cual índica al periférico que el buffer de entrada de datos está lleno. La CPU
42
explora periódicamente las líneas 1BF y cuando encuentra alguna activa (alta),
reconoce que en el puerto que controla hay un dato disponible. Al leer ese
puerto, las líneas IBF y STB se desactivan. Las líneas INTR se utilizan para
interrumpir la CPU cuando el puerto (A o B) dispone de información y está listo
para ser leído.
D7 D6 D5 D4 D3 D2 DI DO D7 Dti DS D4 BJ D2 DI DB
1 0 1 1 ¡1/0, ,1
PÁ6-73- Entradas .
x '* \O 1
PA4-5
0=Satíaa 0= Salida
STBa
12D — *a
NTRa. 3HTRa
ENTRADAS SALIDAS
Figura 2.1.1 .e) Programación del registro de control en el modo 1
Cuando los puertos están configurados como SALIDAS, la línea /OBF (Output
Buffer Full), es una señal que la CPU coloca en un nivel lógico bajo, indicando
que escribió un dato en el puerto correspondiente, y éste debe ser leído por el
periférico. Esta línea sólo retornará a un estado lógico alto cuando el periférico
responda colocando la línea /ACKen un estado lógico bajo, indicando que recibió
el dato. Aquí, también las líneas INTR se utilizan para interrumpir la CPU, pero
cuando eí periférico aceptó el dato. Los dos grupos pueden ser configurados
independientemente como entradas o salidas, admitiendo entonces cuatro
combinaciones diferentes.
43
En el Modo 2 ( bus bidireccional), el puerto A puede trabajar en forma
bidireccional, es decir actuar como entrada y salida de datos, mientras una parte
de las líneas del puerto C (PC3 a PC7) controlan el diálogo con los periféricos,
como se puede ver en la figura 2.1.1.e), las tres líneas restantes del puerto C
pueden actuar como líneas I/O convencionales o como líneas auxiliares del
puerto B, y éste último puede actuar en el Modo O, o en el Modo 1. En el Modo 2,
tanto las entradas como las salidas tienen cerrojo (capacidad para retener los
datos).
D7 D6 D5 D4 D3 D2 DI DO
1\ /
\o grupo B
0 = Modo O1 = Modo 3 *•
Puerto .B1 =Eutrada.<-Ü = Salida
PC 2-01 = Eniradi0 = Salida.
1/0 1/0 1/0
ED—*o
s~^
¿
f
J l
~~\ 1 PC3
PA7 - PAOsu
-fw /
— I1*}6; PC 6
i — —•— j-^j PC 4
TV*;
PC 2-0
HTEa
-GBFa
-ACKa
-STBa
•EBFa
Ifü
Figura 2.1.1.e) PPI configurado en Modo 2
De lo mencionado anteriormente, se puede determinar que para el presente
trabajo de tesis, el modo más idóneo para la programación del PPI es el modo O,
porque éste permite una gran flexibilidad en la programación para poder
seleccionar el número de entradas y salidas activas deseadas, para lo cual se
utiliza el pórtico C como líneas de control, de esta manera: las líneas del bloque
inferior del pórtico C actúan como líneas de control del pórtico de entrada
44
análogo/digital ubicado en el pórtico B y el pórtico C superior como líneas de
control del pórtico salida digital/análoga ubicado en el pórtico A.
Se ha determinado que para el desarrollo de! proyecto los registros del PPI se
configuren de la siguiente manera: a) un registro de dirección para el módulo de
salidas análogas (denominado PA) que es el registro base; b) un registro de
dirección para el módulo de entradas análogas (denominado PB) que es el
registro base más uno; c) un registro de dirección para la decodificacíón de las
diferentes entradas-salidas análogas (denominado PC), que es el registro base
más dos, y, d) un registro de control el cual ha de llevar la palabra 82H colocado
por programa de esta manera se inicializa el modo de funcionamiento de los
pórticos anteriores, este registro denominado palabra de control, es el registro
base más tres. '
2.2 REQUERIMIENTOS DE HARDWARE
A fin de determinar los requisitos para establecer un enlace entre las tarjetas
externas prototipo con el hardware del sistema a continuación se mencionará,
como trabaja el sistema de un computador compatible con pórticos I/O.
Como bien se conoce que la mayoría de elementos y adaptadores en el
Computador Personal son controlados utilizando pórticos de I/O, éstos pórticos
son direccionados mediante registros de memoria del microcontrolador. Los datos
pueden ser enviados a estos pórticos utilizando la instrucción OUT del conjunto
de instrucciones del microcontrolador, o también pueden ser leídos de estos
pórticos utilizando la instrucción IN.
La arquitectura del microcontrolador soporta un espacio de direcciones asignado
45
a pórticos de I/O desde O a 65.535 (O H a FFFF H), pero en el diseño del
computador personal no se utiliza todo el espacio direccionable (2A16),
solamente se emplean los 10 bits más bajos, de esta manera, los bits dei O al 9
son utilizados para decodificar la dirección de pórticos.
El bit 9 tiene especial significado para el direccionamiento de pórticos de I/O,
cuando este bit esta inactivo (OL), los datos de una tarjeta extema no pueden ser
leídos en el bus del sistema y, por lo tanto, se habilitan solamente los datos de
los elementos y de los pórticos que están en la tarjeta del sistema. Cuando este
bit esta activo (1L), habilita los datos de las tarjetas externas, esto significa que
de los 1024 (2A10) pórticos direccionables en el computador, los pórticos de
entrada de datos se dividen equitativamente en 512 (2A9) pórticos que deben
existir sólo en la tarjeta del sistema y 512 pórticos deben existir sólo en las
tarjetas externas.
Se debe tomar en cuenta que esta restricción no es aplicada a los pórticos de
salida, cualquiera de los 1024 pórticos direccionables pueden ser usados como
direcciones de pórticos de salida, sin embargo, las direcciones de pórticos de
salida usados en la tarjeta del sistema no deberán ser reproducidas en las
tarjetas externas.
En la figura 2.2.1, se ilustra como se utiliza en el computador el direccinamiento
de pórticos:
46
19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Define 512 direcciones de pórticos
Utilizado para indicar, si ios pórticos están en latarjeta del sistema o en tarjetas externas.
Utilizados en las instrucciones IN y OUT, pero no en el PC.
No son utilizados para el díreccionamientos de pórticos en la arquitectura del8088.
Figura 2.2.1
Las direcciones de pórticos de I / O puede ser dividido en dos partes. La primera
parte es el espacio de direcciones hexadecimal de 0000 a 01FFT esta parte
reside en la tarjeta del sistema, estas direcciones de pórticos son utilizados para
direccionar elementos integrados en la tarjeta del sistema. La segunda parte de
las direcciones de pórticos, es el espacio de direcciones hexadecimal de 0200 a
Q3FF, estos espacios de direcciones son utilizados para la decodifícactón de
pórticos sobre el bus del sistema y habilitar las tarjetas externas.
De lo mencionado anteriormente se puede determinar que para realizar un enlace
entre las señales utilizadas por el computador personal y una tarjeta externa se
tiene que realizar un adecuado direccionamiento de los pórticos de I/O para lo
cual se debe construir un circuito de decodificación tomando en cuenta que la
dirección asignada a tarjetas externas prototipo esta dada apartir de la 300H a
31FH, como se mencionó en el capítulo I (acápite 1.4.2).
47
2.3 SEÑALES Y DIRECCIONES UTILIZADAS POR LA TARJETA ADAIO
Las señales disponibles en las ranuras de expansión con bus tipo ISA de ocho
bits para tarjetas de extensión del computador personal son 62, de las cuales la
tarjeta ADAIO utiliza las señales indicadas en la tabla 2.3.
Conectorbus ISA (#)
1234567891011121314
15 a 21
22232425262728293031
Tipo
I / Oi /OI /OI /OI/OI / OI/OI / O
o
I /OI /OI /OÍ /OI /OI /OI /OI /OI /OI /O
A (Lado deComponentes)
Dato D7Dato D6Dato D5Dato D4Dato D3Dato D2Dato D1
Dato DO (LSB)Señal no Usada
AEN
Señales noUsadas
Dirección A9Dirección A8Dirección A7Dirección ASDirección A5Dirección A4Dirección A3Dirección A2Dirección A1Dirección AO
Tipo
__
O—
—
_
—
—
Oo
—
—
B (Lado deSueldas)
GNDRESET DRV
+ 5VDC
-5VDC
-12VDC
+ 12VDCGND
-!OW-IOR
+ 5VDC
GNDTabla 2.3.
2.4 DESCRIPCIÓN DEL HARDWARE
El proyecto de la tarjeta ADAIO tiene como bloques funcionales, básicamente 3,
(figura 2.4) estos son: a) Bloque de decodificación de direcciones, b) Bloque de
Conversión Digital/Análoga (de salidas), c) Bloque de Conversión Análoga/Digital
48
(de entradas); pero en el transcurso del proyecto se ha desarrollado la
implementación de un nuevo bloque, el cual es una ampliación de pórticos
digitales bidireccionales (véase Capitulo V, conclusiones y recomendaciones)
DE DATO:
BusDirecciones
Bloque deDecodifíca-ción.
PPI
FDEHTESPPI
E COHTROL
— , I IJ 1V V
PA
PB
PCnrpl PCnif
J l II
1• 1>
Cojiversión
Digital/Análoga, Anafogp
11i
II
— ji — Convexñózi v-Acó;
PA
PS
PC
f Conhol 1
EanuradelPC
Figura 2.4. Diagrama de Bloques de la tarjeta ADAIO
2.4.1 DESCRIPCIÓN DEL DISEÑO
Como se puede apreciar, la parte modular del proyecto es el PPI y, por la
descripción anterior también se observa que la tarjeta tiene muy definidos los
bloques de decodificación, de entradas análogas y de salidas análogas.
Cave mencionar que el PPI utilizado posee 4 registros internos de 8 bits y se lo
programa en modo cero, por lo tanto, todos los módulos deberán tener una
precisión de 8 bits.
Con estos antecedentes se procede a la descripción detallada de cada uno de los
bloques:
49
2.4.1.1 BLOQUE DE DECODIFICACION
Se utiliza un arreglo de decodificación seleccionable por bloques de dirección,
por medio de los puentes (J1, J2) como se puede apreciar en la figura 2.4.1,1 .a)
, de esta manera se puede colocar ia tarjeta en cualquier dirección dentro del
bloque de direcciones (300H a 31FH).
-WDC >
GMDfl2WDCÍ
«VDC
Ü & íí a
jqi J1_
I (Si O"
ara bU30 03
J2 J1'flpl lí'2HÍ*
J2 J1
300 H
J2 J1
3LOH
308 H
J2 Jl
ll3L8H
Figura 2.4.1.1.a) Colocación de puentes en J1, J2 para elseteode dirección base
Este arreglo de decodificación utiliza las señales de dirección desde la AO a la
A9, señales que están localizadas físicamente en las posiciones A31 a A22,
respectivamente en la ranura de expansión de todo computador personal
compatible utilizado para el efecto. En la tabla 2.4.1.1.a), se observan las
posibles direcciones base que puede ocupar la tarjeta de experimentación
ADAIO.
A9
1
1
1
1
A8
1
1
1
1
A7
0
0
0
0
A6
0
0
0
0
A5
0
0
0
0
A4
J1
0
0
11
A3J20
1
0
1
A2
0
0
0
0
A1
0
0
0
0
AO
0
0
0
0
Dirección Base delPPI (HEX)
300
308
310
318Tabla 2.4.1.1.a) Direcciones posibles de para la tarjeta ADAIO
En la decodificación se utilizan inversores para las señales desde la A9 a la AO,
de esta forma (figura 2.4.1.1 .b):
50
Las señales A8 y A9 van conectadas directamente a dos entradas de una
compuerta lógica NAND de 8 entradas;
Las señales A7, A6 y A5 van conectadas a la compuerta anterior por
medio de inversores;
En cuanto a las señales A4 y A3 se utilizan para seleccionar el bloque
direccionable, selección realizada manualmente por medio de jumpers,
también van conectadas a la compuerta NAND, el resultado de una buena
combinación (dirección válida) de las señales anteriores da un nivel lógico
bajo;
Señal que se combina (se suma), por medio de una compuerta OR, con la
señal A2;
El resultado de la combinación anterior con la señal habilitadora AEN
determina una señal válida (OL), para la activación del respectivo PPi, el
cual funcionará cuando la señal Chip Selec este en nivel lógico Bajo (-
CS=0);
Las señales AO y A1 van ligados directamente ai PPI, pues este utiliza 4
direcciones, las que sirven para direccionar sus registros internos, siendo
la dirección base la dirección asignada al Pórtico A (PA), la dirección base
+ 1 asignada al pórtico B (PB) , la dirección base + 2 asignada al pórtico C
(PC) y la dirección base + 3 asignada a la palabra de control, éste registro
es sólo de escritura más no de lectura y en éste se programa el modo de
funcionamiento del PPI utilizado.
51
2.4.1.2
Figura 2.4.1.1 .ti) Bloque de direccionamrento de la tarjeta ADAiO
SEÑALES DEL PPI
En cuanto a las señales del PPI utilizadas en el proyecto, como se puede ver en
la figura anterior, se conectan directamente de la señal del RESET de ía ranura al
RESET del PPI. Las señales /IOWR y 7IORD se conectan respectivamente en ios
pines indicados en el PPI, La señal habiiitadora para el inicio de funcionamiento
es la del pin /CS, !a cual se da cuando existe una dirección válida. El bus de
datos D7 a DO localizado en las posiciones A2 a A9 de la ranura se conecta a
través de un buffer bidireccíonal (74LS245) al bus de datos del PPI,
correspondiendo DOT a D7T a los pines 34 a 27 respectivamente, con la finalidad
de dar mayor consistencia y seguridad a las señales de los datos, evitando de
esta manera la pérdida de información,
En cuanto a las señales de control interno para los demás bloques, se utilizan las
señales del pórtico C (PC), las cugles serán activadas por medio de software, de
52
la siguiente manera: del bloque superior del pórtico C (PC) las señales PC4, PC5
y PC6 controlarán la activación y seleccionarán la señal de salida análoga que se
estará enviando al PA; es decir, enviará las señales al decodifícador del bloque
de salida digital/análoga. El bloque inferior del pórtico C (PC), es decir las
señales PCO, PC1 y PC2 serán las líneas de control del decodifícador interno que
tiene el ADC0808 utilizado como elemento principal del bloque de entrada
análogo/digital, como se puede observar en el diagrama esquemático total de la
tarjeta (Anexo 1).
El PPl será programado en modo cero, esto es, seteado por medio de software,
escribiendo el número 82H en la palabra de control, de tal manera que el PA
actúe como pórtico de salida, PB como pórtico de entrada y el PC tanto el bloque
inferior como el superior actúen como líneas de control de los bloques internos.
Se estableció éste modo de programación porque ofrece la gran ventaja de que
en este modo todas las salidas internamente tienen un cerrojo o latch.
2.4.1.3 BLOQUE DE CONVERSIÓN D/A
En el gráfico de la figura 2.4.1.3 se puede ver que para la construcción deí bloque
de conversión digital análoga se utilizó el conversor DAC0830 en conjunción con
un amplificador operacional LM358 que funciona como convertidor de corriente a
voltaje; la señal resultante de esta conversión se la envía a un demultiplexer
análogo 4051 (de 1 a 8), el cual se encarga de enviar la señal análoga a la
respectiva salida dependiendo de la decodificación planteada en las señales
habilitadoras.
Como el voltaje de referencia para el convertidor es de + 5VDC y, se desea una
53
señal análoga de salida de +10VDC, entonces cada señal análoga que saie del
multiplexer va a un amplificador no inversor con ganancia dos el cual duplica la
señal de salida análoga, cumpliendo de esta manera con uno de los objetivos
planteados.
Existen S"bloqoes de estos
SalidascUYol.ia.ieAlíalo gp
VOO a TO7
IHH
Lineas de control para salidas análogas
izfr Al módulo da conversión. A/D
=^- Líneas de control para, entradas análogas
Figura 2.4.1.3 Diagrama del bloque de salida conversión D/A
A continuación se da una descripción detallada de los elementos utilizados en
este bloque, y se explican las causas por la que se utilizó cada uno de los
elementos de este bloque.
CONVERSOR DIGITAL ANALÓGICO (DACG830), DE 8 BITS
De las hojas técnicas del convertidor DAC0830 (Ver anexos de hojas de datos),
se determinó que éste circuito integrado es un conversor digital-análogo de 8 bits
con doble buffer, que permite enviar la salida de voltaje correspondiente a una
palabra digital, mientras sostiene la próxima palabra digital, y esto permite la
simultánea actualización de cualquier número de conversiones.
Las características principales son:
54
» Doble buffer para un flujo sostenido de datos digitales.
• Interface directo para todos los microprocesadores populares.
• Líneaiídad específica con cero a plena escala.
• Puede operar "solo" sin microporcesador si así fuese el diseño.
En cuanto a los pines utilizados por el convertidor se tiene:
-CS :Chip Select (Se activa en bajo), El -CS en combinación con el ILE
habilitará el -WR1
ILE :lnput Latch Enable. (Se activa en alto)
-I/VR1 :Write 1. Se activa en bajo siendo usado para cargar los bits de los
datos de entrada digital en el latch de entrada. Los datos en el latch
de entrada son retenidos cuando -WR1 está en alto. Para actualizar
el latch de entrada -CS y -WR1 deben estar en bajo mientras ILE
está en alto.
-WR2 :Write 2. (Se activa en bajo), esta señal en combinación con -XFER,
causa que los 8 bits de datos los cuales son habilitados en el latch
de entrada se transfieran ai registro de conversión.
-XFER rTransfer control signal (Se activa en bajo). Es señal de
transferencia de control que habilitará -WR2.
DIO-DI7 :Entradas digitales donde, DIO es el bit menos significativo(LSB) y
DI7 el bit más significativo (MSB),
loutl :La corriente máxima que ocurre para un código digital de todos
unos en el registro de conversión y es cero para todos los ceros en
el registro de control.
55
Rfb :Resistencia de realimentación, se encuentra dentro de la pastilla
para utilizarla como lazo de realimentación, para un amplificador
operacíonal externo, e! cual es usado para proveer un voltaje de
salida para el conversón La resistencia interna de esta pastilla
siempre debería ser utilizada, en vez de una resistencia externa.
Vref ¡Voltaje de referencia de entrada. Esta entrada conecta un voltaje de
precisión externo de referencia. Puede ser seleccionado entre +10 a
-10V.
Este conversor es muy utilizado en la industria de los mícroprocesadores, ya que
e! doble buffer permite la flexibilidad para el mayor número de controles, pues los
20 pines de este elemento también son compatibles con el conversor DAC1230
de 12 bits, lo cua! puede permitir ampliar la resolución.
Consideraciones Digitales.- Entre las razones más importantes por las que se
escogió esta pastilla integrada para la conversión Digitan-Análoga, son:
a) Cualquier sistema de conversión puede sostener simultáneamente los
datos en un registro y la próxima palabra de datos en el registro de
entrada, esto permite una rápida actualización a la salida del conversor,
b) Lo más importante es que el doble-buffer permite cualquier número de
conversores en un sistema, para ser actualizados en sus nuevas salidas
análogas simultáneamente, esto mediante una señal común (strobe).
Además se tomó en consideración para su implementación, que el flujo de
conversión sea continuo; es decir que el microconversor sea fácilmente
configurado para permitir una salida continua análoga que refleje el estado de
56
una entrada digital. Siendo ésta ia aplicación más utilizada donde el conversor es
usado en un lazo de retroalimentación continuo, esto se logra simplemente
puenteando a tierra los pines correspondientes a las señales -CS, -WR1, -WR2 y
-XFER, a demás el pin ILE a alto; todo esto permite a ambos registros internos
aplicar a la entrada digital datos, y directamente afectara la salida del conversor
análogo.
Consideraciones análogas.- Como el principal propósito de cualquier conversor
digital analógico es proveer una exacta cantidad de salida análoga, la cual
representa a la palabra digital, en el caso del DAC0830, la salida 1OUT1 es una
corriente directamente proporcional al producto de aplicar un voltaje de referencia
por la correspondiente palabra digital. Para una aplicación versátil una segunda
salida es proporcional al complemento de la entrada digital. Básicamente:
IOUT1 = [ VREF /15 KQ] * [ Entrada digital / 256 ]
Donde la entrada digital es decimal (base 10), equivalente a aplicar una palabra
de 8 bits (O a 255). VREF es el voltaje al pin 8 y 15 KH es el valor normal de la
resistencia interna Rfb.
Por todo lo mencionado anteriormente se ha utilizado este conversor resaltando
su beneficio para la aplicación en curso por que permite la simultánea
actualización de cualquier número de conversiones, posee un doble buffer para
un flujo sostenido de datos digitales, y además puede operar "solo" sin
microporcesador ya que así se plantea en este diseño.
Consideraciones del Amplificador Qperacional - El amplificador utilizado
deberá tener capacidad de voltaje offset nula y, un bajo valor de corriente de
57
polarización (bias) de entrada, tan bajo como sea posible. El producto de esta
corriente por la resistencia de realimentación produce un error en la salida del
voltaje, error que puede ser significante en medidas bajas de voltaje.
Por lo tanto, se ha seleccionado el operacional LM358, el cual es un integrado
que contiene dos operacionaíes, con compensación de frecuencia interna, puede
funcionar con diferentes rangos de alimentación, la entrada de corriente de
polarización (bias) es baja (45nAoc) y a demás compensada con la temperatura;
es compatible con señales lógicas, baja entrada de voltaje offset (2m VDC) y baja
corriente offset (5n ADC)
En cuanto al Multíplexer/Demultiplexer de 8 canales analógicos, posee swiches
análogos los cuales tienen baja impedancia en el encendido y muy baja fuga de
corriente en el apagado; el control de las señales análogas puede ser activado
por señales digitales.
Esta pastilla está polarizada en la tarjeta de la siguiente manera: VDD=12V,
Vss=OV y VEE--5V, con lo cual se consigue que las salidas análogas se
encuentren en el rango de O a 5V, las cuales pueden ser seleccionadas por
señales digitales. Cuando un "1W lógico está presente en la entrada habilitadora
(iNH pin 6) todos los canales están apagados.
El CD4051BM es un simple demultiplexer/multiplexer de 8 canales, que tiene 3
entradas de control binario A,B,C y una entrada habilitadora; las tres señales
digitales seleccionan uno de los ocho canales de tal manera que la entrada
seleccionada se conecte a su salida respectiva.
En la figura 2.4.1.3 se puede observar que para conseguir un voltaje de salida de
58
+10VDC, a cada canal de salida análoga se ha conectado un amplificador no
inversor con ganancia dos, para lo cual se utiliza un circuito integrado LM324, ya
que éste contiene 4 operacionales, ios que tienen alta ganancia, compensación
interna de frecuencia, baja fuga de corriente de fuente la que es independiente
del voltaje suministrado, elimina la necesidad de dos fuentes ya que se polariza a
los operacionafes con +12VDC, esto se realiza para eliminar ia salida de voltajes
negativos precautelando a dispositivos externos conectados a esta tarjeta,
2.4.1.4 BLOQUE DE CONVERCION A/D
Este bloque de conversión utiliza el pórtico B del PPI el cual funciona como
entradas de datos. Las señales del PPI se unen al conversor ADC0808 por medio
de un buffer unidireccional 74LS244 con el fin de darle mayor consistencia a los
datos de entrada. El conversor ADC0808 de 8 bits, opera en modo de conversión
continua. Se escogió este conversor por poseer 8 entradas análogas, las que,
por medio de un multiplexer interno se las puede seleccionar una a una por
software, por medio de las líneas del pórtico C (bloque inferior). Las señales
análogas que recibe el conversor tienen como referencia +5VDC pero, como se
desea señales de entrada de +10VDC , entonces, previa a cada entrada se
coloca un divisor de tensión. Además, para precautelar todo este bloque se utiliza
un diodo zener de +10V por cada señal de entrada, la que no debe ser mayor al
voltaje zener, pues en caso contrario la señal será recortada a+10VDC.
A continuación se da una descripción de los elementos que conforman este
bloque.
59
Como el elemento principal del bloque de conversión A/D se tiene al circuito
integrado ADCQ808, que es un componente de adquisición de datos con la
siguientes características:
• Elemento de 8 bits, multiplexado a 8 canales;
• Tiene un tiempo típico de conversión de IQQps
• Ofrece un fácil acople con mícroprocesadores, provisto por el latch y un
decodificador multiplexado;
• Además, ofrece alta velocidad, alta precisión, mínima dependencia de la
temperatura, y consumo de mínima potencia
• Sus salidas se ajustan a los niveles de voltaje de lógica TTL
• Es un conversor análogo de 8 bits
Por último, en la figura 2.4.1.4.a) se puede observar la disposición interna de este
circuito integrado, en donde se puede apreciar que éste, fue diseñado para dar
una exacta conversión en un amplio rango de temperaturas.
La conversión continua puede ser cumplida conectando el pin de fin de
conversión (EOC salida) con el pin de inicio de conversión (START entrada).Si se
utiliza en este modo un pulso de conversión externa, se debería aplicar después
de aplicada la alimentación.
En la figura 2.4.1.4.b) podemos observar el diagrama del bloque de conversión
análoga/digital.
60
STÁRT CLOCKi IS-Brts A/D T T "1
3 Entradas
Análogas
del Lalch
8 Canales
Analógicas
uLaicHde
direcciones y
decodifícadoi
Comparado*
|
1 1
Control& Temporisación.
-H*
-n
lL-
.S.Á.R.
1
1
1
i1
1I K!"->
>
Áibol de Sw-íídi.
riii
Buffer
Lacliaío de
salida de —ires
•oslados
/\n r '256«»toñ-
— — — — _ — . .
iiii
_i
3 Biís
de Salida
Vcc GtTD Reí;-*-) ¿fl» Salida (OE)
Figura 2.4-1.4.a) Diagrama de bloques del conversón A/D
DserterÍOY ^F^TT5f&?P^F YOO - VO7
I- «1*31 »4-yStao± ^ALE EOJ
\3
C Serial de reloj al cairretsor500 Khs.
Figura 2.4.1.4.b) Diagrama esquemático del bloque de conversión A/D
Reloj del conversor: En cuanto a la señal de reloj para el conversón ADC0808,
se utiliza una compuerta lógica NAND (74LS04), conectada como se indica en ta
figura anterior (figura 2.4.1,4.b), la frecuencia del reloj será de 500 Mhz, para lo
61
cual se necesita dos resistencias de 1KO y un condensador de 820pF.
2.5. DISPOSICIÓN DE ELEMENTOS EN LA TARJETA.
Para plasmar todo el diseño anteriormente citado, luego de realizar el diagrama
esquemático (Anexo A1) en ORCAD (archivo ADAIO.SCH), se realizó la
generación del archivo ADAIO.NET necesario para el enlace entre el diseño
esquemático y el diseño de circuitos impresos, archivo denominado ADAIO.PCB,
realizado en TANGO.
Las consideraciones para la disposición física de los elementos fueron :
• Eí buffer bidireccíonal 74LS245, así como los circuitos integrados que
conforman el bloque de decodificación, deben estar dispuestos físicamente lo
más cerca a la ranura de expansión en las líneas correspondientes a datos y
direcciones, respectivamente.
• Que los Circuitos de Interfaz Periférico Programable estén lo más cerca
posible uno respecto a otro, ya que éstos comparten tanto líneas de control
como, líneas de datos
• Los bloques de entradas análogas y de protección deben estar colocados lo
más lejos a la ranura de expansión, para evitar daños si hubiese
sobrecalentamiento por el ingreso de voltajes superiores a +10VDC.
• Los circuitos integrados que conforman el bloque de salidas análogas deben
estar colocados ío más cerca posible entre ellos, pues estos comparten líneas
de polarización y de decodificación.
Todas estas consideraciones se toman con el fin de optimizar el espacio y por
ende el tamaño total de la tarjeta. Cabe anotar que la tarjeta fue ruteada a doble
62
lado (los diagramas de este ruteo se lo puede ver en el-anexo A2).
La tarjeta fue implementada con un ancho en la pista (track) de 10 unidades (1
unidad equivale a 1 milésima de pulgada), con agujero metalizado, y en fibra de
vidrio la cual es resistente a altas temperatusas., tecnología no vdisponible todavía
en el Ecuador, razón por la cual su implemeníacíón física se la realizó en
Colombia.
63
CAPITULO III\O DEL SOFTWARE
Como se puede apreciar en el capítulo anterior el diseño del hardware va ligado
al diseño de software y, dependiendo de éste su posterior aplicación. En el
presente capítulo se presentan programas básicos que se han desarrollado
tomando en cuenta las consideraciones necesarias para demostrar el
funcionamiento del presente proyecto de tesis.
3.1 ESPECIFICACIÓN Y SELECCIÓN DEL PROGRAMA.
Debido a que la tarjeta ADAIO es de tipo universal, es decir, compatible con
cualquier computador tipo XT/AT/286/.../586. Se han desarrollado programas
básicos en diferentes lenguajes, tales como : Qbasic, Visual Basic, Lab View.
Se han seleccionado estos lenguajes de programación, ya que cada uno de éstos
tiene una lógica de funcionamiento diferente, así por ejemplo:
o „ En un lenguaje de programación convencional, tal como ei Qbasic, se
realizan los programas de tal manera que se ejecuten secuencialmente,
bien sea en forma descendente o estructurada, siguiendo el flujo dado por
las sentencias de control previamente escritas en el código fuente.
Se seleccionó este lenguaje de programación por ser uno de ios lenguajes
universales básicos y, además por ser:
• Un lenguaje de programación que puede ejecutarse en cualquier tipo de
64
computador PC compatible, desde el más básico como lo es un XT de
8MHz ; por ende sus requerimientos son : memoria de~1Mb en RAM; y
espacio libre en disco duro de 1.2Mby;
• Tiene instrucciones tales como IN, OUT, etc., que permiten el acceso
directo a localidades de memoria, necesarios para el manejo de
elementos periféricos.
• Existen varios proyectos realizados en este lenguaje, lo cual permite un
rápido acoplamiento y utilización de librerías existentes para las
aplicaciones deseadas.
b.- En Visual Basic (V 3.0), la lógica de flujo es totalmente, distinta, y se
compone de diversas porciones de código que son activadas de acuerdo a
un determinado suceso. Estos sucesos ocurren en la pantalla según
decisión del usuario, es decir, el programa está monitoreando
constantemente las acciones sobre la pantalla. De esta forma el programa
no sigue la secuencia fija de control, sino la secuencia depende de las
decisiones del usuario.
Se seleccionó este lenguaje de programación por ser en la actualidad uno
de los lenguajes de entorno visual más difundidos, mediante el cual se
puede realizar aplicaciones comerciales y, además por que:
• Este lenguaje de programación puede ejecutarse en un computador con
medianas características tales como: Microprocesador 486 de 66MHz,
65
con 12Mby libres en disco duro y 4 Mb de memoria RAM.
• Tiene una gran librería de ejemplos, los cuales hacen más fácil su
aprendizaje, y por ende es apto para toda persona que guste de la
programación aplicada a la electrónica.
• Este lenguaje de programación no tiene instrucciones tales como IN o
OUT, propias para el manejo de localidades de memoria que permitan el
acceso a la programación de elementos periféricos pero, permite
incorporar Librerías de Enlace Dinámico DLL (Dynamic-link library) (Ver
numeral 3.2.2 LIBRERÍA DE ENLACE DINÁMICO (DLL))
c.- En Lab View (V 3.1.1), se utiliza un lenguaje de programación gráfica
(lenguaje G), cuya lógica de funcionamiento es crear programas en
diagramas de bloque. Lab View es un programa de desarrollo de
aplicaciones, para lo cual tiene librerías y funciones designada
específicamente para la adquisición de datos e instrumentos de control,
además éste lenguaje de programación promueve el concepto de
programación modular.
Se seleccionó este lenguaje de programación por ser en la actualidad uno
de los lenguajes de instrumentación aplicados al control, mediante el cual se
puede realizar aplicaciones dedicadas y, además por que:
» Es un programa que puede ejecutarse en cualquier máquina con buenas
características tales como: Microprocesador 486 a 100mhz o superior, 8
66
Mby en memoria RAM y capacidad libre en disco de 40Mb (mínimo).
• Tiene gran librería de ejemplos dedicados a la adquisición de datos.
» Tiene Instrucciones de manejo de pórticos, lo cual hace posible la
utilización de este lenguaje con cualquier tarjeta universal para el control
de elementos periféricos.
Por todo lo mencionado anteriormente se han desarrollado pequeños programas
en cada uno de estos lenguajes con la finalidad de demostrar la funcionalidad y
el acoplamiento de ia tarjeta ADAIO a cualquier computador, sin importar la lógica
de programación.
A continuación se hará referencia a la comunicación ó enlace entre el hardware
(circuitería electrónica) de la tarjeta con el software (programas) que prueban el
correcto funcionamiento de la tarjeta.
3.2 PROGRAMAS DE COMUNICACIÓN
Después de haber diseñado el hardware de la Tarjeta ADAIO se deben realizar
programas básicos que puedan servir como manejadoras (drivers) ó como
programas de referencia para posteriores aplicaciones. Estas aplicaciones
dependerán en su mayor grado de la utilización particular que se de a la tarjeta
ADAIO, por ende los programas deberán ser dedicados.
Antes de indicar el diseño y funcionamiento de cada uno de los programas se
hará referencia a las instrucciones, librerías o bloques de programas (lenguaje
G), utilizados para establecer la comunicación entre la tarjeta y eí programa.
3.2.1 INSTRUCCIONES PARA EL MANEJO DE PÓRTICOS I/O
En todo lenguaje de programación convencional existen instrucciones o funciones
que permiten ingresar o sacar datos a través de los puertos. Así en Qbasic se
tiene las siguientes instrucciones INP o OUT utilizadas de la siguiente manera:
X=INP(Port)
Esta instrucción permite almacenaren la variable "X" el resultado de leer la
información existente en ei puerto "Port"; por lo tanto, esta instrucción se
utiliza para leer el pórtico de entrada. La variable "X" puede ser tratada
internamente para poder luego ser graficada, tabulada, etc.
OUT (Port), Y
Esta instrucción permite sacar datos por el puerto "Porf, los datos de
salida están ubicados en la variable Y, en este caso primero se tiene que
tratar la variable que se desee enviar al puerto.
3.2.2 LIBRERÍA DE ENLACE DINÁMICO (DLL)
Una de las desventajas de Visual Basic (V 3.0), es que éste lenguaje de
programación de entorno visual no tiene instrucciones que manejan directamente
la información de los puertos, por lo tanto, para resolver este problema se
compiló una librería de enlace dinámico realizada en Turbo C++ para Windows
(V 3.0). Esta librería se la denominó "PPI.DLL", cuyo listado es:
68
/ l-k ******* afc**-A- ****************************** ***********
// Realizado por CARLOS G. PILLAJO A.// All CopyRightCGPA, 1997;y**X*A*'******AA'***A-ft*A*-^
#¡nciude <wíndows.h>#include <dos.h>
#def¡ne EXPQRTAPI Jar_pascal _export"v_loadds
FUNCIÓN:LibMain(HANDLE, WORD, WORD, LPSTR)
PROPOSITO:Llamada por LIBENTRY, la cual es llamadapor Windows cuando ía DLL es cargada
*********** A * * *.* •*•* ********* A * A* ****** *******•»* A ** ******•*/:
int EXPORTAPI übMain( HANDLE hiyiodule,WORD wDataSég;,WORD cbHeapSize,,LPSTR IpszCmdüne)
hModule;wDataSeg;cbHeapSize;IpszCmdLine;return 1;
I A
Procedimiento para la salida de laLibrería de Enlace de Datos (DLL)
•***/
VOID EXPORTAPI WEP (int bSystemExít){bSystemExit;
FUNCIONES DE ESCRITURA - LECTURA DE PÓRTICOS*/
void EXPORTAPI WriteppKintxjnty){
outportb(x,y);}
int EXPORTAPI Readppi(intx)
69
int valor;valor-inportb(x);return(valor);
Mediante esta librería Visual Basic puede accesar a la información de los pórticos
tanto en operaciones de escritura como de lectura. Cabe recordar que la
operación "Writeppi" es una subrrutína que envía un byte a un puerto de salida,
no regresando un valor al programa, en cambio "Readppi" es una función, debido
a que regresa un byte desde un puerto de entrada. (Véase Figura 3.2. 1)
Para que Visual Basic establezca comunicación con las instrucciones dadas en la
librería dinámica se deberá guardar este archivo "PPI.DLL" en la dirección dada
por el programa en el módulo destinado para asignación de variables
(MODULE1.BAS), de esta manera:
Declare Sub Writeppi Lib "C:\ADAiO\PPI.DLL" (ByVal x As ínteger, ByVal y As Integer)
Declare Function Readppi L!b "C:\ADAIO\PPl.DLL" (ByVal x As integer) As Integer
Figura 3.2. 1
3.2.3 BLOQUE DE PROGRAMA DE COMUNICACIÓN (Lenguaje G)
En Lab View existen bloques de programa que sirven para el manejo de puertos
de, estos bloques son accesibles por el usuario fácilmente, sólo se deben
localizar en la ventana de diagrama del VI en el menú (figura 3.2.3.a).
70
File Edil Opérate ¿ontrals &iriihivrs Text
(AlfflS:¿£¿ Untitled 1 Diagiam
£ile Edit jOperaffe Functieiis Windows- Text Hdp
Figura 3.2.3,a Pantallas principales de Lab. View
En la opción "Funtions", existen las funciones con las cuales se puede programar
el VI, se abre esta opción y se debe ingresar a ta opción "Utility" y dentro de esta
a "System" en donde se encuentran los bloques Outvi o In.vi, como se puede
visualizar en la figura 3.2.3.b
w,.:</^"'*r'-; >**- /;;; Anai^is^y/^ ',* ,¿
Figura 3.2.3.b Menú de ia opción "Funtion" en Lab. View
71
Luego de haber revisado brevemente las instrucciones, librerías y bloques de
programas que serán utilizados para el diseño del software, a continuación se
describirá brevemente cada uno de los programas realizados.
3.3 PROGRAMAS EN ENTORNO VISUAL
La tarjeta ADA10 es una tarjeta ampliadora de pórticos, la cual da pórticos
análogos y digitales tanto de entrada como de salida , para el funcionamiento de
elementos externos, por lo tanto, esta tarjeta es de uso general limitada sólo por
la imaginación del programados Con el fin de demostrar !a compatibilidad y la
universalidad de esta tarjeta se han desarrollado los siguientes programas, que
prueban su funcionamiento, los cuales pueden ser utilizados en proyectos
posteriores.
3.3.1 PROGRAMA EN QBASIC,
El programa que puede servir como base para posteriores aplicaciones es el
denominado "PPI.BAS", el cual se encuentra en el disquete adjunto a la tarjeta,
las características principales de este programa son: (Ver anexo E flujo del
programa PPI.BAS)
• Posee menús en pantalla ío cual permite un fácil acceso.
• Navegación y puesta en funcionamiento ya sea de adquisición o emisión de
datos por medio teclas habilitadoras.
• Ayuda en línea de cada una de las acciones.
72
Este programa realiza las siguientes funciones secuenciales dependiendo en el
menú que se encuentre.
a) En el menú principal se puede escoger ya sea: "SISTEMA, PÓRTICOS,
GRÁFICOS, FUNCIONES, DIGITALES , y AYUDA.
b) Dentro del menú SISTEMA se tiene: -Acceso al DOS dentro de éste se
puede escoger si desea aplicar un comando de DOS o si se desea salir
temporalmente al Sistema Qperativo;-Acerca del Programa, al escoger esta
opción se muestra una pantalla de información;-Continuar, esta opción es
habilitada cuando la ejecución del programa ha sido parada;-Salir, sirve
para abandonar la ejecución del programa.
c) Dentro de menú PÓRTICOS se tienen los pórticos análogos que pueden ser
habilitados uno a la vez ya sea pórticos análogos de entrada o pórticos
análogos de salida, y dentro de cada uno de estos se puede escoger el
pórtico deseado que va desde el O al 7 tanto para entradas como para
salidas.
d) Dentro del menú GRÁFICOS se tiene que elegir si se quiere graficar la
adquisición de datos o la generación de datos, siendo la emisión de datos
secuencíal en base a las teclas cursoras deposición.
e) Dentro del menú FUNCIONES se tienen las opciones de escala, la cual
setea el tiempo de adquisición dadas en divisiones por segundo (dív/seg), y
grillas la cual setea si el gráfico es visto con grillas o no.
73
f) En el menú DIGITALES, se puede escoger si se desea realizar una prueba
de éstos pórticos como entradas o salidas.
g) En el menú AYUDA, se tiene una referencia rápida de las diferentes
funciones antes descritas.
3.3.2 PROGRAMA EN VISUAL BASIC (V3.0)
Siendo este uno de los paquetes utilizados en la actualidad y de uso comercial
para todo tipo de aplicaciones se ha ímplementado un programa que al igual que
el anterior puede servir como base para posteriores aplicaciones en cuanto a la
adquisición y emisión de datos se refiere. Esto se lo puede hacer gracias a que
ya se ha superado e Ímplementado un enlace entre éste programa y ei
direccionamíento de datos a registros de memoria, (Véase e! acápite 3.2.2).
El programa denominado ADAIO.MAK, el cual se encuentra en el disquete
adjunto a la tarjeta, (ver anexo E flujo del programa ADAIO.MAK) posee las
siguientes características principales:
• Tiene iconos que activan las diferentes funciones como son: configuración
inicial, la adquisición, la emisión de señales análogas, pruebas de pórticos
digitales, información del sistema e icono de salida lo cual permite un fácil
acceso.
• Utiliza una forma MDI (Interface de Múltiple Documento), la cual actúa como
la forma patrón para toda la aplicación.
74
Posee enlace con archivos ayuda (*.hlp).
Este programa realiza las siguientes funciones dependiendo del suceso activado:
b)
d)
ICONO DE INICIO, al realizar un click en éste icono se da comienzo
a la configuración de la dirección base la cual servirá para ei buen
funcionamiento.
ICONO DE SALIDAS ANÁLOGAS, representado por una pantalla y
flecha de salida; al realizar un click en este icono se abre una forma hija en
la cual se presenta ei chequeo de cual de las señales de salida se desea
activar {una a la vez); a demás se puede escoger el tipo de onda a enviar, y
se puede visualizar el voltaje enviado, por medio de un cuadro de dibujo.
ICONO DE ENTRADAS ANALÓGICAS, representado por una
pantalla y un flecha de entrada, ai efectuar el suceso de click con el ratón en
éste icono se habré una forma hija en la cual se presenta el chequeo de la
señal de entrada que se desea visualizar (una a la vez).
ICONO DE PÓRTICOS DIGITALES, al realizar un click en este icono
se presenta una pantalla en ei cual se puede setear el funcionamiento de
cada uno de los pórticos, visualizar la palabra de control y el
comportamiento de los pórticos.
75
e) ICONO DE INFORMACIÓN, el cual trae una pantalla en donde se
puede ver la información básica del sistema en el cual esta funcionado el
programa de prueba de la tarjeta.
ICONO DE SALIDA, al pulsar éste icono, se da por terminado el
programa de prueba y sale del mismo seteando los pórticos a valores dados
por defecto tales como : el PP1 1 programado en modo O, colocando el
número 82H (hex) en la palabra de control, lo cual implica que los pórticos
A y C sean de salida y el pórtico B de entrada; el PPI 2 programado en
modo O, colocando el número 80H (hex) en la palabra de control,
consiguiéndose de esta manera que todos los pórticos estén configurados
como salidas.
El formato visual en el cual sea ha desarrollado ei programa hace precisamente
de é| un programa muy amigable para su utilización y entendimiento. Los puntos
de relevancia que se deben tomar en cuenta en el desarrollo de éste programa
de detallan brevemente a continuación.
4 PANTALLA DE PRESENTACIÓN
Esta pantalla se despliega al inicio del programa de prueba, en la cual se
encuentra el título del proyecto, los nombres de los autores (figura 3.3.2.a),
luego de haberse cargado ésta ventana, se presenta otra la cual muestra
una forma MDI que será la pantalla principal en donde están contenidos los
iconos antes descritos.
76
Figura 3.3.2.a Pantalla de presentación en Visual Basic V3.0
PANTALLA DE CONFIGURACIÓN
En ésta se puede ver las posibles direcciones que puede tomar la tarjeta, de
las cuales sólo una de ellas puede ser activada, direcciones que van
íntimamente ligadas con la posición física de los jumper (J1, J2). Al aceptar
la dirección escogida, se presentará un cuadro de diálogo en el cual se
pedirá que confirme la dirección base, debido a que de ésta dirección
dependerá el buen funcionamiento del programa de prueba.
Al descargarse esta pantalla activará los pórticos de ésta tarjeta a valores
predefinidos tales como: el PPI 1 programado en modo O y colocando el
número 82H (hex) en la palabra de control, lo cual implica que los pórticos
A y C sean de salida y el pórtico B de entrada; el PPI 2 programado en
modo O y colocando el número 80H (hex) en la palabra de control,
77
consiguiéndose de esta manera que todos los pórticos estén configurados
como salidas.
Además se cargará el archivo de ayuda ligado con este programa
(AYUDATEC.HLP).
PANTALLA DE SALIDAS ANÁLOGAS
AI realizar un click en el icono de salidas análogas se presenta una pantalla
(figura 3.3.2.b), la cual contiene elementos de programación dentro de los
cuales existe las subrutinas necesarias para la generación de datos; el
chequeo de los pórticos análogos de salida, la visualízación de los datos
enviados; un botón para iniciar el envío de datos al pórtico seleccionado, y
un botón para parar éste suceso.
i p^ -£ L:Í <:
^•f-ífc'", ¿..¿i-* rVx, 1—*t *O*fr,-üs'K^rw-<Kn7x'> f, ¿^¿ •
< •
f Ttíangular -O-Senoidal<
«I , Vot «Es Safída
4. , 4. 4..
í ,A í<
-' '-ÍHFigura 3.3.2.b) Pantalla de salidas análogas
78
PANTALLA DE ENTRADAS ANÁLOGAS
Luego de efectuar un click en el icono de entrada análogas se presenta una
pantalla (figura 3.3,2.c), dentro de !a cual existen elementos de programa
¡os que contienen las subrrutinas necesarias para la adquisición de datos; el
chequeo de los pórticos análogos de entrada; la visualización de los datos
recibidos; un botón para iniciar la adquisición de datos del pórtico
seleccionado, y un botón para parar éste suceso.
Figura 3,3.2,c) Pantalla de entradas análogas
PANTALLA DE PRUEBA DE PÓRTICOS DIGITALES
Al hacer un click en el icono del pórticos digitales, se presenta una pantalla
(figura 3.3.2.d), en donde se puede setear el comportamiento de cada uno
de los pórticos del segundo PPI, el cual será programado en su modo
básico (MODO O entrada o salidas básicas) y, además se visualizará el
comportamiento de cada uno de estos.
79
í , ,C* v" ">'* 'V v< &/v^íX*" .j> -
•-.j-^-j/ i.,^-^ •*-•• ••• r \, y'v s» - -
* ^«^'''''V*
Figura 3.3.2.d) Pantalla de prueba de Pórticos Digitales
REALIZACIÓN DEL ARCHIVO DE AYUDA
Para la realización de este archivo se debe tener acceso a algunos
utilitarios necesarios para la elaboración de cualquier archivo de ayuda
(*.HLP). Los utilitarios básicos son:
O Un procesador de palabras bajo Windows, que pueda guardar sus
archivos en formato RTF (Rich Text Format), preferible Word 6.0. En
éste utilitario se digitará el texto que aparecerá en las ayudas ;
O Un programa graficador, el cual pueda crear archivos en formato
genérico de dibujo (archivos *.BMP), éste utilitario se puede utilizar
únicamente cuando se tienen gráficos que se incluirán en las ayudas.
Un utilitario puede ser el Paint Brush.
O Un utilitario que realice la edición de hipergráficos, es decir un
80
EDITOR DE HOSTPOST, el cual realizar archivos * SHG, necesario
cuando se necesita enlazar un dibujo con un texto de ayuda; este
utilitario se denomina SHED.EXE y se lo puede encontrar en el
subdirectorio ...\HC de visual basic V3.0
O El último utilitario y el más importante es el que enlaza la información
generada en los anteriores, construyendo archivos *.HPJ, los cuales
son archivos generadores previos al archivo de ayuda propiamente
dicho los archivos *.HLP; este utilitario contiene un compilador de
ayuda tal como el HC31 .EXE, localizado igualmente en Visual Basic.
Luego de saber manejar los utilitarios anteriores, ios pasos previos
para la realización de un archivo de ayuda es:
a) Realizar el texto que servirá de lectura en el archivo ayuda, realizarlo
en Word y guardarlo en formato RTF, teniendo en cuenta lo
siguiente, que si se desea realizar un salto de página de información
asociado a un texto, este texto debe tener una palabra clave la cual
debe esta oculta y con formato de doble subrayado todo el texto
ligado con esta palabra; si se desea realizar una presentación de
texto en pantalla (popud íext), la palabra clave debe está oculta y con
simple subrayado todo el texto asociado a esa palabra;
b) Si la ayuda tiene gráficos (archivos *.BMP), éstos son asociados en
último utilitario; y,
c) Luego que ya se tiene todo el texto y los gráficos requeridos, para ia
81
ayuda se procede a compilarlos en el último utilitario antes
mencionado.
3.3.3 BLOQUES DE PROGRAMA EN LAB VIEW
Los bloques 'de programa realizados en este lenguaje se .hallan en.el disquete
asociado con este proyecto, los mismosr que se encuentran: dentro de un
subdirectorio llamado MADAIO, el cual contiene una librería denomina
ADAIOilLB., dentro de la cual hay pequeños bloques de progíama^ utilizados
sobre todo en las pruebas a realizarse ^en e\e capítulo, en -donde se los
describirá.
82
PRUEBAS Y RESULTADOS
Antes de describir las pruebas realizadas para la comprobación del correcto
funcionamiento de la tarjeta, se debe tomar en cuenta que la mayor parte de
éstas fueron realizadas en un computador con las siguientes características:
Microprocesador AMI 586, con 16 Mby de memoria RAM, Disco de 1.2 Gby;
también se realizaron pruebas de compatibilidad de direcciones en otro
computador con microprocesador INTEL386, con 2 Mby de RAM y disco duro de
270 Mby.
Las pruebas en su mayor parte se realizaron en el laboratorio de Sistemas de
Control, utilizando los siguientes instrumentos:
• Un osiloscopio TEKTRONIX (modelo 5113) que permite grabar la señal, lo
cual es útil para bajas frecuencias;
• Un generador de ondas SIMPSON (modelo 420), el cual permite ingresar
ondas de diferentes tipos a la tarjeta;
• Un voltímetro digitalTMC-500, para poder visualizar la lectura tanto de
emisión como de adquisición de datos
Una precaución que se debe tener para realizar las pruebas es que debe
existir un punto de referencia común entre todos lo elementos, esto se
consiguió uniendo las tierras de cada uno de los instrumentos, tanto del
83
osciloscopio, el generador y el computador
A continuación se describirán las pruebas realizadas.
4.1 PROGRAMAS DE COMPROBACIÓN DE DIRECCIONES.
Con el fin de comprobar el correcto funcionamiento de la tarjeta ADAIO, según lo
indicado en el capítulo anterior, se elaboraron programas que servirán para
probar la compatibilidad de hardware y software dado por una adecuada
decodificación del bloque de direcciones.
La ejecución de los programas ya descritos, fue perfecta, por lo tanto, el bloque
de decodíficación de direcciones está bien elaborado.
4.2 PRUEBAS DE ACOPLAMIENTO Y FUNCIONAMIENTO.
Luego de haber determinado y comprobado el acoplamiento entre software y
hardware dado por el bloque de decodificación de direcciones, las siguientes
pruebas de funcionamiento dadas por la ejecución de pequeños programas
adicionales estuvieron encaminados a determinar: ía frecuencia de generación de
datos, y ¡a frecuencia de adquisición de datos, con e! fin de establecer las
características técnicas en cuanto a la velocidad de procesamiento de
información que posee la tarjeta ADAIO.
4.2.1 PROGRAMAS DE GENERACIÓN DE DATOS.
Con el fin de determinar ia frecuencia, a la cual puede operarse la tarjeta ADAiQ,
y comparar la velocidad de respuesta de programas compilados con diferentes
compiladores, se han realizado programas que sacan una señal rampa a un
84
puerto de salidas analógicas.
Los programas se han realizado en: Turbo O+, Qbaslc, N/isual Basic V3.0, Lab
ViewV3.1.1
4.2.1.1 LISTADO DEL PROGRAMAÉMURBQ (>+
/* PROGRAMA^PARA SACAR UNA RAMRA A UN PUERTO ANALÓGICO */
#include <stdío.h>
#include<dos.h>
#defíne PORT 768
#define CQUNT 10000
#def¡neUPP255
¡ Define elí pórtico de salida análoga
; Define el; valor máximo enviado al'pórtíco
void main(void)
unsigned re^ister int nsal,dato;
nsal=0;
ouíp(PORT+3,1i30);
do
{
outp (PORT+2,0);
outp;(PORT,dato);
dato=d'ato+1;
// Define al; PPI 1 eí modo défuncionamiento de sus pórticos
// Defina el' primer pórtico análogo
// Envía los datos al pórtico definido
// Incremento del dato enviado
85
¡f( dato>255)
dato=0;
nsal-H-
}
while (nsal<=eOUNT);
4.2.1.2 LISTADO DEL PROGRAMA EN QBASIC
'PROGRAMA PARA SACAR UNA RAMPAA UN PUERTO ANALÓGICO
CONTA = 10000
UPP = 255
SCREENO ,
CLS
LÓCATE 2, 10
PRINT " PRUEBA DE PUERTO ANALÓGICO"
PRINT "......GENERANDO DATOS AL OSS'ILOSCOPIO......."1
FOR DATO = O TO UPP STEP 1
OUT&H302, &HO
OUT&H3QQ, DATO
N EXT DATO
NSAL=MSAL-M
' Inicíállzación del funcionamiento del P-PI
''inicio de un lazo
' Emisión de datos al pórtico del 1 ai 255
' Serección el primer puerto análogo-
( Saca el dato al puerto escogido
86
LOOP WH1LE NSAL <= COUNT
4.2.1.3 LISTADO DEL PROGRAMA EN VISUAL BASIC V3.0
El siguiente programa de prueba dé generación dé datos a través dé un pórtico
del PPI se lo puede implementar en dentro de la ventana de programación de un
COMMAND BUTTON de la siguiente manera, seteando a la variable "dírbase a la
dirección base del PPI 1J'
Sub Command3_Clíck ()
' Selección- del' pórtico dé salida análoga
' Envío del dato
Incremento el valor a enviar
Do
Writeppí dfrbase + 2, O
Writeppi dirbase, dato
dato -dato +1
If dato > 255 Then dato = 0
x = DoEventsQ
Loop
End Sub
4.2.1.4 LISTADO DEL PROGRAMA EN LAB VIEW
Este programa posee lenguaje gráfico, por lo cual se presentan las pantallas que
componen el programa de prueba de emisión de datos, estas pantallas pueden
ser visualizadas en la ventana de diagramas del programa, para lo cual se utiliza
una secuencia de dos frames.
§£ generación rápida Diagiamapérate Windows ¿ext -Help
OulPort
=¿s>
Figuras 4.2.1.1 a y b) Frame O y 1 en la ventana de diagramas del programa de generación.
^generación rápida Díagram——-^•••HHHMBHHHBL^r-j>£%9%^^%í&$S&jSffi:ítt&^&4
aas j lg^^^K^TOi
AjlJtll£a
3fl THEaSOSEB
j^Cjji
4.2.2 PROGRAMAS DE ADQUISICIÓN DE DATOS.
Con el fin de realizar las pruebas de adquisición de datos para los puertos de
entrada analógicos, se ingresaron señales de distintas formas y frecuencias para
cada uno de los puertos de entrada.
Los datos resultantes de la adquisición pueden ser redíreccionados a un archivo,
ei cual puede ser utilizado para construir un gráfico de la señal obtenida, ó
pueden ser simplemente chequeados para ser comparados con un determinado
nivel de referencia el cual permitiría realizar una acción de control.
Todas las acciones anteriores y demás tales como cálculo, graficación y
manipulación matemática de los datos de entrada, están limitadas sólo por la
habilidad del programador.
Los programas descritos a continuación permiten ingresar una señal a un puerto
de entradas analógicas y realizar un muestreo de dicha señal,
Los programas se han realizado en: Qbasic, Visual Basic V3.Q, Lab View V3.1.1
4.2.2.1 PROGRAMA DE ADQUISICIÓN EN QBASIC
Para la adquisición de datos en el programa PPI.BAS se definió una función de
adquisición de esta manera:
DECLARE FUNCTIONDatAdq! (Nivel!)
FUNCTIONDatAdq (Nivel)
89
DatAdq = INP(Dirb + 1) c Coloca el dato que está dentro delí registro Dirb + 1 en la variable DatAdq.
END FUNCTION
Función que será encargada de recoger el dato (valores de O a 255), que da el
conversor A/D, para luego manipular estos datos y enviarlos a un gráfico.
4.2.2.2 PROGRAMA ADQUISICIÓN EN VISUAL BASIC V3.0
Dentro del programa ADAIO.MAK, se tiene la siguiente subrrutina que se
encargará de la adquisición, ésta se encuentra dentro de la pantalla de entradas
analógicas dada por la forma FmrSaln, dentro del elemento del programa Timerl.
Sub T¡mer1_T¡mer ()
'***** Subrrutina de adquisición de datos *****
Static x, y, z
LabelS.Caption = Hex$(Flagln(Signal))
Writeppi (Dirbase + 2), Flagln(Signall) 'Habilitación del pórtico por
Signal = Signal + 1 'el cual va ingresar el dato
If Signal = Contaln Then Signal = O
1 Adquisición del dato localizado en el registro Dirbase + 1
y = Readpp¡(Dirbase + 1)
1 Manipulación de dato adquirido, para la graficación
90
pnlvelo.Caption = Fórmat((y / 255 * 1 0), "0.00")
100/255
x = x + .075
Picturel.üne-íx, z), RGB.(0, O, 255)
lfx>=1-OOThen
Pícturet.CIs
Escalaln-20,120, 120, -20
End If
End Sub
4.2.2.3 PROGRAMA DE ADQUISICIÓN EN LAB VIEW
Los bloques de programación del lenguaje gráfico que componen el programa de
prueba de adquisición de datos, vienen dados en la ventana de diagramas del
mismo(figura 4.2,2.3.a), en donde se puede apreciar:
« Un estructura de Lazo While que contiene un bloque de programa (In Pbrt.ví),
bloques de operaciones aritmética y variables que representan indicadores o
controles,
» El bloque de programa In Port.vi se utiliza para leer el dato que se encuentra
91
en la dirección del registro especificado, dada por el usuario (en este caso
dirección 301H, del pórtico B del PPI, pórtico utilizado como entradas.),
seteado este bloque con una variable digital en posición de False (F), para que
se pueda leer sólo un byte.
Las funciones aritméticas de multiplicación y división se utilizan para el
acondicionamiento de los datos de entrada, de tal manera que se pueda leer el
dato correspondiente al voltaje que esta ingresando, ya que si: en el registro
se ingresa un voltaje de O VDC equivalga al dato O y un voltaje de 10 VDC
equivaldrá al dato 255,
En éste diagrama también se puede ver variables de doble precisión (DBUs )
que representan indicadores, los cuales se pueden ver en el panel frontal del
programa (figura 4.2.2.3.b)¡ éstos no sirven para visualizar los datos
correspondientes al voltaje de entrada.
^Adquisibion PPL piagram^
file. JEdit JBpbrate8, Fugctlorag WJfidnws Ifext jjdp \
|n¡caij
Figura 4.2.2.3.a) Ventana de diagrama del programa de Adquisición de Datos.
92
ffijM'^^frt ''Wi^í* fiy^''&*'1ffj^^$&*t'*ft?^&2¿ 4~laIW
H^^tíiffiti;
[fl^BQZEU¡gBa3~
,";.„ 4^530^'**Lv^^i,"',** i"í^»*V '. ** a^v- , ' f^ ^fX^SDOO ^"I"^/" " ™,.«,^1
«" * • - • * " - ~ - —
Figura 4.2.2.3.b) Panel de Control del programa de Adquisición de Datos.
4.3 RESULTADOS OBTENIDOS.
La tarjeta ADAIO con las pruebas realizadas anteriormente demostró no solo
operar adecuadamente sin alterar el funcionamiento interno del computador, sino
que además es óptima en la utilización de registros de memoria. Cabe recordar
que la mayor parte de éstas fueron realizadas en computadores con las
siguientes características:
• Microprocesador AMI 586, con 16 Mby de memoria RAM, Disco de 1.2 Gby, y
• Microprocesador INTEL386, con 2 Mby de RAM y disco duro de 270 Mby.
Una prueba clara de este hecho es que se colocó dos tarjetas en un mismo
computador sin existir interferencia o cruce de información, ya que la una tarjeta
93
se direcciones en ia dirección 300H y la otra en la dirección 31 OH.
4.3.1 RESULTADO DE LAS PRUEBAS DE CORRECTA OPERACIÓN
En el computador con mícroprocesador AMI586, no mostró ninguna alteración en
su funcionamiento, pudiéndose observar que todos los puertos analógicos tanto
de entrada como de salida operaban adecuadamente, sin perturbar el
funcionamiento de otros programas, ni mucho menos de otras tarjetas.
4.3.2 RESULTADO DE LAS PRUEBAS DE FRECUENCIA DE OPERACIÓN
Los programas listados en el acápite 4.2.1 prueban la frecuencia de emisión de la
tarjeta ADAIO, tomando en cuenta que estos datos fueron emitidos por los
programas: Turbo C++, Qbasic, Visual Basic V 3.0 y Lab View, obteniéndose su
respuesta en un osciloscopio.
Se debe indicar que, en estos programas no se han incluido retardos para la
salida de datos, por lo tanto las frecuencias indicadas son las máximas que se
pueden alcanzar para e! computador en el que se realizaron las pruebas.
Los resultados obtenidos para los diferentes programas en cuanto a la frecuencia
de emisión se tiene en la tabla 4.2.3.a.
RESULTADOS DE GENERACIÓN DE DATOS CON LA TARJETA ADAIO
Turbo C++
Q-Basic
Visual Basic
Lab. View
Frecuencia Máxima (Hz)
(1 Salida Activa)
1562.5
71.4
90.9
526.3
Frecuencia Máxima (Hz)
(8 Salidas Activas)
227.3
27.8
43.5
Tabla 4.2,3.a Cuadro de frecuencias de generación máxima
94
El tiempo de retardo que se le debe dar en software para la activación y envío de
cada una de las señales esta dada en la tabla 4_2.3.b
MÍNIMO TIEMPO DE ESPERA PARA ENVIÓ ENTRE SEÑAL Y SEÑAL(Medido en Visual Basic V3.0)
SEÑAL
En mseg.
1
0
2
80
3
100
4
120
5
140
6
160
7
180
8
200
Tabla 4.2.3.b Tiempo máximo de retardo para la activación entre señales de salida
4.3.3 RESULTADOS DE LA FRECUENCIA DE ADQUISICIÓN
Para determinar la frecuencia de adquisición se utilizaron los programas
descritos en el capítulo anterior, realizando pruebas de adquisición de todos los
pórticos uno a la vez.
Se introdujeron señales dadas por un generador de ondas (marca SIMPSON del
laboratorio), el cual permitió ingresar diferentes tipos de onda a la tarjeta ADAIO.
Se llegó a determinar que la máxima frecuencia de adquisición no depende del
lenguaje de programación; además se pudo fijar que la tarjeta puede funcionar
para control de procesos en donde se controle fenómenos físicos (temperatura,
presión, nivel de fluidos, etc), que tengan un período de repetición máximo de
0.1 segundos.
El tiempo de retardo que se le debe dar en software para la activación y
recepción entre cada una de las señales de entrada es de 100 mseg.
95
Luego de determinar el correcto funcionamiento se debe realizar una estudio
técnico económico que determine si este proyecto da la factibilidad de
¡mplementarlo a nivel comercial.
4.4 ANÁLISIS TÉCNICO-ECONÓMICO
A continuación se dará un enfoque económico general, y dado que la tarjeta
ADAIO es modular, ésta puede implementarse según el módulo que se desee,
para lo cual se tienen los siguientes cuadros de costos:
Módulo básico de direccionamiento y pórticos digitales constituido por:ítem Cantidad
15
1718191024267
1128
Referencia
13CO-C132J1,J21 U81 U91 U101 UO4BU84J1G.BU161 BUG1 JP11 U11 BU1
Código
0.1 uFPuentes74LS0474LS3Q74LS3274LS245BASE-14BASE-20Conect 34 macho8255ABASE-40
Precio Unita(dólares US),
0,150.250,630.630.631.000.130.180.383.007.50
Precio Total
1.950.500.630.630.631.000.500.180.383.007.50
SUBTOTAL:
Módulo de Entradas Analógicas constituido por;
16.88
ítem
236
89
111516222324282926
Cantidad Referencia
1 CK18 DZQ-DZ71 JPO
16 R16-R242R1K.R2K1 U21 U61 U71 U141 U151 BU141 BU21 BU71 BUG
Código
820 pF5.1 VDC
Conect. 20macho
10k1 k
8255A74LS244ADC080874LSOO
10 Rpack.BASE-14BASE-40BASE-28BASE-20
I
Precio Unita. Precio Total(Dólares US)
0.150.500.25
0.050.057.500.837.500.63
0.500.130.380.200.18
SUBTOTAL:
0.154.000.25
0.800.107.500.837.500.630.500.130.380.200.18
23.13
96
Módulo de Salidas Analógicas constituido por:ítem Cantidad Referencia
1 8 CA1-CA88
121314202124252627
8 RA1-RA21 U31 U41 U521111,11121 U132BU11-BU121 BU42 BUS1 BU5
Código
0.1 uF10 k
DAC0830CD4051LM358LM324
lORpackBASE-14BASE-16BASE-20BASE-8
Precio Unita. Precio Total(Dólares US)
0.15 1.200.058.251.000,750,880,500.13
0.150.180.13
| SUBTOTAL:
0.408.251.000.751.750.500.250.150.350.13
14.73
Por lo dispuesto anteriormente el costo total de la tarjeta, implementando todos
los módulos se presenta en el siguiente cuadro:
Costo por móduloCircuito ImpresoM. de direccionamiento y pórticos digitalesM. de entradas análogasM. de salidas análogas
COSTO TOTAL por cada tarjeta:
Dólares30.0016.8823.1314.7384.74
4.4.1 ANÁLISIS TÉCNICO
En resumen la tarjeta ADAIO presenta las siguientes características técnicas:
• Puertos Análogos de salida: hasta un máximo de 8 puertos, multiplexados de
8 bits y activados por programa, cuya señal de salida debe estar entre O y 10
VDC.
r > Frecuencia máxima de generación depende del programa. Ver tabla
4.3.2.a
=> Tiempo máximo de retardo en software para la activación y envío de
97
cada una de las señales esta dada en la tabla 4,2.3.b.
Puertos Análogos de entrada: hasta un máximo de 8 puertos de 8 bits,
activados por programa, cuya señal de entrada debe estar entre O y 10 VDC.
==>La máxima frecuencia de adquisición no depende del lenguaje de
^Tiempo máximo de retardo en software para la activación y recepción
entre cada una de las señales de entrada es de 100 mseg.
• Puertos Digitales: Acceso a 3 puertos digitales de 8 bits totalmente
programables. Ver Capitulo V (Manual del usuario).
CONCLUSIONES Y RECOMENDACIONES.
Después de realizar las pruebas experimentales de la tarjeta ADAIO, como se
pudo observar en los resuitados¡ considerando sus características técnicas, el
número de pórticos análogos tanto de entrada como de salida y, por último su
costo en general, se puede decir que esta tarjeta puede ser una herramienta
poderosa para quien incursione en el campo de la electrónica y computación, ya
que, por medio de ésta se puede controlar un sin número de elementos externos.
Luego de implementar eí diseño tanto en software como en hardware se podría
establecer las siguientes conclusiones:
5.1 CONCLUSIONES.
4 Después de haber realizado las pruebas de funcionamiento se puede
afirmar que se ha construido una tarjeta cuyas características técnicas la
vuelven apta para ser implemeníada con fines didácticos, ya que la tarjeta
ADAIO permite una gran facilidad de integración para cualquier computador
personal.
4 Los puertos disponibles de la tarjeta ADAIO permiten que ésta se constituya
como parte integrante de un computador personal tipo PC compatible, el
cual puede servir para el control de procesos en donde se controle
fenómenos físicos (temperatura, presión, nivel de fluidos, etc), que tengan
un período de repetición máximo de 0.1 segundos.
99
4 La facilidad en el ajuste de direcciones, permite que dentro de un mismo
computador puedan existir hasta un máximo de 4 tarjetas, siempre y cuando
el computador tenga ranuras de extensión tipo ISA de 8 ó de 16 bits.
4 La tarjeta ADAIO está diseñada de tal manera que cumple con requisitos
estándares, ya que el uso de señales normalizadas permite su fácil
integración en cualquier tipo de sistema.
+ Se debe resaltar que ésta tarjeta ha funcionado perfectamente en ambientes
multiusuario, multitarea como lo es en Windows 95, lo que permite realizar
actividades adicionales en el mismo computador.
* La tarjeta ADAIO también constituye una tarjeta ampliador de pórticos
digitales programables, lo cual implica que proyectos anteriores realizados
con el pórtico paralelo pueden ser implementados igualmente y con mayor
facilidad utilizando ésta tarjeta.
4 El usuario de la tarjeta ADAIO puede escoger el lenguaje que más domine
para realizar proyectos personales a partir de ésta. Esto es gracias a la gran
cantidad de lenguajes de programación existentes para computadores
personales PC's compatibles.
4 La tarjeta ADAIO por su diseño modular permite una gran flexibilidad en
cuanto a costos se refiere, dependiendo de la aplicación especifica que el
usuario quiera darle a ésta. (Ver análisis técnico-económico. Capítulo IV). El
costo de impJementar toda la tarjeta es de $ 84.74 (dólares)
100
5.2 RECOMENDACIONES.
Con el presente proyecto realizado "TARJETA ADAIO", se pueden realizar con
ésta un sin número de proyectos en el campo del control computarizado, por lo
que se recomienda:
O Desarrollar proyectos adicionales acoplados a esta tarjeta, pero para ello se
considera que se necesitan conocimientos básicos de electrónica en cuanto
a hardware se refiere; en cuanto a software su está limitada únicamente por
la habilidad del programados
O Realizar librerías en los programas de entorno visual tal como: Visual V3.0 ó
Lab View, que permitan la fácil operación e integración de la tarjeta a ia
aplicación realizada por el usuario.
O Implementar módulos de control que puedan facilitar el uso de la tarjeta
ADAIO en aplicaciones específicas, tales como:
==> Módulos de potencia que tengan relés para el manejo de elementos
de potencia.
r > Módulos de entradas optoacopladas.
r > Módulos de amplificación de señal para el manejo de sensores, etc.
O Realizar las correcciones necesarias en software, debido a que los voltajes
de referencia para el conversor D/A se han tomado de la fuente del
computador, los cuales pueden variar de uno a otro.
101
O Implemeníar proyectos anteriores utilizados con el pórtico paralelo, esta vez
en la tarjeta ADAIO, debido a que ella también constituye una tarjeta
ampliadora de pórticos digitales programables.
O Tener cuidado cuando se realiza proyectos a partir de esta tarjeta, para lo
cual se debe leer detenidamente el MANUAL de la misma, especialmente en
el acápite relacionado a conexión con elementos externos.
BIBLIOGRAFÍA
• Mark Minasi, GUIA COMPLETA DE MANTENIMIENTO Y ACTUALIZACIÓN DE
LA PC, Ed. Ventura, 1993.
• Lewis C. Eggebrecht, INTERPAGINO TO THE IBM PERSONAL COMPUTER,
Ed. Howard W. Sanms & Co_, 1987.
• Gary Cornell, MANUAL DE VISUAL BASIC V3.0 PARA WINDOWS, Ed.
McGraw-Hííl, 1994.
• HofackerWinfriend, MICROCOMPUTADORES MANUALES, 1992
• ECG Semicondutors, MASTER REPLACEMENT GUIDE, Edición 1996
• Linear Circuits, DATA ADQUISITION AND CONVERSIÓN, Texas Instruments,
1989.
. Texas Instruments, LABVIEW FOR WINDOWS, 1994.
• Del Pozo Andrade, HERRAMIENTA GENERADORA DE SISTEMAS DE
AYUDA PARA WINDOWS, Tesis Sistemas 1996.
102
ANEXOS
A GRÁFICOS DE LA TARJETA.
A.1 Diagrama de Bloques del Diseño
Figura A.2.1 Diagrama de bloques d& la tarjeta ADAIO.
A.2 Diagrama esquemático del Diseño.
103
vTáKra..^• ---f^^fíf- ^^^P^tó^
A.3 Gráfico de la Disposición de elementos en la tarjeta.
g&gsgf9| ¡ f B S i f t & a 8 3 t g S S 3 S » E? g».& ü 3
Figura A.3 Disposición de elementos en la tarjeta ADAIO
105
B MANUAL DEL USUARIO.
B.1 CARACTERÍSTICAS GENERALES
En et diagrama de bloques mostrado en la figura A.2.1 se puede observar que
La tarjeta pone a disposición del usuario los siguientes recursos:
• 8 Entradas Analógicas (O a 10VDC), conectadas a una conversón A/D de 8bits, a través de diodos de protección para cada entrada, con desacopiamiento
de impedancia.
• 8 Salidas Analógicas (O a 10VDC), muitiplexadas con punto de tierra común,señales que provienen de un conversor D/A de 8 bits, correspondiendo el valordigital OOH a la señal de O VDC y FFH a la de 10 VDC
• Pórticos digitales programables por el usuario, los cuales dependen del modode programación que sea seleccionado para el segundo PPI, por lo tanto se
puede tener;
En el modo cero (entradas / salidas básicas).-
* 3 Pórticos digitales de salida de 8 bits, ó;
3 Pórticos digitales de entrada de 8 bits, ó ;
* Las respectivas combinaciones con los pórticos anteriores
En este modo los datos de salida son retenidos.
En Modo uno (entradas / salidas validadas).-
* 2 Pórticos digitales de entrada (PA ó PB), de 8 bits ó;
* 2 Pórticos digitales de salida (PA ó PB), de 8 bits.
Los pórticos digitales (PA, PB) son controlados por el pórtico PC del PPI.
En este modo los datos tanto de entrada como de salida tienen pueden serretenidos.
En el Modo 2 (bus bidireccional).-
* Un pórtico bidireccional (PA), controlado por las líneas superiores del
106
pórtico C (PC3 a PC7)
Un pórtico de entrada ó salida que puede trabajar en modo O ó modo 1.
B.2 CONFIGURACIÓN
La tarjeta ADAIO posee una circuitería básica la cual se puede asociar a
cualquier computador PC compatible, permitiendo al usuario configurar la
dirección de la tarjeta, para el efecto la tarjeta tiene 2 Jumper de selección (J1,
J2) como se puede ver en la figura A.2.2
SS GND
Í3 íí 8 3 (
'jb'fe.ab a anb ba
J2.. Ji
ajitilfl PP¡¿I ¿
' 'Pl Itl'2 2 fe A U
300 H 308 H
J2 J1 J2 Jl
310 H 318 H
Figura A.2.2 Colocación de puentes en J1, J2 para el seteo de dirección base
La tarjeta ADAIO debe ser instalada en una ranura de ocho bits para tarjetas
de extensión de un computador XT/AT/286 /586 compatible. Además ésta
tarjeta provee salidas de la fuente de + 5VDC, para usos externos.
La tarjeta se ha diseñado para facilitar su mantenimiento, por lo que, no se
requieren calibraciones internas de ningún tipo.
La tarjeta ocupa 8 direcciones consecutivas para direccionar los puertos
disponibles, a partir de la dirección base, véase en la tabla Tabla B.2.11
Dirección Base
Dirección Base + 1
Dirección Base + 2
Dirección Base + 3
PPI 1
PA
PB
PC
WC
PPI 2
Utilizado para señales analógicas
Utilizado para salidas análogas (1 a 8)
Utilizado para entradas analógicas (1 a 8)
Utilizado para determinar que
entrada/salida análoga se desea.
Palabra de control (82H)
Utilizado para señales digitales
107
Dirección Base + 4
Dirección Base + 5
Dirección Base + 6
Dirección Base + 7
PA
PB
PC
WC
Pórtico de I/O ó Bidireccional
Pórtico de I/O
Pórtico de 1/0 ó de Control.
Palabra de control para determinar el modo
de funcionamiento del PPI 2.
Tabla B.2.1 1
B.3 INSTALACIÓN
Antes de instalar la tarjeta ADAIO se debe leer cuidadosamente el acápite
anterior de seteo de direcciones permitidas y definir la dirección apropiada en
concordancia con sus requerimientos.
Es muy importante definir correctamente la dirección que se asignará a la tarjeta
ADAIO, para que ésta no entre en conflicto con otras tarjetas previamente
instaladas.
Para instalar ia tarjeta siga los siguientes pasos:
a.- Apague el computador, y todo periférico a éste conectado,
b.- Remueva la cubierta del computador
c.~ Verifique que una de las láminas localizadas en la parte posterior del
computador, correspondiente a una ranura, esté libre, sí no lo esta
remuévala.
d.~ Seleccione ia dirección adecuada que se dará a la tarjeta (ver figura de
configuración anterior)
e.- Instale apropiadamente los cables que se utilizaran en su aplicación, (Ver
acápite B.4 acerca de la conexión con elementos periféricos)
f.- Instale la tarjeta en una ranura para bus tipo ISA. ( de 8 o 16 bits, ia tarjeta
108
sólo ocupara la de 8 bits).
g.- Asegúrese de la correcta ubicación de la tarjeta y cables,
h.- Encienda ei computador y verifique el correcto funcionamiento de la tarjeta
utilizando para este efecto cualquiera de los programas adjuntos a la tarjeta
( Ver sección software de la tarjeta ADAIO).
i.- Si la operación es correcta, apague el computador y restituya la cubierta.
j.- Sí la operación no es correcta apague el computador y verifique la dirección
base dada a la tarjeta y vuelva a ejecutar los pasos verificando la conexión
de los cables desde el paso (e).
B.4. CONEXIÓN
Para establecer un enlace entre el PC y un periférico de aplicación específico la
tarjeta ADAIO POSEE DOS CONECTORES EXTERNOS Y DOS INTERNOS,
dispuestos de la siguiente manera:
• Un conector interno de 62 pines ei cual sirve para conectar la tarjeta ADAIO
con la ranura del computador. Esta tarjeta utiliza la fuente del computador para
activar a I ¡mentar todos los circuitos integrados que la conforma.
» Un conector interno de 5 pines, por medio del cual se tiene acceso a las
fuentes( +12Vdc, + 5Vdc, GND, - 5VdcT - 12Vdc), que provee el computador.
Para aplicaciones externas se debe tener cuidado al utilizar estas fuentes, por
lo que se recomienda utilizarlas con protección externa adecuada (fusibles de
1 A).
» Un conector macho de 20 pines, el cual, se utiliza para sacar las señales
análogas, tanto de entrada como de salida. Conector denominado JPO. (Ver
figura A.2), fas señales están dispuestas de la tabla B.4.1
109
# Pin del conector JPO12345678910
SeñalesVoutOVoutlVout2VoutSVout4VoutSVoutGVouí7GND
+5VDC
# Pin del conector JPO11121314151617181920
SeñalesGND
+ 5VDCVinOVin1V¡n2V¡n3V¡n4Vin5VinGV¡n7
Tabla B.4.1
Un conector macho de 34 pines, por medio del cual se tiene acceso
externamente a todas las señales de PPI 2, conector denominado JP1. (Ver
figura A.2), las señales están dispuestas de la tabla B.4.2
# Pin del conector JP11234567891011121314151617
SeñalesPAOPA1PA2PA3PA4PA5PA6PA7PBOPB1PB2PB3PB4PB5PB6PB7GND
# Pin del conector JP11819202122232425262728293031323334
SeñalesGNDGNDGNDNCNC
+ 5VDC+ 5VDC+ 5VDC+ 5 VDC
PCOPC1PC 2PC3PC4PC5PC6PC7
Tabla B.4.2
Los cables conectores utilizados deben ser cables RIBBON de 34 ó 20 hilos,
respectivamente, con una particularidad, de que el hilo rojo del cable debe
conectarse al pin # 1 del conector macho de la tarjeta.
Los cables son de fácil elaboración, pues existen en el mercado local, cables
110
ribbon de 34 ó 20 hilos y sus respectivos conectores hembra, para éste propósitoi
se deben emsamblar los cables como se indican en la figura B.4.1
Conectar embra de 20 ptnes
*1 19
Cable Ribbon cié 20 hilos
20
Conectar embra de 34 pines Cable Ribbon cíe 34 hilos
raE
Nota: Hilo rajo si pin # *1
Figura B.4.1
Se recomienda que para la implementación de proyectos externos se conecte el
un extremo del cable a la tarjeta según los conectores indicados anteriormente, y
en el otro extremo del cable; se separen los hilos y se conecten separadamente
en un protoboard, lo cual permitirá medir cada una de las señales a utilizar
Consideraciones que se deben tomar en la conexión de elementos
extemos.-
Los puertos de Entrada y Salida de elementos NMOS como el 8255A fueron
construidos de tal manera que permite una corriente de salida 2 mA en conexión
de sumidero o «sinking» a 0.5V, y de 0.2mA en conexión fuente o sourcing a
2.4V.
Por lo anterior es recomendable, realizar con ellos las conexiones indicadas en la
figura B.4.2. Conexiones que permiten el manejo de cargas de potencia
desde una salida del 8255 en conexión de sumidero sinkíng, y en conexión de
111
fuente o sourcfng.
+5V
8255-A
NMOS
2.2 K
V
100
I:
25mA8255-A
NMOS
+Vcc
"Sínking"(Sumidero)
"Sourcing"(Fuente)
Figura B.4.2. Manejo adecuado de cargas de potencia desde salidas NMOS
TABLERO DE CONEXIONES Y PRUEBAS DE LA TARJETA ADAIO
Se ha desarrollado un tablero de conexiones que tiene elementos necesarios
para probar el buen funcionamiento de la tarjeta ADAIO. Como se sabe la tarjeta
tiene puertos digitales (A, B y C), y 8 analógicos de entrada y 8 de salida, los
cuales se encuentra claramente diferenciados; además se puede identificar
claramente cuales son los bits más y menos significativos en cada caso ( el
terminal O es el bit menos significativo); esto se da, para poder probar más
rápidamente cada uno de los pórticos, lográndose una mayor agilidad al
momento de experimentar con nuevos prototipos, a partir de este tablero.
De la misma manera, la alimentación proveniente de la fuente (5 voltios) se
encuentra en esta tarjeta; este voltaje se puede aprovechar para aquellos casos
en los cuales la demanda de corriente no es muy elevada. Sí la corriente es
mayor lo recomendable es utilizar una fuente externa a la tarjeta, recordando que
112
es necesario que tanto la tierra del circuito como la del computador estén unidas.
Además en el tablero se tiene:
• 8 leds para cada pórticos (A, B y C), con el fin de probar la salida de ios
pórticos digitales, cuando estos estén programados de esta manera. En el
tablero se lo puede identificar como "Outd" a los conectores de éstos
pórticos.
• 3 dip switch de 8 con e! fin de probar la entrada de los pórticos digitales,
cuando estos estén programados de esta manera. En el tablero se lo puede
identificar como "Ind" a los conectores de éstos pórticos.
• 2 conectores de 8 zócalos cada uno que servirán para conectar tanto las
entradas como las salidas análogas identificadas como "Ina" y "Outa"
respectivamente. En estos conectores se puede identificar claramente el
número de la señal.
El tablero de conexiones se encuentra unido al computador a través de dos
cables ribbon uno de 34 líneas para las señales digitales y, otro de 20 líneas para
las señales análogas.
=> Para probar los pórticos de salida digitales, se instaló la configuración que
se indica en la figura B.4.3. para cada pórtico.
•13
JPñO LJA RAO
Figura B.4,3 Diagrama de elementos para probare! pórtico de salidas digitales
Como se puede observar, la salida del puerto se lleva a un circuito
integrado UA (74LS240), el cual es un buffer de 8 líneas. Este es necesario
debido a que las salidas del puerto no pueden manejar directamente
corrientes elevadas (máximo 4mA por línea), además se conecta una banco
de resistencias RAO (330 Homs), y un banco de diodos DO a D8, los cuates
nos indican en forma visual el bit activo del pórtico.
El buffer está en capacidad de manejar directamente 600 mA en total, lo que
los convierte en aptos para controlar LEDs y, es el indicado para manejar
cargas inductivas como relés, motores paso a paso, etc.
Para probar los pórticos de entrada digitales, se instaló la configuración que
se indica en la figura B.4.4 para cada pórtico.
310
! iiia
i 13i-qrís"; IB
BBí....mm
\
a 9
6 •s
3 12 _ '1
1 »íYfif? i3, ft §S?<
1 sVBSA-3S
SilS3-qSE"7B
JPBI
RBI
Figura B.4,4 Diagrama de elementos para probare! pórtico de entradas digitales
114
Como se puede observar en la figura anterior B.4.4 se ha implementado
una serie de 8 interruptores DIP, para cada puerto, de ta! manera que se
puede ieer su estado; los suiches conmutan la línea que entra al
computador entre estados lógicos altos y bajos,
Lo ideal es tener resistencias pulf-up ( RBI = 4.7KQ) conectadas al puerto,
tal como se muestra en la figura anterior, cuando se cierra uno de los
interruptores la línea del puerto correspondiente pasa a un estado lógico
bajo.
C SOFTWARE
C.1. ASIGNACIÓN DE DIRECCIÓN BASE
La dirección base asignada en los programas de aplicación deben tener plena
concordancia con el hardware Ver B.2 CONFIGURACIÓN
C.2. ASIGNACIÓN DE DIRECCIÓN DE SEÑALES ANÁLOGAS
Para accesar a las señales análogas localizadas en el conectar externo de 20
pines, por medio de programa se debe :
• Escribir en el registro que pertenece al PC (dirección base + 2), dei PPI 1 un
número que habilitará la señal análoga deseada.
• Si se desea salidas análogas, se deberá escribir en el PA del PPI 1, (Dirección
base) un número que corresponderá a un voltaje deseado, de esta forma el
número O equivale a OVdcy el número 255 equivaldrá a 10 Vdc.
115
Si se desea adquirir entradas análogas, ei voltaje adquirido por medio del
conversor A/D se traducirá a un número que es localizado en el PB del PPI 1,
(Dirección base + 1).
Pórtico Análogo#
VoutOVoutlVout2VoutSVout4VoutSVout6Vout7
VinOVin1Vin2Vin3Vin4Vin5Vin6Vin7
Localizado en el pin # de PA,del PPI 1. (hardware)
PAOPA1PA2PA3PA4PA5PAGPA7
PBOPB1PB2PB3PB4PB5PB6PB7
# HEX que debe ser escrito enel PC(dirección base +2), delPP1 1. (software).
OOH10H20H30H40H50H60H70H
OOH01 H02H03H04H05H06H07H
D CONSIDERACIONES TÉCNICAS
La tarjeta ADAIO presenta las siguientes características técnicas:
• Puertos Análogos de salida: hasta un máximo de 8 puertos, multiplexados de
8 bits y activados por programa, cuya señal de salida debe estar entre O y 10
VDC.
^Frecuencia máxima de generación depende del programa. Ver tabla
4.3.2.a
116
RESULTADOS DE GENERACIÓN DE DATOS CON LA TARJETA ADAIO
Turbo C++
Q~Bas¡c
Visual Basic
Lab. View
Frecuencia Máxima (Hz)
(1 Salida Activa)
1562.5
71.4
90.9
526.3
Frecuencia Máxima (Hz)
(8 Salidas Activas)
227.3
27.8
43.5
Tabla 4,2.3.a Cuadro de frecuencias de generación máxima
Tiempo máximo de retardo en software para la activación y envío de
cada una de las señales esta dada en (a tabla 4.2.3.b.
MÍNIMO TIEMPO DE ESPERA PARA ENVIÓ ENTRE SEÑAL Y SEÑAL(Medido en Visual Basic V3.0)
SEÑAL
En mseg.
1
0
2
80
3
100
4
120
5
140
6
160
7
180
8
200
Tabla 4.2.3.b Tiempo máximo de retardo para la activación entre señales de salida
• Puertos Análogos de entrada: hasta un máximo de 8 puertos de 8 bits,
activados por programa, cuya señal de entrada debe estar entre O y 10 VDC.
:=>La máxima frecuencia de adquisición no depende del lenguaje de
programación
Tiempo máximo de retardo en software para la activación y recepción entre cadauna de las señales de entrada es de 100 mseg.
E DIAGRAMAS DE FLUJO DE LOS PROGRAMAS
F HOJAS TECNÍCAS DE LOS PRINCIPALES ELEMENTOS UTILIZADOS.
117
DIAGRAMA ESQUEMÁTICO DEL FLUJO DEL PROGRAMA PPI.BAS
A.
NEUU
,
^ PÓRTICOS —
* GRÁFICOS ;
(\A DE \N J
¿SETEO
DE -LA
DIRECCIÓN
BASE
i '
/PANTALLA \L /
1j. -_------ . -— - _ _ _ _ _ _ _ _ _ _ _ » » -
^/^ pj )--T"C P3 ) ( F? )
INICIAR DETENER SALIR
] - Comando de» QOS /"^
J - Sa ida Temporal V^-XV y i r y
.Pantal la de^ ACERCA DEL ^
PROGRAMA . - -Información " Se Setea los^ J ,
PorLIcos de los
] PPI's
«^ , , J '[5
C J
js^ SeieoX" N Dirb + 2 a:
ENTRADAS
ANÁLOGAS 5H,6H,7HV J
j**
f "\ SeteoSALIDAS Dirb + 2 a:
ANÁLOGAS - 40Ht50H,60H,V J 1QM
^ 1
\n d.e / Saleado | - Pulsari M { * a § i > Teclas
A Señal Analog. / Dirb«0H J A Cursor
1' -1
\ 1l Adquisición de / Seieado S X S\ > a. 1 HlNsM- -1
1 M Sena.1 Analog. /. . Dirb + 1 -OH 1 V_ X
./r- , • "NM' Escala Tiempo 1
— — /Grillas On/Of'f J^ J
PÓRTICOS DE 1i ^ ENTRADAS U--
[ DIGITALES "\ ( PÓRTICOS DE 1
1 > SALIDAS M--J
D1GI1ALES IDir. RMS V _., XPqrLícqs
S í mu I ac í .Grilla..Escala. .
S~^
DIAGRAMA ESQUEMÁTICO DE FLUJO DEL PROGRAMA ADAÍO.MAK
1 •
SeteoDirb -f 2 a:OH, 10H.20H.30H40H,50Hf60H,
70H
i 1
Generación de
Señal Analog.
1 '
SeteoDirb + 2 ai0H,lH,2H,3HrtH
5H,6H,7H
1
Adquisición de
Señal Analog.
1 •
Pan tai la deInformacióndel Sistema
'•
SeteoDirb + 7 -80HDírb + 6 - OHDirb + 5 - 0HDirb + 4 * 0H
1 '
Seteo de laPalabra de
Control
[ENTRADAS
vIGITALEy
8155
/815
6/81
55-2
,¿81
56-2
8088
RV
E C
HIP
SY
ST
EM
Figu
re
nb
-3h
ow
s a
fivs
chip
aya
tem
• 1.
25K
Byt
es R
AM
• 2K
Byl
es R
OM
• 3
81
/0 P
ins
• 1
Inte
rval
Tim
er
• 2
Inte
rrup
t Lé
vela
/\T
A
POR
T aí
155 PO
RI
<x>O
AÍA
/AO
DH
10/f
i T
IME
S
„„<
-,
our
-V
AL
E
CE AD
OR
IWM
P
BE
SE
T
HE
AD
Yv
cc_!
i II
CE
,1
AL
E
C5.
8255
A/8
255A
-5P
RO
GR
AM
MA
BL
E P
ER
IPH
ER
AL
INT
ER
FA
CE
MC
S-8
5™ C
ompa
tible
825
5A-5
24 P
rogr
amm
abie
I/O
Pin
s
Com
plet
eiy
TIL
Com
patib
le
Ful
iy C
ompa
tible
with
Int
el®
M
icro
-pr
oces
sor
Fam
ilies
'
Impr
oved
Tim
ing
Cha
ract
eris
tics
Dire
ct B
it S
ei/R
eset
Cap
abili
ty E
asín
gC
ontr
ol A
pplic
atio
n In
terf
ace
40-P
in D
ual
In-L
ine
Pac
kage
Red
uces
Sys
tsm
Pac
kage
Cou
ni
Impr
oved
DC
Driv
ing
Cap
abili
ty
The
Inte
l® 8
255A
is a
gen
eral
pur
pose
pro
gram
mab
le 1
/0 d
evlc
e de
sign
ed f
or u
se w
ith I
ntel
* m
icro
proc
esso
rs. I
t ha
s24
I/O
pin
s w
hich
may
bei
ndiv
idua
lly p
rogr
amm
ed Ín
2gro
upso
f I2
anduse
din
3 m
ajor
mod
esof
ope
ratío
n.ln
the
first
mod
e {M
OD
E 0
), ea
ch g
roup
oí 1
2 I/O
pin
s m
ay b
e pr
ogra
mm
ed in
sei
s of
4 lo
be
ínpu
t or
out
put.
In M
OD
E 1,
the
seco
ndm
ode,
eac
h gr
oup
may
be
prog
ram
med
to h
ave
8 un
es o
i Ínp
ut o
r out
put.
Of t
he r
emai
ning
4 p
ins,
3 a
re u
sed
for h
and-
shaK
Ing
and
inte
rrup
t co
ntro
l sig
náis
. Th
e th
ird m
ode
of o
pera
tion
(MO
DE
2) i
s a
bidi
rect
iona
l bus
mod
e w
hich
use
s 8U
nes
for
a bi
dire
ctio
nai
bus,
and
5 H
nes,
bor
row
ing
one
from
the
oth
ef g
roup
, fo
r ha
ndsh
akin
g.
PIN
CO
NF
1GU
RA
TIO
N82
S5A
BLO
CK
D1A
GR
AM
-C »c ••c «'C «•c
D--
D-
3"
D6-
3-
PIN
ÑA
ME
S
DA
TA
«US
|BI
OIR
tCT
ION
AL
]
\ \
3255
A F
UN
CT
ION
AL
DE
SC
RIP
TIO
N
Ge
ne
ral
Tile
825
5A Is
a p
rogr
amm
able
per
iphe
ral i
nter
íace
(PPI
)de
vice
de
sign
ad
for
use
in
Inte
l*
mic
roco
mpu
ter
syst
ems.
Its
íun
ctio
n is
tha
t oí
a g
ener
al p
urpo
se 1
/0co
mpo
nen!
to
in
terf
ace
perip
hera
l eq
uipm
ent
lo t
hem
icro
com
pute
r sy
stem
bus
. Th
e fu
nctio
nal
conf
igur
a-tio
n of
the
325
5A is
pro
gram
med
by
the
sysl
em s
oftw
are
so t
hat
norm
ally
no
exte
rnal
log
ic is
nec
essa
ry t
o ín
ter-
face
per
iphe
ral
deví
ces
or s
truc
ture
s.
Dat
a B
us B
uff
er
Thi
s 3-
stal
e bi
dire
ctio
nal
8-bi
t buf
fer
is u
sed
to in
terf
ace
íhe
B255
A to
the
syst
em d
ata
bus.
Dat
a ¡s
tran
smitt
ed o
rre
ceiv
ed b
y th
e bu
ffer
upo
n ex
ecut
lon
of in
put
orou
tput
¡nst
ruct
íons
by
the
CPU
. Con
trol
wor
ds a
nd s
tatu
s inf
or-
mat
ion
are
also
tra
nsfe
rred
thro
ugh
the
data
bus
buf
fer.
Rea
oVW
rlte
and
Co
ntr
ol
Logic
The
func
tion
of t
hls
bloc
k ¡s
to m
anag
e al
l of
the
¡nte
rnal
and
exte
rna!
tra
nsfe
rs o
f bo
th D
ata
and
Con
trol o
r St
atus
wor
ds.
It ac
cept
s in
puts
fro
m t
he C
PU A
ddre
ss a
nd C
on-
trol
bu
sses
and
in t
urn,
¡ss
ues
com
man
ds t
o bo
th o
f th
eC
ontr
ol G
roup
s.
(CS
)
Chf
p S
alec
i. A
"lo
w"
on th
is i
nput
pin
ena
bles
the
com
-m
unic
tion
beíw
een
the
8255
A an
d th
e C
PU.
(RD
)
Rea
d. A
"lo
w"
on t
his
inpu
l pi
n en
able
s th
e 82
55A
tose
nd t
he d
ata
or s
tatu
s in
form
atio
n to
the
CP
U o
n th
eda
ta b
us.
In e
ssen
ce, i
t al
low
s th
e C
PU
to "
read
(ro
m"
the
8255
A.
(WR
)
Wrl
te. A
"low
" on
thi
s in
put
pin
enab
les
the
CP
U to
writ
eda
ta o
r co
ntro
l wor
ds i
nto
the
8255
A.
(AQ
and
A!)
Por
t S
elec
t O a
nd P
ort
Sel
ect
1. T
hese
inpu
t si
gnái
s, i
nco
njun
ctio
n w
ith
Ihe
RD
and
WR
inp
uts,
co
ntro
l th
ese
lect
ion
of o
ne o
f th
e th
ree
port
s or
the
con
trol
wor
dre
gist
ers.
Th
ey
are
norm
ally
co
nnec
ted
to t
he
leas
ísi
gnifi
can!
bits
of
the
addr
ess
bus
(A0
and
A,).
8255
A B
AS
iC O
PE
RA
TIO
NAi
! Ao
o 1
oQ
Í
1
i 1
o
1
RD 0 0 0
WR 1
es 0
1 1
01
1 0
INP
UT
OP
ER
AT
ION
1R
EA
O]
PO
RT
A -
DA
TA
BU
SP
OH
T B
- D
AT
A B
US
PO
RT
C-
DA
TA
BU
SO
UTP
UT
OP
EH
AT1
ON
(WR
ITE
)
o i
o I i
ID
AT
A B
US
-PO
RT
A
01
1
(
1
| O
í O
í D
AT
A B
US
- P
OR
T B
i !
o | i
j
o ¡
o
t D
ATA
BU
S- P
ORT
ci
1
x ¡
xi X
1
1 X 0
x 1
i
0 X 1 1
0D
AT
A B
US
-CO
NT
RO
L
DIS
AS
LE F
UN
CT
ION
1 Í
DA
TA B
US
-
3-S
TA
TE
0 0
1 ILE
GA
L C
ON
DIT
ION
DA
TA
BU
S -3
-ST
AT
E
(RE
SE
T)
Res
al. A
"hí
gh o
n th
is i
nput
cle
ars
the
cont
rol
regi
ster
and
all
port
s (A
, C, C
) ara
set
to
the
inpu
t m
ode,
Gro
up A
and
Gro
up B
Co
ntr
ols
The
func
tiona
l co
nfig
urar
on o
f ea
ch p
ort
is p
rogr
am-
mad
by
the
syst
ems
soft
war
e. In
ess
ence
, the
CP
U "o
ut-
puts
" a
cont
rol w
ord
to Ih
e 82
55A
. The
con
trol
wor
d co
n-ta
ins
info
rmat
ion
such
as "m
oda"
, "bit
set"
, "b
it re
seí"
,et
c.,
that
¡ni
tlaliz
es í
he f
unct
iona
l co
nfig
urar
on o
f th
e82
55.
Eac
h oí
th
e C
on
tro
l blo
cks
(Gro
up
A a
nd G
roup
B¡
acce
pts
"co
mm
an
ds"
(ro
m t
he
Re
ad
/Wri
te C
on
tro
l Logic
, re
ceív
es
"co
ntr
ol
wo
rds"
Ir
om
th
e ¡n
tern
al
data
b
us
an
d is
sues
th
e
pro
pe
r co
mm
ands
to
tts
asso
ctat
ed p
ort
s.
Co
ntr
ol
Gro
up
A -
P
ort
A a
nd
Po
rt C
upper
(C7-
C4)
Control G
rou
p B
-
Po
rt B
and
Po
rt C
low
er
{C3-
CO
)
The
C
on
tro
l W
ord
R
egis
ter
can
On
ly b
e w
ritt
en m
ío.
No
fiead
o
pe
ratio
n of
[h
e C
on
tro
l W
ord
ñe
gist
er
is a
llow
ed.
Por
ts A
, B
, and
C
The
8255
A co
ntai
ns t
hree
8-b
it po
rts {
A, B
, an
d C
). A
llca
n be
con
ftgur
ed in
a w
ide
varie
ty o
f fu
ncíio
nal
char
ac-
teris
tlcs
by t
he s
yste
m s
oftw
are
bul
each
has
its
own
spec
ial f
eatu
res
or"p
erso
nalil
y" t
o fu
rlher
enh
ance
the
pow
er a
nd f
lexi
bilit
y of
the
825
5A.
Por
t A
. One
8-b
it da
ta o
uipu
t la
tch/
buffe
r an
d on
e 8-
bit
data
inpu
t la
ten.
Por
t B
. One
8-b
it da
ta in
put/o
uípu
t la
tch/
buffe
r and
one
8-bi
t da
ta in
put
buff
er.
Por
t C
. One
8-b
it da
ta o
utpu
t la
tch/
buffe
r an
d on
e 8-
bit
data
inp
ut b
uffe
r (n
o la
tch
for
inpu
t}. T
his
port
can
be
divi
ded
into
tw
o 4-
bit
ports
un
der
tha
mod
e co
ntro
l.E
ach
4-bi
t po
rt co
ntai
ns a
4-b
it la
tch
and
it ca
n be
use
dfo
r the
con
trol
sig
na! o
utpu
ts a
ndst
atus
sign
al ¡
npul
sin
conj
unct
ion w
ith p
orts
A a
nd B
.
PIN
CO
NF
IGU
RA
RO
N
«C «c
Figu
re 2
. 82
25A
Blo
ck D
iígrim
Sho
wfn
g G
roup
A a
ndG
roup
B C
ontro
l F
uncl
lons
PIN
ÑA
ME
S
u, o
.B
isri
ci
RD
Wfl
*0. *l
f*;.'*
o'flí
*v)
Kirco
Vce
GW
O
DA
TA
BU
S t
al D
IFtE
CT
ION
AL]
flíS
tl
INW
I
CM
irS
EL
ÍCI
.1ÍA
D I
HW
T
unirt
if*fo
r«FU
AO
DB
ÍSS
«3R
T A
IBII1
fonr
aie
iil
*OB
id«
in
•SV
OÍ.
IS
9 V
OL
IS
%^^
:-*^^
?^^^
^^¿-
--^-
::-'--
-^k^
54^^
^ffi
aF
igure
1.
8255
A B
lock
Oia
gram
Sh
ow
lng
Dat
a B
us B
uffe
r an
d R
ead/
Wrii
e C
on
tro
l Lo
gic
Funci
lons
8255
A/8
255A
-5
8255
A O
PE
RA
TIO
NA
L O
ES
CR
IPT
ION
•
Mod
e S
eíe
ctlo
n
' :
Ther
e ar
e th
ree
baslc
mod
es o
f op
erat
íon
that
can
be
seíe
ct-
ed b
y íh
a sy
stam
sof
twar
e:
--
- -,
Mod
e O
-Ba
sic
Input/O
utp
ur
'•'M
ode
1 -
Stro
bed
Tnp
ut/O
utpo
tM
ode
2 -
Bl-D
írect
íona
) B
us
Whe
n th
e re
sal í
nput
goe
s "h
lgh"
all
port
s w
íl! b
e s
et lo
the
Inpu
l m
oda
(Le
., a
fl 24
Une
s w
ill b
e In
the
hig
h ¡
m-
peda
nces
lale
). A
ílert
he
re
séti
s re
mov
ed th
e8
25
5A
can
rem
ain
tn th
e In
pul m
ode
with
no
addi
tfon
at ¡
nítia
lizat
ion
requ
ired.
Dur
fng
the
axe
cutlo
n o
f th
a sy
ste
m p
rogr
aman
y o(
Ihe
othe
r m
odes
may
be
sele
cled
usl
ng a
sin
gle
outp
ut Inst
ruct
lon.T
his
allo
ws
a si
ngle
825
5A l
ose
rvlc
ea
varí
ety
of p
erip
hera
l de
vlce
s w
ith a
sim
ple
sof
twar
em
aint
enan
ce r
oulin
e.
The
mod
es fo
r P
ort A
and
Pon
8 c
an b
e se
para
tely
def
¡ned
,w
hile
Por
t C ís
div
íded
into
two
porií
ons
as r
equí
red
by t
heP
on A
and
Por
t 8 d
efin
ftion
s. A
tl o
f th
e ou
tput
regi
ster
s, ín
-cl
udin
g th
e st
atus
flip
-flo
ps.
will
be
rese
t w
hene
ver
the
mod
e Ís
chan
ged.
Moc
tes
may
be
com
bíne
d so
tha
t th
eir
func
tiona
l de
finíti
on c
an b
e "t
ailo
red"
to a
lmos
t an
y i/O
stru
ctur
e. F
or í
mta
nce;
Gro
up B
ca
n be
pro
gram
med
ín
Mod
e O
to m
onito
r si
mpl
e s
witc
h cl
osin
gs o
r dí
spla
y co
mpu
-ta
tiona
l re
sults
, G
roup
A c
ould
be
prog
ram
med
in M
ode
1to
mon
itor
a ke
yboa
rd o
r ta
pe re
ader
on
an in
terr
upt-d
riven
basí
s.
AO
Dn
tSS
SU
S
CO
NT
HO
L B
US
•41
ti
Jl
1—L"
MO
OC
l—^
1 &l\\\
iA
r
MO
OE
I —
[_£_
JS
NA
J
I 'i
j i
I J
tfB
I-O
'RE
CT
tON
AL
,O
t
í 1
I
í I I I
O
Fig
ure
3. B
asle
Mod*
Da
flnft
íon
i an
d B
us ln
l*rí
»c«
CO
NT
RO
L W
Oft
O
Fig
ura
4. M
oda
De
finitl
on
For
mal
The
mod
e defin
llíons
and
poss
ible
mod
e co
mbl
natlo
nsm
ay s
eem
con
fusi
ng a
t fir
st b
ut a
fter
a c
urso
ry r
evie
w o
fth
e co
mp
lete
dev
ice
oper
atío
n a
sim
ple
, ló
gic
a!
I/O a
p-pr
oach
will
sur
face
. The
des
ign
of t
he 8
255A
has
lak
enIn
to a
ccou
nt .t
hlng
s su
ch a
s effic
lent
PC
boa
rd lay
out,
con
tro
l sl
gnal
d
efln
itlo
n vs
P
C l
ayo
ul
and
com
ple
telu
nct
lonal
flexi
bill
ty t
o su
ppor
t al
mos
t an
y pe
rlphe
rai
devi
ce w
ith n
o ex
tern
al l
oglc
. S
uch
desi
gn r
epre
sent
sth
e m
áxim
um u
se o
f th
e av
aila
ble
píns
.
Sin
gle
Bit
Se
t/R
ese
t F
eatu
re
Any
of
¡he
eigh
t bi
ts o
f P
ort
C c
an b
e S
et o
r R
eset
usl
ng a
sing
le O
UT
put
ínst
ruct
íon.
Thí
s fe
atur
e re
duce
s so
ftwar
ere
quire
men
ts in
Con
trol-b
ased
app
lícat
ions
.
*25
5A
y82
55
A-5
CO
WT
NO
LWQ
RD
Flg
ur»
5.
BU
Sst
fRe
ist
Fom
ut
Whe
n P
ort
C Ís
beí
ng u
sed
as st
atus
/con
trol f
or P
ort A
or
B,
thes
e bi
ts c
an b
e se
t or
res
et b
y us
tng
the
Bít
Set
/Res
et o
p-er
atio
n Ju
st a
s íf
they
wur
e da
ta o
utpu
t po
rts.
inte
rru
pt
Co
ntr
ol
Fu
nct
lon
s
Whe
n th
e 82
55A
Is
prog
ram
med
to
opér
ate
In m
ode
1 or
mod
e 2,
co
ntr
ol s
igná
is a
re p
rovl
ded
that
can
ba
used
as
Inle
rrup
t re
ques
t In
puts
to
the
CP
U.
The
Int
erru
pt r
e-qu
est
sign
áis,
gen
erat
>ad
(rom
por
t C
, can
be
inhl
bfte
d or
enab
led
by
sett
lng
orr
ese
ttín
g th
e a
sso
cla
ted
INT
E M
ip-
flop, us
lng tíie
bit
seU
rese
t (u
nct
lon
of
port C
.
This
fun
ctío
n al
low
s th
e P
rogr
amm
er t
o di
sallo
w o
rallo
w a
spec
ífic
I/O d
evic
e to
int
erru
pt t
he C
PU
with
ou
t af
fect
íng
any
othe
r de
vice
ín t
he In
terr
upt s
truc
ture
.
INT
Eft
íp-f
iop
de
finiti
on
:
(B IT
-SE
TJ -
IN
TE
¡it S
ET -
In
terr
upt
enab
le-
(BIT
-RE
SE
Tl -
IN
TE is
RE
SE
T -
Inte
rrup
t di
sabl
e
Not
e:
Alt
Mas
k fll
p-flo
ps a
re a
utom
atic
ally
re
set
durin
grn
ode
sele
ctio
n an
d de
vice
Res
et.
Op
era
llng
Modes
MO
DE
O {
Bas
le In
put/O
ulpu
t). T
his
func
tiona
l con
figur
a-tlo
n p
rovf
des
sim
ple
Inpu
t an
d o
utp
ut
oper
atlo
ns (
orea
ch o
f th
e th
ree
port
s. N
o "h
anda
haM
ng"
ís r
equi
red,
data
Is
stm
ply
wrf
tten
to
or r
ead
(rom
a s
pe
clfle
d port
.
Mod
e O
Bas
ic F
unct
iona
l Def
íniti
ons;
• T
wo
8-b
it po
rts a
nd
tw
o 4
-bit
ports
.•
Any
por
tean
be
Ínpu
t or
outp
ut.
• O
utpu
ts a
re la
tche
d.•
Inpu
ts a
re n
ot
latc
hed.
• IS
diff
eren
t In
put/O
utpu
t con
figur
atlo
ns a
re po
ssiW
eÍn
thís
Mod
e.
>c(3
. A
I.A
O
-\E
O (
Bule
Inp
ut)
CI.
A1
.AO
X
MO
DE
O (B
aile
Out
put)
*82
55A
/825
5A-5
<*>82
55A
y825
5A-5
MO
DE
OP
ortD
efln
ltlon
A
o* 0 0 0 Q.
0'
0 0: 0 1- i; 1. 1 t 1 I 1
D3
0 0 0 0 1 1 1 I 0 0 0 0 1 1 1 1
B
D!
0 0 t 1 0 0
DO 0 1 0 1 0 11
0
1 0 0 1 1 0 0 ] 1
1 0 1 D 1 0 1 0 1
GR
OU
P A
PO
RT
A
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
1NP
UT
INP
UT
INP
UT
INP
UT
INP
UT
INP
UT
INP
UT
INP
UT
PO
RT
C
(UP
PE
R}
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
INP
UT
INP
UT
INP
UT
INP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
OU
TP
UT
INP
UT
INP
UT
INP
UT
INP
UT
* 0 1
GR
OU
P 8
PO
RT
B
OU
TP
UT
OU
TP
UT
2
| IN
PU
T
3 4 5 6 7 8 9 10
11 12 13 1-*
15
INP
UT
OU
TP
UT
OU
TP
UT
INP
UT
INP
UT
OU
TP
UT
OU
TP
UT
INP
UT
INP
UT
OU
TP
UT
OU
TP
UT
1NP
UT
INP
UT
PO
RT
C
(UO
WE
Rl
OU
TP
UT
INP
UT
OU
TP
UT
INP
UT
OU
TP
UT
INP
UT
OU
TP
UT
INP
UT
OUTP
UTIN
PU
T
OU
TP
UT
INP
UT
OU
TP
UT
INP
UT
OU
TP
UT
INP
UT
CO
KT
HO
LW
OH
OtO
O,
D,
0+
O,
O,
D,
O,
D,
CO
NT
RO
L W
OR
D »
J
O,
D,
O,
O.
O,
O,
O,
O,
10
0
O
00
1
1
.
CO
NTn
OLH
OM
lil
0,
D,
D,
D.
0,
tyo,
-"
-•
•
, *Z
UA
• '«
I 1
•
°(
°1
0.
USÍ
A
- J
..: 1
/*
ir
»1
*
/•
,
• '
'
•
,
^
-f^-^
— /
iVS
.
- - CO
NTR
OL
MJR
O «
.-
O,
D,
O,
D,
0,
.
- Í344
*
-'
- '
0,
0,
0.
0
m&
A •c
-f 1
'*
rx.F
A.
-- ,'
-K
.-T
.
.4
„ ,
' '
- T¿-Í
«,-fC
,
'*
nurn
. . . •
; , y
CO
NT
RO
L «
OR
O M
0,
0,
t\,
Oj
i o
o
»
i
CONT
HOL
nono
**
0,0
,0
,0
, D
,
1
0
0
Q
1
CO
NT
RO
L «O
HD
•*
0,
0,
0,
0,
0,
1
D
0
0
1
CO
NTW
H. I
tOH
O
rt
D,
0,
D,
04
O,
!
10
00
1
0,
0,
0,
0 0
0
13S
4A
cí 1
Bj
0,
D,
o a i A
US
ÍA
J 1
0,
0,
0,
0
1
0
«2*¿
A cr 1 a
0,
D,
0,
0
1
1
I2U
A
«í 1 1
,1
'
'4 ^
r*i-*\
-
¡í ÍC
j-ÍC
,
y r^
a,
-j- K
,-*:
,
'*
FC
..C
.
,, / • fA
,.fA
,
,»
• f
f*j '•fl
CO
NIR
OL*O
«t>
-«
t>I
°i
°i
°4
DJ
1
0
0
1
Q
°'0
'
OW
TR
OL
WQ
flO
*!
Oj
D,
B,
D,
Oj
1
0
Q
1
0
D»
°í '
CO
NT
RO
L rf
OR
O «
10
0,
0,
0^
0,
0,
10
01
0
D,
D,
• •
•
CO
NT
RO
L W
OA
O* 1
1
0,
D,
D,
0,
D,
1
0
0
1
0
D,
D,
0,
00
0
US
ÍA
cJ
• 1
D,
D,
0,
0
0
I
- A
ttttA
J
1
0,
S,
D.
0
11
0
nsM
c-T i •
°»
°i
D.
0
1
1
tnu
cí L t
",
— /
fAj
.^s
rc,
c.
/*
rc.,
r-
''
ra
• '
^
• P
*,-r
s
i *rc
,^c
t
/
' '"^
•
,i 7 »
. •
',
' -
/i
..
/*
r rr
M
-,
¿í
re,.!*,
• /
r»,-t*»
8255
A/8
255A
-5J»
:82
55A
/825
5A-5
CO
«T
RO
HV
OR
O*I
I
O,
Ot
Dj
D,
Dj
l|.|.| . | .
- '
' CO
NTR
OL
WO
RD 'U
°,
D,
D,
D,
Dj
. |
'|
'|
< |l
D,
0,
0,
oí
sl
o \A
JL B
D,
0,
00
|.|.|,
«SS
A rr L
.'
™
• "
~~ '*! "S
/
PC, P
C,
,* ,* ;
n,n
,
s t~
r— —
• 'C
,'C|
-
f- K
j'S
(
CO
NTR
OL
VO
nO
«H
D,
D,
0,
0,
Dj
1 0
0 I
1
j |
0, 0,
-
CO
NTR
OL
WO
HO
«15
D,
04
0^
0,
D,
i o
1
a 1
1 i
~
D,0
0
- .
..
0,
0,
D(
l'l
' °
A
tIS
SA J
1 e
DI
D,
0,
|.|,
,
Í1S
SA c
-f °L
7^
f A
,-M
,
A1
re,
PC,
,;'
tC
j-K
,
tf
»}.P
Bg
-
/ 'V
'*»
- r
"V^o
''
nu
rn.
STB
(S
Irob
* In
pul).
A "
low
" on
thls
Inp
ut lo
ada
data
Into
Ihe m
pul
latc
h.
.
IBF
([n
pu
t B
uff
erF
uH
F/F
)
A "h
igh"
on l
h¡s
outp
ut i
ndíc
ales
tha
t th
e da
ta h
as b
een
load
ed in
to t
he ¡n
put
latc
h; in
ess
ence
, ana
ckno
wle
dgem
ent.
IBF
ís
set b
y S
TB ¡n
put
bein
g lo
w a
nd ¡i
res
et b
y th
e ris
ing
edge
of
the
RD
inpu
t.
INT
R (
lnt«
rrupt
Re
qu
ast
)
A "
híg
h"
on thíi
outp
ut c
an b
e us
ed to
Int
erru
pt t
he C
PU
whe
narv
Inp
ut d
evíc
e is
req
uest
ing
serv
ice.
IN
TR
Is
set
byth
e ST
B- ¡
J a
"one".
IB
F it
a "o
ne"
and
INT
E ís
a "
one".
It ir
rew
't by
th*
fal
líng
edge
of
RO
. Thi
s pr
oced
ure
allo
wi
an í
nput
. dev
íce
to r
eque
st s
ervi
ce f
rom
the
CP
U b
y si
mpl
yitr
obín
g ¡ti
dat
a in
to th
e p
or t.
INTE
A
Con
trofle
d by
bit
set/r
eset
of
PC
4.
INTE
B
' .
Con
trolle
d by
bit
set/r
eset
of
PC
2.
k*Q
OE
1 (f
OR
T A
)
O.
Oí
O.
Pj °l
D,
Os
«..I
*—
I •
INM
PA
, P
A,
r t D
KO
t i tr
onr a
)
CC
WIfl
OL
«O
RO
D,
D,
D,
0,
0, 0,
D,
0,
' ÍX
NX
ÍX]
1 1 1
(XI
RB
c
r — -i
IT
' J ;••
HT n
"i'S
re,
&' m
.
inr,
ifirm
.
Flg
ur»
8.
MO
DE
1 In
put
Op
era
tln
gM
odas
MO
DE
1 (
Str
obad
In
pul/O
utpu
t).
Thl
s fu
nctlo
nal
con-
figur
atfo
n pr
óvid
as a
mea
ns í
or t
rans
íerr
lng
I/O d
ata
loor
fro
m a
spe
cifie
d port
ín
con
jun
ctio
n w
ith s
trob
es o
r"h
andsh
akl
ng"
signáis
. In
mod
e 1,
por
t A
and
Por
t B
use
the
Une
s on
por
t C
to
gené
rate
or
acce
pt t
hese
"ha
nd-
shakl
ng"
signáis
.
Mod
e 1
Basi
c F
unct
íona
l Def
inltí
ons:
• T
wo
Gro
ups
(Gro
up A
and
Gro
up B
) "
• Ea
ch g
roup
con
tain
s on
e 8-
bit
data
por
t an
d on
e 4-
bit
cont
rol/d
ata
port
.•
The
8-b
it da
ta
port
can
be
eith
er i
nput
or
outp
ut.
Bot
h ín
puts
and
out
puts
are
latc
hed.
• T
he 4
-b¡t
port
is
used
for
con
trol
and
sta
tus
of t
he8-
bitd
ata
port
. -
Fig
ura
7.
MO
DE
1 (S
troo
*d I
nput
)
836
0074
4A
82
55
A/8
25
5A
" •f8255A
/8255A
-5
Out
put
Con
trol
Slg
nal
Do
ílnltl
on
OB
F (
Oulp
ul B
ullir
Ful!
F/F
). T
he O
BF
ou
tpu
t w
lll g
o"low
" lo
Indíc
ala
th
at
the C
PU
has
wrl
tte
n d
ata
out
toth
e sp
ecK
Ied p
ort
. The
OB
F F
/F w
lll b
e s
el
by
the r
isin
ged
ga o
í th
e W
R In
pul and
re
set
by
AC
K I
nput
bein
g l
ow
.
ÁC
K (
Ack
now
ladge In
put), A
"lo
w"
on t
hls
ín
pu
t In
form
sth
e B
255A
tha
t th
e da
ta f
rom
po
rt A
or
port
B h
as b
een
ac-
ceple
d.
In
ess
ence
, 8 r
esp
on
so
(ro
m
the
periphera
lde
vtce
Indlc
atln
g t
hat
U h
as r
ece
lved
th
e d
ata
ou
tpu
t b
yth
e C
PU
.
INT
R (
Inte
rrU
pt R
«qu«it)
. A "hlg
h"
on
th
ís o
utp
ut
can b
eus
ed t
o In
terr
upt Ih
e C
PU
when
an o
utp
ut
de
vice
has
ac-
cep
ted
da
ta t
ran
smltt
ed
by
the
CP
U.
INT
R ¡
s se
t w
he
nA
CK
la a
"one",
OB
F ís
a "o
ne"
and IN
TE
Is a
"one".
U Is
rese
t by
the
falll
ng e
dge
of
WR
.
INTE
A :
.
Con
trol
led
by
bit
set/r
eset
of
PC
6.
INT
E B
Con
trol
led b
y bit
set/r
eset
of
PC
2.
MO
Dt
I jf
OR
T A
l
CO
NT
RO
CW
OR
O
D,
D, 0,
D,
I1!
0!
1!"
0,
D,
0,
D,
>«Í
X!X
ÍX]
•.t0
-OU
Tfu
r
CT
-o
TV
'*,
"I
IN
TE I
,(•
1 A
1
^
(
TC«.
1
A> 7
5ffrA
CO
NTR
OL
nQ
flO
O,
Ü,
O,
D,
O,
D,
D,
O,
Fig
ura
S.
MO
OE
1 O
uip
ut
PC
,
- CB
F,
- JE
CR
,
- IK
IR,
Com
blna
tlonn
of
MO
DE
1.
Por
t A
an
d P
ort
B c
an b
e In
diví
dual
ly d
efin
ed a
s ¡n
put
oroutp
ut
In M
ode
1 to
sup
port
a w
íde
var
íety
of
stro
bed
1/0
appllc
atlo
ns.
CO
WT
RO
LW
OR
O
'l«
|ih
HM
«lX
l
L--'
"— i
• w
nno-
ouin
rr
TA
.FA
,
- -
«,-r
e. fC,
<^ 1
^>
«r.
"IH
TB
,
TO
RT
A -
mfl
OB
EO
INTU
TI
PO
RT
8 -I
ST
flO
BE
DO
UT
rUtl
CO
NT
RO
L «
OflD
D,
D,
D,
0.
D,
D,
D,
Tlf
lN°H
'i'f
Xl
'V'S 'S
,
roflT
A -
isTR
osE
o o
tnw
/nK
WT
B -
(S
TR
OB
ED
IfífU
Tl
Fig
ura
10.
Co
mb
tna
tlon
s oí
MO
DE
1
Fig
uro
9.
Mod
e 1
(S
trobed
Outp
ut)
Op
era
tln
g M
odas
MO
DE
2(S
trob«d B
ldlract
lonal
Búa
I/O
). T
hls
funct
lonal
con
dg
ura
tio
n p
róvi
dos
a m
eans
íor
com
muníc
atin
g w
lth
a periphera
l de
vice
or
str
uctu
re o
n a
single
8-f
ait
bus
for
bolh
ira
nsm
fltf
ng
and
re
ceiv
ing
da
ta (
bid
irect
lonal
bus
t/O)
"Handsh
aki
ng"
signáis
are
pro
vfde
d
to m
am
taln
pro
per
bus
flo
w d
isci
plin
e I
n a
sim
ilar
manner
to M
OD
E1.
Inte
rru
pt
ge
ne
ratio
n a
nd e
na
ble
/dfs
ab
le í
unct
ions
are
ata
o a
valla
bfe
.
MO
DE
2 B
asl
e F
unct
lonal
Oe
flnlti
on
s:•
Use
d ¡n
Gro
up A
only
.•
One 8
-bIt,
bí-
dire
ctio
nal
bus
Por
t (P
on A
) and
a 5
-bít
contr
ol
Por
t (P
ort
C).
• B
oth
¡np
uts
and
ou
tpu
ts a
re fa
tche
d.•
The
5-b
it co
ntr
ol
port
(P
ort
C)
Ís u
sed
for
contr
ol
and
stat
us f
or t
he 8
-bít,
bi-d
irect
ional
bus
pon
(P
ort
A).
Bid
ire
ctlo
na
l B
us
I/O C
on
tro
l S
ign
al
De
fin
ltlo
n
INT
R (
Inl0
rrupt
R«q
u«st
). A
hlg
h o
n t
hls
ou
tpu
t ca
n b
eu
sed
to in
terr
up
t th
e C
PU
íor
bo
th In
put
or
ou
tpu
t opera
,tlo
ns.
Ou
tpu
t O
pe
ratlo
ns
OB
F (O
utp
ut
Buíle
r Fu
l). T
he O
8F
outp
ut w
lll g
o "lo
w"
to I
nd
íca
te t
hat
the C
PU
ha
s w
rftt
en
da
ta o
uí
to p
ort
A.
AC
K (
Ack
now
lsdga).
A "
low
" o
n í
hls
Input
enable
s th
etr
i-sl
ate
ou
tpu
t b
ufle
r o
f p
ort
A t
o s
en
d o
ut
Ihe
data
.O
the
rwís
e,
the
ou
tpu
t b
uff
er
wlll
be
ín
th
e hlg
h Im
-pedance
sta
te.
INT
E1
fT
h« I
NT
E.F
IIp-F
lop A
uocla
Ud
wilh
OB
FV
Co
n-
trolle
d b
y bit
set/
rese
t oí
PC
S.
Input
Ope
ratio
ns
-•
-
STB
(S
trob
« In
pu
t)
ST
B (
Str
ob*
Input). A
"lo
w"
on
thls
Inp
ut l
oads
da
ta in
toth
e Í
nput
latc
h.
IBF
(In
put
Bulía
r Full
F/F
). A
'"hig
h"
oh
thls
outp
ut
In-
díc
ale
s th
at
da
ta h
as
been loaded
ín
to t
he I
nput
latc
h.
INT
E 2
{T
h« I
NT
E F
llp-F
lop
Asa
ocl
ate
d w
lth
IB
FV
Con
-tr
olle
d b
y bit
set/
rese
t o(
PC
4,
8255
A/8
255A
-5
D,
D,
re,
n r-~
-i
Q -
lj-
ronr
a1-
1NW
To
-otn
rur
PC
,
Fig
ura
11.
MO
OE
Contr
ol W
ord
Fig
ura
12.
MO
DE
2
A
\ '"-'—
\
- .
" ',.! —
j 1
; /
j y,
,
«RtfH
ER
At
_/
BUS
\ " /
/ .„[_
t 1 1
J
'
/ \
\-
\ i
-A U
*.
DA
TA F
RO
M
.''
PE
HIP
HE
RA
LIO
Síií
A
DA
TA F
RO
M
.-lli
SA
TO
PE
RIC
ME
RA
L
/D
ATA
FflO
M,
'
IIíiA
TO
100
0
Fig
ure
13
. M
OD
E 2
(B
ldlr
ectlo
nia
lJ
NO
TE
: A
ny
«*qu
ef>«
wh«
fe W
S o
ccun
bef
of«
A^K
arx
j ST
Boc
cUri
b*Í
ote
RD ii
perm
iuib
l*.
(1N
TR •
IB
F •
MA
SK
• S
TB
• R
D f
OB
F «
MÁ
SK
• A
CK
• W
R 1
'$8255
A/8
255
A-5
^;
MO
OE
CO
NTH
OI.Y
VO
HO
°í °| °i
0,
D,
D, D
, O
,
I'!'!X
IXÍX
!° i|» ,J i -iNnn
o • ouifu
i
TO
-<
su
^
MO
DE
2 A
CO
NT
HO
LifO
HB
0,
D,
Di
0,
Dj
0,
D,
0,
' 'M
XM
' -I
X)
So
1
2 A
NO
MO
DE
Oll
NP
UT
)
'*>•'*• C
*""
3fc
,0
/
• iro
•*»•"
• ^ '
1
ND
MO
OE
1 t
OU
TP
UT
)
'*'•**
• C
lUv'
rtj «
, i_
N
-
MO
OE
2A
N
CO
NTR
OL.
mO
HO
D!
D.
D,
D,
Dj
D,
D,
D,
I1 'ÍX
IXIX
H'H
,J
\-m
nn
o-o
um
/r
MO
DE
CO
MTP
OL
«W
O
'
D,
D,
D,
D,
O,
Oj
D,
D,
1' '[X
IXM
' -ÍX
I
wn
c
- '
'
DM
OD
EO
lOU
TP
UT
l
re,
'*?•'% «=
»
«:,
«:«
«»
«=M
«,.«,
(fíT
R^
OM
X
- ...
mk
1 /
1X1
? A
ND
M
OD
E1 (
INP
UT
)
'S
rA,*
*,
fC,
. «,
. f .
K>
fC,
«,-«,
«i
re,
«.
co
• "'A
.
.
(Tt,
— IB
/,
BíT
W,
•) i .':
: •
J
Fig
ure
14.
MO
DE
2 C
om
bin
allo
ns
8255
A/8
255A
-582
55A
/825
5A-5
Moda
Oe
llnft
lon
Sum
mar
y
PAQ
PA
,
PA
2
PA
3
PA
4
PA
5
PA
fiP
A7
PB
4
PC
Q
PC
j
PC
2
PC
3
PC
4
PC
s
PC
g
PC
7
MO
DE
OIN IN IN IN IN IN IN IN IN IN IN IN IN IN IN IN IN IN IN
OU
TO
UT
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
; 1
MO
DE
1IN IN IN IN IN IN IN IN IN IN
INTR
gIB
FB
STB
B
!NT
RA
STB
A
IBF
A
1/0 110
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
OU
T
INT
RB
OB
FB
AC
KB
INT
RA
110
I/O
AC
KA
OB
FA
MO
DE
2
GR
OU
PA
ON
LY
-*
+-
-«
*-
-*
»-
-«
»_
-*
»-
-*
»-
-*
*-
-«
*-
I/O I/O i/o
INT
RA
ST
BA
ISF
A '
AC
KA
08
FA
...
- O
RM
OD
E I
Specl
al
Mo
de
Co
mb
lna
tlon
Co
nsl
de
ratí
on
s
The
re a
re s
ever
al c
ombi
natío
ns o
f m
odes
whe
n no
t al
l of
the
bíts
tn
Pon
C a
re u
sed
for
cont
rol or
sta
tus.
Th«
rem
aini
ngbí
ts c
an b
e us
ed a
s (o
llow
s:
I f P
ro_i
ram
med
as
Inpu
ts —
All
¡Ppu
t un
es c
an b
e a
cces
sed
durín
g á
nor
mal
Pon
Cre
ad.
If P
rogr
amm
ed 3
í Out
puts
—B
íts ¡
n C
upp
er (
PC
7-pC
4) m
ust
be ín
div
idually
acc
esse
dus
íng
the
bits
et/r
eset
íunct
íon.
Bits
ín
C lo
wer
(P
C3.
pCo)
can
be
acce
ssed
usí
ng t
he b
itse
t/res
et f
unct
ion
or
acce
ssed
as
a th
rees
ome
byw
rítin
gin
to P
ortC
.-
Sou
rce
Curr
en!
Ca
pa
blll
ty o
n P
ort
B a
nd P
orl
C
Any
se
l of
jlg
ht
outp
ut
buffe
rs,
sele
cted
ran
dom
ly f
rom
Por
ts B
and
C c
an s
ourc
e Im
A a
i 1.
5 vo
lts.
Thi
s fe
atur
eat
iow
s th
e 82
55 t
o dt
rect
ly d
rive
Dar
língt
on t
ype
driv
ers
and
high
'Voi
tage
dls
play
s th
at r
equi
re ju
ch s
ourc
e cu
rren
t.
Rea
ding
Port
C S
tatu
s
In M
ode
O, P
ort
C t
rans
fers
dat
a to
or
from
the
per
íphe
ral
devl
ce.
Whe
n th
e 82
55 is
pro
gram
med
to f
unct
ion
Ín M
odes
1 or
2,
Pon
C g
ener
ales
or
occe
pts
"han
d-sh
akín
g" s
igná
isw
íth
the
per
lphe
ral
devi
ce.
Rea
ding
the
con
tent
s of
Por
t C
allo
ws
the
pro
gram
mer
to
tes
t orv
eri
fy t
he "
statu
s" o
f ea
chpe
riphe
ral
devi
ce a
nd c
hang
e th
e p
rogr
am f
low
acc
ordi
ngly
.
The
re i
s no
spe
cial
inst
ruct
ion
to
read
the
sta
tus
Info
rma-
tion
fr
om
Por
t C
. A
nor
mal
re
ad o
pora
tion
of
Port
C Is
exec
uted
to
per
form
thls
funct
ion.
INP
UT
CÜ
Nfl
CU
nA
TIO
N
O,
O,
D,
O,
D,
O,
O,
O,
l/OU
OIB
Ft
INT
E,.
INIR
AIN
TE
,.,.
IMIB
,
OU
IPU
T C
ON
FIG
UR
A IIO
N
°J
°»
°»
D.
Dj
D,
D,
Oa
B&
*.
"NTE
A
ÍIOtía
INIR
^IN
TE
,55
T,
INT
R,
Fig
ure
15.
MO
OE
1 S
tatu
s W
ord
For
mal
O,
O,
Ov
O,
Dj
D,
O,
O,
CR
OL
» A
^
^.C
RO
Ora
tflN
ED
OY
MO
OC
O O
H M
OO
E 1
SE
LE
CT
KW
l
AP
PL
ICA
TIO
NS
OF
TH
E 8
255A
The
82
55A
la
a
very
po
wer
ful
tool
fo
r In
lerf
acin
gpe
rlphe
ral
equl
pmen
t to
(he
mlc
roco
mpu
ter
syst
em. U
repr
esen
ta Ih
e op
tlmum
use
oí a
valla
ble
píns
and
la f
lex-
ible
eno
ugh
to I
nter
face
alm
os!
any
I/O d
evic
e w
llhou
tth
e ne
ed f
or a
ddtll
onal
ext
erna
! lo
glc
.
Eac
h pe
riphe
ral
devl
ce
in
a m
lcro
com
pute
r ay
stem
uaua
lly h
aa a
"ae
rvlc
e ro
utíne"
aaso
cial
ed w
ith
it. T
hero
utln
e m
anag
os
the
soft
war
e In
terf
ace
betw
een
the
devi
ce
and
tho
CP
U.
The
fun
ctlo
nal
defí
nftio
n oí
Ihe
8255
A ia
pro
gram
med
by
the
l/O s
ervl
ca r
outln
e an
dbe
com
es a
n ex
tena
fon
of t
he a
yate
m s
oftw
are.
By
ex-
amln
lng
th
e l/O
dev
icea
In
terf
ace
char
acte
rlstlc
a io
rbo
th d
ata
tran
sfer
and
tlm
lng,
and
mat
chm
g th
ls I
nfor
-m
atio
n to
Ihe
exam
plea
and
tab
les
In th
e de
talle
d op
era-
tlona
l de
scri
ptlo
n, a
con
trol
wor
d ca
n ea
slly
be
deve
l-op
ed í
o In
itiai
ize
Ihe
825
5A t
o ex
actly
"fit"
the
app
lica-
tlon.
Fig
ures
17
thro
ugh
23 p
reae
nt a
few
exa
mpl
ea o
fty
pic
al
appl
lcat
ions
of
the
8255
A.
INTE
RR
U
RE
QU
ES
PT
I
«3
MQ
OE I
loin
rui)
~
*OSA
MO
OE
lou
mm
"
PC,
PA
o
PA
,
PA
,
'S PA
,
'N 'S PA
,
"h
PC
*
«»
PC
.
ra,
PB
,
"4 PB
a
rt,
«í
Pfl,
PB
,
PC
,
_f°S
DA
TA
RE
AD
Y
AC
K
PA
PE
R F
E£
D
FO
RM
AR
D/R
EV
DA
TA
RE
AD
Y
AC
K
0 * P F< R C.
HIG
M-S
PE
ED
PBIN
IEH
_
HA
MM
ER
RE
LA
YI
AIA
RE
AO
Y
CK
VE
RF
EtO
IftW
AR
D/H
EV
6B
ON
IRR
IAG
E
SE
N.
CO
NT
RO
L L
OG
IC A
ND
OR
IVE
RS
Flg
ur»
17.
Prlnttr
Inte
rtsc
»
INIE
RR
Ufl
RtQ
UE
ST
«3
US
ÍA
MO
DE
1tIN
PU
TI "
MO
OE
1lO
UT
nJT
J*
K,
PA
,
f^S
f*1
PA
,
PS
'**
PA
,
PC,
J6*
~«a
PB
,
«í
'«j
P9,
PB
,
Pfl, re,
PC
,
«I
PC
.
-fC
>
*, «1 R,
FU
LU
Y„
D
CC
OO
ED
">
KtY
BO
AR
O"i
.
S SH
IFT
CO
WT
HO
L
sino
oEA
CK
8fl
,.
BU
RftO
UC
HS
* S
ELr-
SC
AN
B,
DIS
PL4Y
B,
Sí
BA
CJC
SP
AC
C
CLE
AB
-
OA
I^R
EA
OY
AC
K\D
INT
EB
RW
TR
EO
UE
ST
Fig
ure
18.
Kay
boar
d an
d D
Ispl
ay I
ntsr
face
RE
OU
EÍT
PC
,
MO
DE
1
IINP
UT)
~
I2S
*A
MO
OE
0
IINP
UD
~
PA
,
PA
,
P*J
PA
,
PA
4
"S '*.
PA
,
PC
,
PC
,
PC
.
PC
,
""•
P8,
«1
re,
P8,
«1
Pfl, n,
«0 "i «í _
FU
LLV
">
DE
CC
OE
OR
)
KE
YB
OA
BD
". SH
IFT
CO
fíIH
OL
5T
RO
6E
AC
KN
OW
LE
DG
E
BU
SY
LT
TE
ST
LT
.
<f
*t
<f"
"~ -
D
<f
t)
•f'
>3
¿"
^3
Fig
ur*
18.
MO
DE
2 S
litu
s W
ord
For
mat
Fig
ure
19.
Kty
boar
d in
d T
erm
ine)
Add
ress
into
rfic
*
Nat
iona
lS
emic
ondu
ctor
3AC
0830
/DA
C08
31/D
AC
0832
íom
patib
ie, D
oubl
e-B
uffe
red
gene
ral D
escr
iptio
nhe
DA
C08
30 is
an
adva
nced
CM
OS
/Si-C
r 8-
bit m
ullrp
ryin
gIA
C d
eslg
ned
to
Inte
riace
dire
ctly
with
the
808
0, 8
048,
085
ZSO
» an
d ot
her
popu
lar
mic
ropr
oces
sors
. A d
epos
it-d
silic
on-c
hrom
ium
R-2
R re
sist
or la
dder
net
wor
k di
vide
sle
rsf
eren
ce c
urre
n! a
nd p
rovi
des
the
circ
uit
with
exc
elle
ntsm
pera
ture
tra
ckin
g ch
arac
teris
tics
(0.0
5% o
f P
ulí
Sca
lela
nga
max
impm
line
arity
err
or o
ver
tem
pera
ture
). T
he c
tr-ui
t us
es
CM
OS
cur
rent
sw
itche
s an
d co
ntro
l lo
gic
toic
htav
e lo
w p
ower
con
sum
ptio
n an
d lo
w
outp
ut l
eaka
geur
rent
err
ors;
Spe
cial
drc
urtry
pro
vide
s T
TL
logi
c in
put v
olí-
ige
leve
l com
patib
illty.
)oub
le b
utfe
nng
allo
ws
thes
e D
AC
s to
out
put
a vo
ltage
cor-
sspo
ndin
g to
one
dig
ital w
ord
whí
le h
oldi
ng t
he n
ext
digi
tal
•rd.
Thi
s pe
rmits
the
sim
ulta
neou
s up
datin
g o
f an
y nu
m-
-MD
AC
s.1
^AC
0830
ser
ies
are
the
8-bi
t m
embe
rs o
f a
fam
ily o
f•o
cess
or-c
ompa
tible
DA
Cs
(MlC
RO
-DA
CTM
). Fo
r ap
-is
dem
andi
ng h
ighe
r res
olut
ion,
the
DA
Cl 0
00 s
anes
.S)
and
íhe
DA
Cl 2
08 a
nd 0
AC
1230
(12-
b¡ts
) ar
e av
ail-
> íít
emat
ives
.
8-B
it j
aPD
to A
Co
nve
rte
rsFe
atur
es
*•
Dou
ble-
bufíe
red,
sin
gle-
buffe
red
or
tlow
-thr
ough
dig
ital
data
inpu
ts•
Eas
y ¡n
terc
hang
e and
pt
n-co
mpa
tible
w
ith
12-b
itD
AC
l 230
ser
ies
m D
irect
mte
rfac
e to
all
popu
lar
mic
ropr
oces
sors
• Li
near
ity s
peci
fied
with
zer
o and
full
scal
e ad
just
onf
y—N
OT
BE
ST
ST
RA
IGH
T L
INE
FIT
. :
B W
orks
with
±10
V r
efer
ence
-ful
l 4-q
uatir
ant
mul
tiplic
atio
nB
Can
be
used
in t
he v
olta
ge s
witc
híng
mod
es
Log
ic i
nput
s w
hich
mee
t T
TL
volta
ge le
vel s
pecs
(1.
4Vlo
gtc
thte
shol
d)t
Opé
rale
s "S
TA
ND
ALO
NE
" (w
ithou
t p.
P) H
des
ired
n A
vaila
ble
ín 2
0-pi
n sm
all-o
utlin
e o
r m
olda
d c
hip
carri
erpa
ckag
e
Key
Spe
cific
atio
nsE
Cur
rent
sat
tling
tim
e•
Hes
olut
ion
tu U
near
iíy(g
uara
ntee
d ov
ar t
emp.
)a
Gaí
n T
empc
os
Lo
w p
ower
dis
sípa
üon
a S
ingl
e po
wer
sup
ply
1 ¡i
s8
bits
.8,
9,
or 1
0 bi
ts
0.00
02%
FS
/*C
20 m
W
5to
15
Vo
c
Typ
ical
App
licat
ion
Allo
wi
easy
Up
gra
de
lo 1
2-b
lt D
AC
1230
,S
aa a
ppüc
atio
n h
mts
Con
nect
ion
Dia
gram
sD
ual-l
n-U
ne a
ndS
mal
I-Out
lIne
Pac
kage
s
Mo
lda
d C
hip
Car
rier
Pac
kage
OH -
mit
in-
. w
,
-9>
M"»
I-W
»-W
i
tThis
is n
ecea
sary
(or
tno
12-b
itD
AC
1230
sori
aslO
p«nn
¡t in
iefc
hangin
g fro
m
an
S-b
itlo
a 12
-tít
OA
C
wítti
No
PC
bo
ard
ch
ang
a
and
no s
of^
B/e
cha
ngos
,
Se«
appüca
üoni se
ctio
o.
I 1
1 I
IU
17
U19 20 I 1 i \
J
1
li
14IS i: 11 10 i
7 !
—
r3so
lute
ívt
axim
um.H
aiin
gs (N
otes 1
&2j
Uff
ltary
/Aer
ospa
ce
spec
ified
de
vlce
s ar
e re
quire
d,¿
¿"c
onta
ct
the
Nat
iona
l S
emic
ondu
ctor
S
ales
c¿/D
istr
ibuto
ra f
or a
volla
blllt
y an
d sp
ecifl
catlo
ns.
)(V
cc)
17
VD
Cge
at A
ny D
igita
llnpu
t V
ccto
GN
D±
25V
%ge
Tem
pera
ture
Ran
ge
-65
*C to
4- 1
5CTC
Iflae
Dis
sipa
tion
?ay
-----
- 50
0 m
W
-lO
Om
Vto
Vcc
BO
OV
; V
olta
ge A
pplie
d to
jn o
r I0U
T2
(Not
e 4)
jSu
sce
pta
bili
ty(N
ote
l4)
Lead
Tem
pera
ture
(so
lder
ing,
10
sac.
)D
ual-l
n-ün
e P
acka
ge (
plás
tic)
Dua
l-in-
Une
Pac
kage
(ce
ram
ic)
Sur
tace
Mou
nt P
acka
ge
_ ;t
Vap
or P
hase
(60
sec.
)In
(rar
ed(l5
sec.
) .
' •
Ope
ratin
g C
ondi
tions
Tem
pera
ture
Ran
geP
arí n
umbe
rs w
ith 'L
CN
' su!
fw
Par
t num
bers
with
'LC
WM
' sul
fix
Par
í num
bers
with
'LC
V s
uffix
Par
t nu
mbe
rs w
ith 'L
CJ1
suí
fix
Par
t num
bets
with
'U' s
uffix
Vol
tage
at A
ny D
igita
l Inp
ut
o-
o
2GO
-C30
0'C
215*
C22
0*C
; •-
CT
Cto
4-7Q
*C
" 0
*Cto
+7
0*C
1 .
0
*Cto
-f7
0*C
-40
'Cto
4-8
5'C
.-5
5'C
to -
Í-125
'C
'• V
cc t
o G
ND
Ch
ara
Cte
ríS
tiC
S V
RE
F=
1°-
000
oc^^
oth
erw
ise
noíe
d. B
oldt
ace
limits
app
ty o
ver
tem
pera
-
Par
amet
er
Ffe*
»-**
láfiüití"
Con
dltlo
nsS
eeN
ote
Vcc
-
4.75
VQ
CV
cc=
15.
75 V
oc
Typ
(Not
e 12
)
Test
ed
U m
il(N
ote
5)
VCC =
5V
DC
±5
%V
cc =
:1*
Vo
cá
S*
tolS
VD
C±
5%
. D
esi
gnU
mit
(Not
e 6
)
Um
itU
nits
OílV
ER
TE
R C
HA
RA
CT
ER
1ST
hea/
ity E
nor M
ax'•»
»"-"
•m-
">-
¡«D
0830
LJ &
LC
J
,
tá08
32LJ
&
LC
JS
C08
30LC
N, L
CW
M &
LÓ
V6Í
>83
1LC
N5Í
b083
2LC
N, L
CW
M &
LC
V; „_
— .
\l N
onlin
earit
y;-ÍE
¿t'
; y
C08
30U
&LC
J":
(¿C
0832
LJ&
LCJ
1 »
C08
30LC
N, L
CW
M &
LC
V}
i»C
u831
LCN
^ Ü
C08
32LC
N L
CW
M &
LC
V
't ttjw
tonicit
y
.* i«h
Erro
r M
ax
*,!
áwic
rror
Tem
pcoM
ax
^;
^««r
Sup
pIyR
ejec
tion
'/'
•'•('.'
::•
•' •
'.¡\e
Inpu
t M
ax.
- -\,
f S
f'
Jíput
Fee
dthr
o
Min ..
ugh
Err
or
US
2ero
and
full
scal
e a
djus
ted
-10V
£V
HE
F¿
+10V
Her
o an
d fu
ll sc
ale
adju
sted
-iováV
RE
F¿
-i-iov
-10V
SV
HE
F
LJ&
LC
JS
-I-1
0V
LCN
, LC
WM
& L
CV
Usi
ng In
tern
al R
ft,-1
ovsv
RE
F<:-fiov
Usi
ng in
tern
al R
^
All
digi
tal i
nput
s la
tche
d hi
ghV
cc^K
.SV
tOlS
.SV
11.5
Vto
12.5
V
,i.5
V to
5.5
V
VR
EF=
20
Vp
-p,l =
100
kHz
All
data
inou
ts la
tche
d lo
w
T4
,8 4,S 4 7
8 ±0.2
0.0
00
2
0.0
002
0.0
006
0.0
13
15
15 3
8
0.0
5
0.2
0.0
5
0.1
0.2
0.1
0.4 0.1
0.2
0.4 B 8 ." 0
.0025
0.0
15
20
10
. 8
0.0
5
; 0.
20. 0
5
0.1
0.2
' 0.1
0.4
: 0.1 0.2
' 0.4 8 8 Í1
0.0
00
6
20
bits
% F
SR
-%
FSR
•
% F
SR
.
%F
SR
% F
SR
%F
SR
%F
SR
% F
SR
%F
SR
%F
SR
bits
bits
%F
S
%F
S/'C %
FS
R/V
kn kn
"mV
p-p
Elé
ctr
ica!
Chara
Cte
riS
tiC
S V
RE
F=
10.
000 V
ocun
less
oth
erw
ise
nota
d. B
oldí
ace
tlmlts
app
ly o
ver
tem
pera
- '
ture
, TM
IN£
TA
¿TM
AX
- ^o
r al
l oth
er lim
lls T
A **
25'
C. (
Con
tinua
d)
Par
amet
erC
ondi
tlons
See
Not
e
Vcc
~ 4
.75
VO
C
VC
C =
15.7
5V
DC
Typ
(Not
e 12
)
Test
ed
Um
lt(N
ote
5)
VC
C=
5V
DC
±5
%V
Cc
=-Í
2V
rx±
5%
to1
5V
[x:±
5%
Des
lgn U
mlt
(Not
e 6)
CO
NV
ER
TER
CH
AR
AC
TER
ISTI
CS
(Con
tinua
d)
Out
put L
eaka
geC
urre
nt M
ax
Out
put
Cap
acita
nce
btm
IOUT
I
IOUT
IIO
UTZ
All
data
inpu
tsla
tche
d io
wU
S.
LCJ
LCN
. LC
WM
& L
CV
All
data
inpu
tsla
tche
d hi
ghU
&L
CJ
LCN
, LC
WM
& L
CV
All
data
Inpu
tsia
tche
d to
w
All
data
inpu
tsla
tche
d hi
gh
10
45 115
130
30
100
50 1OO
50
DIG
ITA
L A
ND
DC
CH
AR
AC
TER
ISTI
CS
Dig
ital I
nput
Vol
tage
s
Dig
ital I
nput
Cur
rent
s
Sup
ply
Cur
renl
¡D
rain
Max
Min
Max
Max
Looi
c Lo
wU U LC
JLC
J
4.75
V15
.75V
4.75
V15
.75V
LCN,
LC
WM
, LC
V
Logi
c H
igh
LJ&
LC
JLC
N,
LCW
M, L
CV
Dig
ital i
nput
s <0
.8V U&
LC
JLC
N, L
CW
M, L
CV
Dig
ital Inp
uts>
2.0
V LJS
LC
JLC
N,
LCW
M, L
CV
LJ&
LC
JLC
N,
LCW
M. L
CV
-50
0.1
1.2
0.6
0.8
0.7
0.8
0.95 2.0 1.9
-20
O-1
60
+ 1
0
3.5 1.7
100
100
100
100
0.8
2.0
2.0
-20
0-2
00
4-1
0
+ 1
0
3.5
2.0
»
-4*
Ch
ara
cte
r'lS
tiC
S V
RE
F=
10,
000
V^u
nle
ss
oth
erw
ise
note
d. B
oldf
ace
limlts
app
ly o
_ver
tem
pcro
-ttj
re,T
M]N
£TA¿
TM
Ax.
F
or a
ll ot
her lim
its T
A =
25'
C. (
Con
tinue
d)
$' ibol •í f
Par
amet
erC
ondlti
ons
. .
Not
e
Vc
c=
15.7
5 V
oc
Typ
(Not
e 12
)
Tes
ted
Um
lt.(N
ote
5)
VC
C-1
2V
DC±
5%
to1
5V
DC±
5%
Des
lgn
. U
mtt
(Not
e 6)
Vcc
= 4
.75
VD
C
Typ
(Not
e 12
)
Tes
ted
Um
lt(N
ote
5)
Vcc^S
Vo
c±
5%
Des
lgn
Um
lt(N
ote
6)
Llm
ltU
nlts
/CH
AR
AC
TE
RIS
TIC
S
Cur
rent
Set
ting
Tim
e i
Writ
e a
nd X
FER
Pul
se W
iáth
Min
Dat
a S
etyp
Tim
eM
in
Dat
a H
old T
ime
Min
Con
trol S
etup
Tim
eM
in'
' •'
Con
trol H
old T
ime
Min
V|L
=O
V,V
IH=
5V
¡
V|L
=O
V,V
|H=
5V
V,L
=O
V,V
|H =
1.0
100
100
110
aso
32
0
250
32
0
30
30
250
32
0
32
0
32
0
32
0
10
1.0
375
375
600 O
600
900
600
90O
50
50
900
1100
90
0
90
0
11
00
í|ie
*ii:
Abs
otut
e M
áxim
um R
atm
gs Ir
Ktic
aie
Rrré
ts b
eyon
d w
hich
dam
age lo
ttie
dsv
ice
maj
' occ
ur. fX
; and
AC
ele
ctñc
al spe
ciftc
atio
ns d
o n
ct<a
ppry
woe
n o
pera
tiog
-I»
dav
ice b
eyon
d it
s s
pecH
ied
ope
ratio
g c
oodt
tions
. "'
-
'")Ó
t 2:
AU
voH
aoes
ere
mea
sure
d w
rth ré
sped
to G
ND
, un
less
oth
arw
ise s
pect
fied.
man
mur
n p
ower
dis
sipa
tJon
muM
be d
erat
ed a
l ele
vale
d te
mpe
f atu
res
and fe
dic
taia
d b
y TJ
UJ&
. SJ
A,. a
rá tr
w H
mrji
«nt t
Qm
oeta
nxB
.T. T
he m
aórn
um?á
o«w
bl« p
ovíw
dts
sipa
tion a
t an
y te
mpe
ratu
ro is
PD -
{T
jKw
x ~
TA
)/P
JA °r
W^
rwm
beí gi
ven
In tn
e A
bsol
uta M
arim
un
Rat
ings
. wíti
chev
e* is
to*v
ef. F
or
tivs
" l2
5'C
(pía
stic
) or
15ÍT
C (co
fam
ic).
and
the
typi
cal jun
ctio
o-lo
-am
bien
t Ü
wrm
al re
sist
anco
oí
Ui3
J p
acka
g^ w
haa s
card
rroo
oted
te B
trC
AV
. FO
T. th
is n
umbe
r tn
ctea
&es
to
ItX
TC
/W a
nd (o
r th
e V
pac
kago
thi
s n
umbe
r is
12C
TC/W
.
..
*: F
or cu
nen! sw
itcíiino
app
ficat
jons
. both
IOU
TI a
rK^
'ouT!
m"5
* ffo
to
gro
ond o
r th
e "V
irtual G
roun
d" o
í an
ope
raüo
ns! am
pfct
ó. T
he
Üna
arir/
errpf to
f<Ü
7vi
od
by
appr
oxim
ater
y V
QS
•*•
VR
EF-
Por
eta
mpte
, H \'
fíEp
-
no
vtn
en
a 1
mV
ofls
at,V
os.
on
IOU
TI °
* IO
UTZ
**>"
«tronce
an
Btfc
fiboo
al O
.QI %
Ibea
my o
rrot.
• íj*
• '
'O
tó» 5
:Tesl
ed lim
its a
re g
uara
ntee
d lo
Nst
ionat's
AO
OL
(Ave
rage
Out
goin
s Q
ualiry L
ftvel
).
,)tow
fc G
uara
nlee
d, b
ul n
ot 1
00%
pro
duct
ion
tosi
ed. T
hes«
fim
tis a
ra t»t
used
lo c
alcú
late
oul
goin
g q
uaJr
ty tev
als,
•j
.
"FS
R"
stan
ds fo
r ''F
uD S
cate
Ran
ge."
"U
neam
y E
rror"
and
"Pow
er S
uppt
y R
ejec
t'KX
i" sp
&cs
are
bas
»d o
n tn
is u
itrt t
o s
fimin
ale
deo
enoe
oce
on
ava
lué u
nd t
o "w
xüca
te t
he u
ue p
erto
rman
ce o
í th
e p
art
The
"U
near
iry E
rror"
spe
cihc
alio
n o
í th
e D
AC
0530
ts
"0.0
5%
o(
FS
R (M
AX
)". This
that
atie
t pa
riorm
ing
a s
eto
and
tull
scal
e a
djus
lmen
t (s
oe S
ectio
ns 2
.5 a
nd Z
&),
the
plo
t of
iho
256
ana
toc
votta
ge o
utpu
ts w
B e
ach
be w
rtHn
°' a
stra
ight
Une
wtw
ch p
asse
s th
roug
h la
to a
nd
ful
l sc
ale.
;- fc
*» fc
Bot
óf a
ce t
est
ed lim
hs a
ppiy
to
the
LJ
orx
l LC
J su
ffix
patts
ont
y.
. ;
:,*o
*i i
fcA
lOO
nA
lea
kag
ecu
rTe
ntw
Tlti
Rft,-
20(í
and
VR
EF-1
0V
cof
TBsp
onds
to
a 2
«o
err
of o
í (1
00
xiO
-Sx2
0xlo
3)X
10
0/1
0w
hic
hfs
O.O
ZS.
of F
S.
Veto \; Jh
e o
ntke
wril
e p
ulse
mus
í oo
cur
wrth
in th
e v
alid
dat
a in
terv
al |or
the
spe
cáfie
d ty
,', to
g,
IOH
. ar
td ts
to a
ppf/-
'
'*** '
Typ
icar
s are
u*.
25'
C a
nd
r epre
swit
mos
t H
kely
pa/
amet
hc n
orm
.
-Ita
» 1
3:
Hum
an b
ody
mod
el, 100
pF
dis
cnar
ae<J
thro
ugh a
1.5
kfl
resi
stor.
. i
'*
M.
r»r
Sw
itchi
ng W
avef
orm
-•
iu.
es.
Def
iníti
on o
f P
acka
ge P
inou
ts
Co
ntr
ol S
igná
is (
All
cont
rol s
igná
is l
eve
l ac
tuat
ed}
CS
: .
Chi
p S
ele
ct (
activ
e !o
w}.
_The
US"
¡n
com
bina
-tio
n w
ith 1
LE w
ill e
nabl
e W
Rj.
ILE
: In
put
Latc
h E
nabl
e (a
ctiv
e h
lgh).
The
ILE
In
_
. c
om
bin
at'o
n'w
ithÜ
Senable
s W
Ri.
WR
: •
Wrí
te 1
, The
act
ive lo
w W
R-, is
use
d to
load
the
digi
tal
inpu
t da
ta b
its (
DI)
into
the
inp
ut l
atc
h.
• T
he d
ata
in th
e in
put l
atc
h is
latc
hed
whe
n W
R| -
ís h
igh.
To
upd
ate
the in
put la
tch—
C~5
and
W/R
!•
mus
t be
low
whi
le ILE
Is h
igh.
Wñy
i .
Wri
te2
[act
ive lo
w). T
his
sig
nal,
ín c
om
bin
alio
nw
íth X
FE
ÍÍ, c
ause
s th
e 8
-bít
da
ta w
hic
h ¡s
ava
ii-.
able
in t
he
inpu
t la
tch t
o t
ransí
er
to t
he D
AC
_
••
regis
ter.
XF
ER
: T
ran
sfe
r co
ntr
ol
signal
(act
ive
lo
w).
T
he
• X
FER
will
ena
ble
IOU
TI:
!ouT
2:
Rtt>
:
Oth
erP
ín F
unct
ions
Dig
ital
Inputs
. D
io is t
he
least
sig
nifica
n!
bit
(LS
B)
and D
I7 Ís
the
mos
t si
gnifi
can! b
it (M
SB
).D
AC
Curr
ent
Ouip
ut
1. lo
uT
t ¡s
a m
áxim
umío
r a d
igita
l cod
e o
f all
1's
in the
DA
C re
gis
ter,
and
¡s z
ero
[or
all O
's in
DA
C r
egis
ter,
DA
C C
urr
ent
Outp
ut
2. lo
ma
is
a c
onst
ant
min
us IO
UTL
or louri +
'oU
Tz-0
31151301 O
fu"
scal
e í
or a
fíxe
d re
lere
nce
volta
ge).
Feedback
Resi
stor.
The
fee
dbac
k re
sist
or
ispr
ovid
ed o
n th
e 1C
chi
p f
or u
se a
s th
e sh
unt
íeed
back
resi
stor f
or
the e
xtern
al o
p a
mp w
hich
isus
ed t
o p
rovi
de a
n o
utpu
t vo
ltage
íor
the
DA
C.
Thi
s o
n-ch
íp r
esi
stor
should
alw
ays
be u
sed (no
t.an
ext
ern
al r
esi
stor)
sin
ce ÍÍ
matc
hes
the
resí
stor
sw
hich
are
use
d Í
n t
he o
n-ch
ip R
-2R
lad
der
and
track
s th
ese r
esi
stors
ove
r te
mpera
ture
.V
RE
F:
Re
fere
nce
Vo
lta
ge I
npuLT
his
inpu
t co
nnect
s an
exte
rna!
pre
cisi
ón v
olta
ge
sou
rce
to th
e in
tern
al R
-2R
ladd
er.
VR
EP
can
be
sele
cted
ove
r th
e ra
nge
of-f
10 to
-10V
. This
is a
lso t
he a
nalo
g v
olta
ge in
-pu
t fo
r a 4
-quadra
nt m
ultiplyín
g D
AC
applic
aíio
n.
Vcc
: D
igita
l S
upply
Vo
ltag
e.
Thi
s ¡s
the
pow
er s
uppl
ypi
n fo
r th
e p
arí. V
QC
can
be
fro
m -
r-5
to -
flS
Vrx
.O
pera
tion is
optim
um
for
-M5V
0c-
GND
: T
he p
in 1
0 v
olta
ge m
ust
be a
t th
e s
am
e g
roun
dpo
tent
ia! as lo
un
and
\ou
rz Í
Qr
curr
ent sw
itchi
ngapplic
atio
ns.
Any
diff
ere
nce
of
pote
ntia
l (V
os P
^10
) w
ill r
esul
t Ín
a li
near
ity c
hang
e o
f
VQS
pin
103V
For
exam
ple,
ií
V^^
p =
offs
et f
rom
IQ
UTI
an
d !
will
be
0.03
%.
Pin
3
can
be
offs
et
±
1EF
L1
0V
an
d p
in 1
0 is
9m
V)U
T2 tn
e l
inea
rity
cha
nga
100m
V
with
no
lin
earit
ych
ange
, bu
t th
e lo
gic ¡
nput
thre
shold
wil!
sh
ift.
\Un
ea
rity
Err
or
fz-
IDEA
L K
SW
HS
E
a) E
nd p
oln
t te
st a
fle
rze
ro a
nd ís
ad¡.
DIG
ITAL
IH F
UI
b) 3
55i s
tralg
hí
Una
DIGI
TAL
WM
JI
..
. .
- T
LW
5600-3
c) S
hllt
lng
fs
ad}.
to p
ass
besV
stra
ighí U
ne test
i'Defin
ition
of T
erm
sy'. ~
Reso
iutio
n: R
esol
utio
n Ís
dire
ctly
rel
ated
to t
he n
umbe
r oí
•'Vsw
itche
s or
bits
with
in t
he D
AC
. For
exa
mpl
e, th
e D
AC
0830
5-ha
s 2
9 o
r 25
6 s
teps
and í
here
fore
has
8-b
it re
solu
tton.
.
^Unearit
y E
rron
Une
arity
Err
or Í
s th
e m
áxim
um d
evia
tion
"Tfro
m a
str
aigh
t U
ne p
ass
ing
thr
ough
the
end
poin
ts o
f th
e.\D
AC
tra
nsfe
r ch
arac
terí
stíc
. It
is m
easu
red
afte
r ad
just
ing
.íjfo
rzer
o a
nd fu
ll-sc
ale
. Unearit
y e
rror
Ís a
par
amet
er in
írinsic
•'.MO
the
devi
ce a
nd c
annot
be e
xter
nally
adj
uste
d.
í'Natio
nal's
lin
earity
."end
po
int
test
" (a
) an
d t
he
"best
;\straig
ht u
ne"
test
(b,
c) u
sed b
y oth
er su
pplte
rs a
re ill
ust
rate
d'^
abov
e. T
he "
end
poi
nt t
est
" gr
eaíly
sim
pllfi
os t
he a
djus
t-^r
nent
pro
cedu
re b
y elim
inatin
g t
he n
eed
for
múl
tiple
ite
ra-
•;'jio
ns o
f ch
ecki
ng the
lín
earit
y a
nd the
n a
djus
ting
fut
í sc
ale
vuntil
the
Une
arity
¡s
met
The
"end
poi
nt t
est
" gu
áran
teos
: tíia
t Kne
arity
Ís m
et a
fter
a s
ingl
e (
ull
scal
e a
d¡us
L (
One
ad-
,;.¡u
stm
ent v
s. m
últip
la it
eraí
ions
of
íhe
adj
ustm
enL)
The
"end
.po
ínt te
st"
uses
a s
tand
ard
2er
o an
d F
.S.
adju
stm
em p
roce
-"
dure
and
¡s
a m
uch
mor
e s
tn'n
gent
test
for
DA
C linearit
y.
1 ^o
wer
Supply
Sensltivity
: P
ower
sup
ply
sens
rtivi
ty Í
s a
mea
sure
of
the
efíe
ct o
f pow
er s
uppl
y ch
anges
on t
he D
AC
Ifulí-
scale
out
put.
Setü
ing T
ime: S
ettl
ing
tím
e ¡s
íhe
tim
e re
quíre
d ír
om
a c
ode
tran
sttió
n u
ntil
the
DA
C o
utpu
t re
ache
s w
ithin
±
V3LS
B o
fth
e fin
al o
utpu
t valu
é. F
ull-s
cale
settl
ing
tim
e req
uire
s a
ze
roto
ful
l-sca
le o
r iu
ll-sc
ale
to
zer
o o
utpu
t ch
anga
.
Fuí
l-Sca
le E
rror
Ful!
scal
e e
rror
Ís a
mea
sure
of
the o
utpu
ter
ror
betw
een
an id
eal
DA
C a
nd, t
he a
ctua
l devi
ce o
utp
ut.
Idea
lly,
for
the
DA
C08
30 s
erie
s, full-
scale
¡s V
RE
F -
1LS
B.
• For
V
R£
p=
10
V
and
unip
olar
op
erat
ion,
V
PJL
L.S
CA
LE-
10.0
000V
-39m
V=9.9
6!V
. Ful
l-sca
le e
rror
¡s
adju
stab
le t
o. z
ero.
Dlr
fere
ntt
al N
oniin
earity
; The
difí
eren
ce b
etw
een a
ny tw
oco
nsec
utiv
e c
odes
¡n
the t
rans
fer
curv
e fr
om th
e t
heor
etic
af1 L
SB
is d
iffere
ntia
l nonlín
earit
y,.
. ^
Monoto
nic
: lí
the o
utpu
í of
a D
AC
incr
ease
s fo
r in
creasi
ng
digi
tal i
nput
code, t
hen
the
DA
C Ís
monoto
nía
An 8
-bit
DA
Cw
hich
Ís m
onot
onic
to 8
bits
sím
ply
mea
ns t
hat in
creasi
ng
digi
tal i
nput
codes
wíll
pro
duce
an
¡ncr
easi
ng a
nalo
g o
utp
ut.
U-t 3- * !-.!'
WÍU
I
0 0
MC
° Q
i.srr
onCO
NVEK
UR
t tr
uin
wD
IM
IUIJ
;
Tvp
ical P
erfo
rman
ce C
hara
cter
istic
s* "
.
..
• n
i^it
.lD
igita
l Input T
hre
shold
vs. T
em
pe
ratu
ra^
1 D
igita
l Input T
hre
shold
VB. V
cc
Gal
n and U
nearH
y E
rror
Va
rta
tlon v
s. T
em
pe
ratu
ra
IS 1
05 1
H
1.1
O.Q
71
|
o.on
•e S
'H
-fl.O
IJ
§
-fl.o
s
-1.0
75
-0.1
-r 1 i
1—
UN
EA
Uírt
EM
OP1
— G
AIN E
flMt
..„
1
1 ^"
1SV 1
£_ . 1 1S
-JS
-1Í
i 11
O 6
5
ÍS 10
5 1
Gal
n a
nd
Une
arlty
Err
or
.Va
rlst
lon
vs-S
up
pIy
Vo
ltag
eW
rlte
Pul
se W
ldth
Dat
a H
oM
Tim
e
£-
-O.B
»o E -
o.»
UL J^
>
'-/
rAG
AlN
ER
SM
-
-H
-JS
-li
S
Z
S
<5
6S
¡5
JOS.
1ZS
U.
AM
IIEN
T TE
MPE
RAT
UR
E (*
C)
-S5
-3S
-I5
S
15 «
«
S
S1
W1
ZS
U.
AU
SlE
Nt
líM
ftíA
IUK
t |'C
) TL
/H/5
60a-
DA
C08
30 S
erie
s A
pplic
atio
n H
ints
The
se
DA
C's
are
the
Ind
ustry
's f
irst
míc
ropr
oces
sor
com
-pa
tible
, do
uble
-buf
fere
d 8
-bit
mul
tiply
ing
D 1
0 A
con
vert
ers.
Dou
ble-
buffe
ring
al
low
s th
e u
tmos
t ap
plic
atio
n
flexí
bilit
yírom
a d
igita
l control p
oint
of v
iew
. Thi
s 20
-pin
dev
ice
¡s a
lso
pin
for
pip
co
mpa
tible
(w
ith
one
ex
cept
íon)
w
ith
the
DA
C12
30.
s 12
-bií
MIC
RO
-DA
C.
In t
he e
ven
t th
at
a sy
s-te
m's
ana
iog o
utpu
í ro
soIu
tJon
and
acc
urac
y m
ust
be u
p-gr
aded
, su
bsüt
utin
g
the
DA
C12
30 c
an b
e ea
síly
acc
om-
plis
hed.
By-
tyin
g ad
dres
s bi
t AQ
to th
e IL
E p
in,
a tw
o-by
te y
Pw
rite I
nstruc
tion
(do
ubla
pre
cisi
ón}
whi
ch a
utom
atic
ally
In-
crem
ents
the
add
ress
fot
the
sec
ond
byt
e w
rita
(sta
rtin
gw
ith A
O =
"1"}
can
be
use
d. T
his
allo
ws
eíth
er a
n 8
-bit
or th
e12
-bit
part
to
be u
sed
wiíh
no
hard
war
e o
r so
ftw
are
chan
g-es
. F
or th
e s
impl
es!
8-bi
t ap
plic
atio
n, th
is p
in s
houl
d b
e t
ied
to V
cc (
a's°
see °
*ner uses in
sec
tion 1.1
).A
naio
g s
igna
! con
trol
ver
satil
ity is
pro
vide
d b
y a
pre
cisi
ón R
-2R
lad
der
netw
ork
whi
ch a
llow
s fu
ll 4-
quad
rant
mul
tiplic
a-tio
n o
f a
wid
a r
ange
bip
olar
ref
eren
ce v
otta
ge b
y an
app
lied
digi
tal w
ord
.
1.0 D
IGIT
AL
CO
NS
IDE
RA
TIO
NS
A r
nost
unl
que
cha
iact
eris
tic o
f th
ese
DA
C's
ís t
hat
the
8-bi
tdig
ital
inpu
t by
te i
s do
uble
-buf
fere
d. T
his
mea
ns t
hat
the
data
mus
t tr
ansl
er t
hrou
gh t
wo
Inde
pend
ently
con
trol
led
8-
• bi
t ta
tchi
ng r
egis
ters
bef
ore
bein
g a
pplie
d t
o th
e R
-2R
lad
-de
r ne
twor
k to
cha
nge
the a
naio
g o
utpu
L T
he a
dditi
on o
í a
seco
nd r
egis
ter
allo
ws
two
usef
ul c
ontr
ol f
ea
ture
s. F
irst,
any
DA
C I
n a
sys
tem
can
sim
ulta
neou
sly
hold
the
curr
en! D
AC
data
In o
ne r
egis
ter
(DA
C r
egis
ter)
and
the n
ext d
ata
wor
d in
the
seco
nd r
egis
ter
(inpu
t re
gist
er) lo
allo
w f
ast
upda
ting
of
the D
AC
out
put
on d
eman
d. S
econ
d, a
nd p
roba
bly
mor
eim
porta
nt, d
oubl
e-bu
fíen'
ng a
llow
s an
y nu
mbe
r oí
DA
C's
tn a
sysí
em
to b
e u
pdate
d t
o t
heir
new
ana
íog
ou
tput
le
véis
sim
ulta
neousl
y ví
a a
com
mon
sír
obe s
igna!.
The
tim
ing
req
uire
men
ts a
nd logic
leve
l co
nve
ntio
n o
f th
ere
gis
ter
control si
gnái
s nave
bee
n d
esig
ned l
o m
inim
ize
or
elim
ínat
e
ext
ern
al
¡nte
riaci
ng
log
ic w
hen
app
lied
to m
ost
popula
r m
icro
pro
cess
ors
and
de
velo
pmen
t sy
stem
s. I
t is
easy
to t
hink
of
thes
e c
on
vert
ers
as
8-bi
t "w
rite-o
nly
" m
em-
ory
loca
tions
that
pro
vide
an
ana
íog
out
put
quantit
y. A
ll in
-pu
ts t
o t
hese
DA
C's
mee
t T
TLvo
ltage
lev
el s
pecs
and
can
also
be
driv
en d
irect
ly w
ith h
igh
volta
ge
CM
OS
logi
c in
non
-m
icro
pro
cess
or
base
d s
yste
ms.
To
pre
vent
dam
age
to
tha
chíp
fro
m s
tatic
dis
charg
e,
all
unus
eÜ d
ígita
! in
puts
sho
uld
• i»
_í
Biv
,m
H;^
;tai
innnts
ara
be t
ied
to V
ccIf
any
of¡th
e d
igita
l in
puts
ara
be u
ea 1
0 V
CG
u'
yiuuuu.
•> ™
,, «..
,,.
._in
adve
rtantly
leu
flo
atin
g,
the
DA
C iníe
rpre
ts t
he p
in a
s a
logic "1".
F
1.1
Do
ub
le-B
uff
ere
d O
pera
tion
IU
pdat
ing t
he a
naio
g o
utp
ut
of t
hese
DA
C's
in a
dou
ble-
buH
-er
ed m
anne
r is
bas
ical
ly a
tw
o s
tep o
r do
uble
writ
e o
pera
-tio
n.
In a
mic
ropro
cess
or
syst
em
two un
lque
sy
ste
m a
d-d
ress
es
mus
t be
dec
oded
, on
e lo
r th
e ¡np
ut la
tch
con
trol
led
by í
he ÍÍS
pin
and
a s
econ
d lo
r th
e D
AC
lat
ch w
hic
h !s
cont
rolle
d b
y th
e X
FE
R li
ne.
If m
ore t
han
one
DA
C Ís
bei
ngdriv
en,
Fig
ure
2, t
he C
S line
oí
each
DA
C w
ould
typ
ical
ry b
ede
code
d Indiv
idually
, bu
t al
l oí
the c
onve
rters
could
sha
re a
Hco
mm
on "
XF
ÍR"
ad
dre
ss t
o a
llow
si
mul
tane
ous
upda
ting o
f gan
y nu
rnfa
er
oí
DA
C's
. T
he
timin
g
for
this
op
erat
ion
is 8
show
n,
Fig
ure
3.
It Is
im
portant
to
note
th
at
the
an
aiog
ou
tput
s th
at
wif
Hch
ange
ar
ter a
sim
ulta
neou
s tr
ansf
er a
re th
ose
fro
m t
h* i
DA
C's
wh
ose
inp
ut r
egis
ter
had b
een m
odiíied
prio
r to
th« H
I co
mm
and*
I
DA
C0
83
0 S
eri
es
Ap
plic
atio
n H
rfits
(con
tinua
d)
KAC
OR
ESS
\S /
-=y
SYSÍE
M wa \/
0 E C N
£ii
fS7
CÍR iTT1
'•.
MC 1
.
HE
RT
l
CS
IFE
R
W1
—i
IL_
ILE
WSÍ
R itra
r wi
-^ c
DA
Cí
ILE
VÍHÍ
£5
X?!R
'w
|
1 L.w
"
íí 5
•T!E
TO
LO
GIC
1 IF
NO
T N
EE
D5D
(SE
E S
EC
. 1.
1).
FIG
UR
E 2
. C
on
tro
llln
g M
utl
ple
DA
Cs
LATC
HUP
DATE
O UP
IJATE
D-
^D
AC
HE
CIS
TE
HU
TC
HE
D
FIG
UR
E 3
The
ILE
pin
ís
an a
ctiv
e h
igh
chí
p s
ele
ct w
hich
can
be
de-
code
d f
rom
the
ad
dre
ss b
us a
s a
qualif
ier
for
the
norm
al C
~3si
gnal
genera
ted d
urin
g a
writ
e o
pera
tion.
Thi
s ca
n b
e u
sed
to p
rovi
de a
hig
her
degr
ee o
f de
codi
ng u
niqu
e c
ontr
ol s
ig-
náis
for
a p
artic
ular
D
AC
, an
d th
ereb
y cr
éate
a m
ore
effi
-ci
ent
addr
essi
ng s
chem
e.
Ano
ther
use
ful
appl
icat
ion
of
the
[LE
pin
of
each
DA
C ¡n
am
últip
le D
AC
sys
íem
¡s
to t
ie I
hese
inpu
ts t
oget
her
and
use
this
as
a co
ntro
l IIn
e_th
at c
an e
ffect
ível
y "f
ree
ze"
the
oul-
puts
of
all
the
DA
C's
at
íhei
r pre
sen! v
alué
. P
ullin
g t
his
line
low
látc
hes
the input
regi
ster
and
pre
vení
s ne
w d
ata
fro
mbe
ing
wriften t
o t
he D
AC
. T
his
can
be p
artic
ular
ly u
sefu
l In
fnul
üpro
cass
tng
sys
íem
s to
allo
w a
pro
cess
or o
the
rth
an
the
one c
ontro
lling
th
e D
AC
's t
o t
ake
ove
r co
ntro
l of
the
dat
abu
s an
d co
ntro
l U
nes.
If t
his
seco
nd s
yste
m w
ere
to
use
the
sam
e a
ddre
sses
as
thos
e d
ecod
ed f
or D
AC
con
trol
(bu
t fo
ra
difi
ere
n!
purp
ose)
th
e
ILE
fun
ctio
n w
ould
pr
even
t th
eD
AC
's f
rom
bei
ng e
rron
eous
ly a
ltera
d.
In a
"S
tand-A
Ione"
syst
em
the
con
trol
sig
náis
are
gen
erat
-ed
by
disc
reto
logic
. In
this
cas
e d
oubl
e-bu
ríer
ing
can
be
controlle
d b
y si
mpl
y ta
king
Ü3
and
XF
ER
to a
logi
c "O
", IL
Eto
a lo
gic
"1"
and p
ullIn
g W
R~7
low
to
load
dat
a t
o t
he ¡
nput
latc
h. P
ullin
g W
R2 lo
w w
ill the
n u
pdai
e t
he a
naio
g o
utp
ut A
logi
c "1
" on
eith
er o
f th
ese lin
es w
ill p
reve
nt t
he c
hang
ing
of t
he a
naio
g o
utp
ul
Do
.
, -
fo o
f th
« A
DC
Q80
1 «i
Per
form
ing
>n I
nput
R^n
gc (
Sp
an)
Adlu
itm«nt
RG
UR
6 2
1. H
atK
flíng^a
V A
nalo
g In
put |
Ord
erin
g I
nfor
mat
ion
FIG
UR
E 2
2. F
re,
Run
nEng
Can
--
. •-
• .
•.-v
.-J»^:..-
'-.
•-.-
• -
:-;
£Z
j Nat
iona
l •
• :&
Á S
emic
ondu
ctor
-•
; .
A í
o D
, D
to A
AD
C03
Q8,
AD
C08
09 8
-Bit
/iP C
om
patib
le A
/D C
onve
rter
sV
Viíh
S-C
hann
elM
ultip
lexe
r .
Gen
eral
Des
crip
tion
The
AD
CC
808,
AD
CC
809
data
acq
uisl
tlon
com
pone
ni Is
am
onol
Hhl
c C
MO
S d
evlc
e w
lth.
an 8
-bit
analo
g-t
cKllg
ilal
conv
erte
r,
8-ch
anne
t m
ultlp
lexe
r an
d m
icro
proc
esso
rco
mpa
tible
con
trol
logI
c.T
f)8 8
-btt
A/D
con
vert
er u
ses.
suc-
cess
ivs
appt
oxlrn
atto
n ss
tha
con
vers
ión le
chniq
ue. T
heco
nver
sar
(sat
ures
a n
lgh
ímpe
danc
a c
hopp
er a
taoi
llzed
com
para
tor,
a 2
56R
vol
tage
dlv
iderw
ilh a
nalc
g s'
witc
h tre
ean
d a
succ
essi
ve a
opro
xlm
atlo
n re
gist
er. T
he 8
-ch'
anne
Im
ultip
texe
r can
dire
ctíy
acc
asa
any
o( S
-sin
gle-
ende
d a
na-
log
sig
náis
,
Tfie
dev
ice
elim
ínal
es t
he n
eed
ÍCK
exte
rnal
zsr
o an
d fu
ll-sc
ale id
jusi
mants
. E
asy
inte
riaci
ng
to m
icro
prcx
iess
ara
Is p
rovl
ded
by t
he l
atch
ed a
nd d
ecod
ed m
ulll
ple
xar
ad-
drea
s ¡n
puts
and
latc
hed
TTL
TRI-S
TATE
* ou
tput
a,
-
Tíie
des
ign
oí t.
1e A
DC
C8C
8, A
DC
08C
9 ha
s be
en o
ptim
Ued
by I
ncor
pora
ting
the
mos
t de
slra
ble
asp
ecta
oí
seve
ral
AVD
conv
ersi
ón le
chni
ques
. The
AD
C08
08.
AD
C08
09 o
f-'
lers
fii
gh s
pe«d
, hl
gn
accu
racy
, m
inim
al
tem
pera
tura
depe
ndan
ce, e
xcel
lent
long
-term
acc
urac
y an
d re
peat
abi-
lity,
and
con
sum
es m
ínim
al p
ower
, The
sa l
ealü
rea
mak
síh
is d
evic
a id
eally
sul
ted
to a
pplic
atio
ns ¡r
om p
roce
sa a
ndm
achi
ne c
ontr
ol l
o co
nsum
er a
nd a
utom
otlv
e ap
pllc
a-llo
ns,
Fpr
16-
cnan
nel
mul
llple
xer
witr
i co
mm
on o
utpu
t"ts
ampl
e/ho
ld p
ort)
see
AD
C08
16 d
ata
shee
t.
Fea
ture
s
• R
esol
utlo
n —
5-b
its»
Tot
al u
nadj
uate
d er
ror —
± 1
/2 L
SB
and
± 1
LS
8 .
• N
o m
issi
ng c
odes
• C
onve
rsió
n ti
me —
100
a
• S
ingl
e su
pply
— 5
VQ
C
•;•
O
péra
les
ratlo
met
rica
lly o
r v»i
tri 5
VQ
Q o
r an
alcg
spa
n;
adju
sted
vol
tage
raí
eran
ce -
.•
B-c
hann
el m
ulilpfe
ierw
lth la
tche
d c
ontr
ol l
ogic
• E
asy
Inte
ríac
e to
all
míc
ropr
oces
sors
, or
opér
ales
. "s
tand
alo
ne"
' •
Out
puts
meetT
3L
vol
tage
leve
! apeci
üca
tlons
• O
V to
5V
ana
log Input
volta
ge r
ange
wltt
i si
ngle
5V
supp
ly "
' •
No
zero
or
luíl-
scal
e a
djus
t re
quire
d
' •
Sta
ndar
d he
mie
tlcor
mol
üe<32
3-p¡
n D
lPpB
cKag
s•
Tem
pera
ture
ran
go
~¿Q
'C
lo
+85'C
or
-55*C
to
Low
pow
er c
onsu
mpt
ion
— 1
5 m
W
Latc
hed
TR
I-STA
TE*
outp
ut
Bío
ck D
iagr
am
D O O CD O a O o CD o (D
Oí o •oo o D D < ro~ D SD D '_> D t i i 1 1 i 1
-A
?íS
(i
Suopíy
\*
r
• E
»c.
oV
oll«
g«
(ST
Afl
Slo
r«c.
»P
»ch«
ga
L*»<
1 T«Í
I
Eie
ctC
onvs
rlU
nla
iía C
Ü?
-: ;
'S
|jf¿
/a
gí
•.,„
, —
-
^V
_
.-•-
•.
-^.r—
—
- -
, .¿-
¿SE
' *í
r-v**
Dlu
te M
áxim
um R
atin
gs(N
ote3
undn
) O
pera
ting
Rat
ings
(Note
s un
dax
«X
Ug.lV
ccífN
o»*
SJV
T-n
p-.h.r.B
.ng.
ol.l)
•
TU
IM*
"*°"
PIn
-o
JVta
(Vcc
+"V
) A
occe
oocj
-wc<
n•C
"""»
"—
Aoc
oeoa
ca.A
ocoe
oecc
N.
• A
ICootr
odnoul»
-O
JV
Io+
lhV
A
DC
0809
CC
N
-iD
f.r
T.O
E.C
LO
CK
.AL
E.A
DO
A.A
OO
B.A
DO
q -
R.^
o(V
cc,N
oU „
. ¿^
r.m
o*f.lu
r.R
.fto
. -8
3-C
kn
.ia
OT
^
oi«
ip«
«o
n.iT
A.a
-c-
I75m
/;ip
*fiIu
f«(S
okl
*rtn
fl.!0
*«co
r>o»|
300'C
rical
Ch
ara
cte
rist
ics
Jthe
rwls
e at
ated
.
Par
a m
ela
r
AD
C08
08T
ota
l Una
djus
tetí
Err
or(N
ota
5}
AD
C08
C9
To
tal
Una
djus
ted
Err
or(N
ote
5)
Inpu
t R
eais
tanc
e
Ana
log
Inpu
t V
olta
ge
ñang
a
VR
EF(
-r)
Vo
ltag
e, T
bp o
í La
dder
VR
EF
l-rt
-VH
EF
f-)
V~
n
<-'
r,-^
VflE
Ff-
)
2
*"
' "'
f V
olta
ge
, Bo
tiom
oí L
adde
r
Com
para
tor In
put
Cur
rent
Elé
ctric
a! C
hara
cter
istic
sD
igita
l LevaU
and
DC
Sp
eciflc
atio
na
: A
DC
OflC
SC
,
AD
C0808C
CJ, A
DC
0808C
CN
, and
AD
CO
B09C
CN
4
i |
Pa
ram
eto
r
YflE
f=(-
j=
"u, i M
|NÍ IA
Í T
WA
X a
nd
/C
LK=
640 k
Hz
Con
dltlo
na
Mln
T
vn
25'C
TWIN
to T
MA
X
O'C
toT
O'C
TMIN
<° T
MAJ
C
Fro
mR
ef(
+)t
oR
e/(
-)
1,0
tNo
ie4
)V( +
)orV
(-J
( G
ND
-0.1
0
Mea
sure
d at
Re(
(-t-
}
Vcc
/2-0
.1
Mea
sure
d a
t Re
f(-)
-Qj
íc =
64
0kH
zt(N
ote
6)
-2
MJV
sV
ccs5
JV
, -5
5'C
¿T
A^
+ 1
25
-Cu
nl
?5
^Vccs5
.25
V,
-40
-C¿
TAs
-f8
5-C
unl
ess
Con
dltlo
ns
Mln
2^
Vcc
Vcc^
0
±0.
5
Ma
x
±M
2±
3/4
±1
±1
1/4
VC
C+O
.IQ
Vcc
+O
-l
Vcc
/2+
0-1
2
"'J
tí
rA*r
MA
Xv|
i-f m
x , (
(.í+
sax
'' 2.
oto
vo
c í
. -íí
LSB
LSB
• =
LSB
LS
B
kfl
VDC V V V pA
2ss
oth
erw
ise
note
dot
herw
ise
no
ted
Typ
Ma
xU
nits
AN
AL
OG
MU
LT
IPLE
XE
H
•oF
F(+
)
IOFFM
OF
F C
hann
el L
eaka
ge C
urre
nt
OF
F C
hann
el L
ea
kag
e C
urre
nt
Vcc
=5
V.V
)N =
5V
,rA
= 2
5'C
TUIN
to T
MA
X
Vcc
= 5
V,V
1N =
0.
TA=
25
'C
_2
00
TMIN
to T
M^
- i.o
10
-10
200
1.0
nA
M nA -A
CO
NT
RO
L IN
PU
TS
VIN
(]J
viN«n
'lN(t
)
'lNfO
>
'ce
Logic
al "
1"
Inpui
Vol
tage
Logic
al "
0"
Inpu
t Vo
ltag
e
Logi
cal
"1"
Inpu
t Cu
rre
nt
(The
Con
trol
Inputs
j
Logic
al "
0"
Inpu
t C
urre
nt(T
rie C
on
tro
l Inp
uta)
Suo
ply
Cu
rre
nt
Vcc-i
^
V1N =
15V
V|M = °
-1
.0
ÍCU
tsW
OkH
z0.3
1.5
1.0
3.0
V V M M mA
V^A
N
ff.'
Eie
ctric
al C
hara
cter
istic
s (co
ntinu
ed)
" .
..
..
. •*•
Dig
ital L
tv«l*
and
DC
Sp«cl
llcjtl
ont:
AD
C08
08C
J 4
.5V
sVcc
s5.5
V, -5
5'C
sT
Aí
+ 1
25'C
unl
esa
í.ths
rwis
e no
ted
.A
DC
0808
CC
J, A
DC
0808
CC
N, a
nd A
DC
0809
CC
N 4
.75sV
ccs5
.25V
, -4
0'C
sT
As +
85
'C u
nles
s ot
harw
lae
note
d
!' P
aram
eter
Con
dillo
ns
. M
lnT
ypM
ax
Uní
ts
)"oA
TA
OU
TP
UT
SA
ND
EO
C(l
NT
ER
RU
PT
)
VOU
TIII
;
Logi
cal "
1"
Out
put V
olta
ge
VOU
T(0|
Lo
gica
l "0"
Out
put V
olta
ge
VOO
TW
' Lo
gica
l "Q
" Out
put V
oíta
ge E
OC
IOUT
'
TRl-S
TATE
Out
put
Cur
rent
I0=
-36
0J
ÍA
. V
cc-0
.4
!0=
1.6
mA
I0=
1.2
mA
V0=
5V
V0=
0
-3
0.45
0.4
5
3
. V
V V í-A
^
Eie
ctric
al C
hara
cter
istic
sT
lmln
g3p«cl
Mci
l!oni:
VC
C=
VR
6?
W=
5V
1 V
ñE
F(_
,= G
ND
,t[=
t, =
20
ns a
ndT
A =
25'
C u
nles
s o
the
rwis
e no
ted.
Sym
bol
Pa
ram
«t»
r
t^
Mín
imum
Sta
rt P
ulse
Wid
th
tw>
LE
Mín
imum
ALE
Pul
se W
idth
t3
Mín
imum
Add
ress
Set
-Up
Tim
e
1H
- M
ínim
um A
ddre
ss H
old
Tim
e
[0
Ana
log
MU
X D
elay
Tim
eF
rom
ALE
tHii
!HQ
O
E C
ontr
ol to
0 L
ogic
Sta
te
1 1*
t<)H
' O
E C
ontr
ol to
HI-Z
tc
• ,
Con
vers
ión
Tim
e
lc
, C
lock
Fre
quen
cy
t£o
c
EO
C D
elay
Tim
e
C1N
In
put
Cap
acíta
nce
COUT
'
TRI-S
TATE
» O
utpu
tC
apac
ílanc
e
Con
dltio
ns
Mln
'Fig
ure
3)
(Fig
ure
5)
'Fig
ure
5)
(Fig
ure
5)
Rs =
0íí
(Fig
uras
)
CL=
50 p
F, R
t= 1
0k (F
igure
S)
CL=
10
pF
, R
L=
lOk (
Fig
ura
8)
(c=
640 k
Hz.
(Fig
ure
5) (N
ote
7)
90
10
(Fig
ure
5)
0
At
Co
ntr
ol In
puts
At
TR
l-S
TA
TE
* O
utp
uts
, (N
ote
12
}
Typ 100
100
25 25 1
125
125
100
640
10 10
Ma
x
200
200
50 50 25
250
250
116
1280
8-f
2?
3
15 15
UnlU ns ns ns ns r* na ns ¡íS kHz
Clo
ckP
erio
ds
pF
.
pF
Mol
» 1
: AD
Jolu
li m
í<!m
um r.lb
c»
«r» in
o«
««l
úas
0«yo
nd--
Ncn
W»
l¡U o
í lí»
0«i
flc« m
.y te im
(»!i«
l.
,
No<
« 2:
Alt w
llig»i
w«
m««
sü(»
<l w
fth
f«tx
»ct
lo G
MO
. unku
oin
«r.it«
so*c
lll«a.
J _
Hot. 3
: A
í»rw
(Ito
M «
.lili,
fnt«
tn*l
ty. I
rom
Vcc lo
GN
D u
xí fu* i
typ
lc»!
Sri*
KO
o-n
wltí
g»
oí 7
Voc-
|H
oi.*T
-co«hlo
dl«
,««,IW
te.^
.n.loglo
ou(W
nic
eiw
Uno«.«
c««di«
.(orW
^Jopui^
^gn.t«r ir*n
W>* V
rc «
UD
ty.
7M
>P
^ »
»o-»
«»
mV
lo
fwa
w t.., o
( •itrw
Ol<
w..
ThU
w«»
th.l i»
long
U !M
mlo
c V
ls *
>«>
not «
««i m
. JU
PW
Sr^b^m
ífio
oS
in.o
Jíi«**iiii»cc«^T
o^^^^
pt>-
volti
o*
ot i.9
00
VD
C o
»^
ltfflp
*í»tu
rt v
áftil
loom
, inltU
l to
t««
oc«
«na
lo*a
lr>o-
• '
|H
oN
fcT
M.Iu^M
^«oc
I«ch^.«
rfl«
tMI.«.t4.H
n.rtty..ndn«
t»W
««
m«.^
^^
How
.^JlM
^i«
«d-l.d
«l.-f
tx«^o
flln
wlo
twU
mO
jOV
.Of1
l*B«nw
MI.«.l.s
p««U
to(loc«^
*olttg
*i c
»n &
• »i
3|U
3l«]
to «
ni«
v*
IW*.
S»*
fío
urt
Í3.
N<rt.
t
Com
eto
. Inp.il
CU
n.n
t U .
tdM
cucr
.iit
Inte
<* oul o
í U»
cO
o^p
^ ,t tó
lIr^
J e
oam
» n
x.T
h. b
l« c
unw
t y^«
dl^
ctly
-Ith
dock
tiequ.n
cy »
nd
íuu
tlt
tl*
l*nip
M»lu
i* Q
ip«fK
l«(K
t tflg
ai
6). S
« p
*f io
ripn
.0
.K
at*
7:
Tív«
out
putJ
o( in
. d*Ii
r»gl$
l*f
MI u
pd.l*
d o
o.
Clo
cX c
ycl- O
.lor«
lh« rt
»!o
g *d
a*
o' E
OC
o co o O a "co
,o co o O Q
run
ctlo
nal
Des
crip
tion-
Muttlp
luin
The
der
ice
co
ntal
ns an
8-c
hann
e| a
fngl
e-en
ded a
nalo
g s
tgna
l multl
ple
xer.
A p
anlc
ula
r In
put
chan
-ne
l la
ael
ecte
d by
usl
ng I
he a
ddre
ss d
ecod
er.
Tab
le I
show
s th
e In
put
stat
ea (
or th
e-ad
dres
s U
nes
to a
alec
t any
chan
naU
The
add
ress
la l
atch
ed I
nto
the
dec
oder
on
tha
low
-to-
hlgf
i tra
rialtl
on
of
the
add
resa
iatc
h e
nabl
e alg
nal.
TA
BL
EI
SE
LEC
TED
AN
ALO
G C
HA
NN
EL
. 1N
O
IN1
IN2
fN3
IN4
IN5
IN6
1N7
AD
DR
ES
S L
IN6
C L L L L H H H H
B L L H H L L H H
A L H L H L H L H
CO
NV
EH
TER
CH
AR
AC
TE
RlS
TIC
S
The
haari o
f thi
s si
nglo
chi
p d
ata
acq
uis
itlon
sys
lam
is it
s8-
bit a
nalo
g-to
^Jig
ltal c
onve
rtsr
. The
con
vert
er fs
des
igna
d
to g
lvt-
laa
t, ac
cura
te, a
nd r
ep«a
tabl
a co
nver
slon
s ov
er a
wld
e r.in
gg
oí
tem
p9ra
ture
s.T
he c
onve
rtarls
partltl
oned
Into
3 m
a|or
aec
tlons
: th
e 25
6R l
adde
r ne
twor
k, Ihe
suc
-ce
ssN
í ap
prox
lmat
lon
tegl
ater
, and
íha
com
para
tor.
The
conv
aite
r'a d
igita
l out
puts
a/a
pos
itivo
Irue
.
The
2S6R
ladd
er n
etw
otk
appr
oach
(Fig
ure
1} w
aa c
hosa
nov
er t
he c
onve
ntlo
nal R
/2R
ladd
er b
ecau
a» o
f Its
Inh
eren
tm
on
oto
nlc
lty, w
hlch
guá
rant
eos
no m
lasl
ng d
igita
l codes.
Monoto
nlc
ity Is
partlc
ula
rly Im
porta
nt In
clo
sed
loop
leed
-ba
ck c
on
tro
l sya
tem
s. A
non
-mon
oton
ic r
ala
tionsh
lp c
anca
use
osc
llla
tlon
s th
a!
wlll
oe
ca
tast
roph
lc
lar
tne
syst
em.
Addltl
onally
, th
e 25
6R n
etw
orX
doe
a nal
caua
elo
ad v
/ula
tlons
on th
e re
íere
ncev
olta
ge.
The
bo
tto
m r
esis
tor
and
tha
top
resi
sto
r oí
Ihe
lad
der
netw
ork
!n
Fig
ure
; are
not
tne
sam
o va
lué
as t
he
rem
amde
r oí
th
e ne
twor
k.
The
d
lffe
ren
ce
In
thea
ere
alat
ors
caus
es
the
outp
ut c
hara
cíeris
tlc t
o be
sym
-m
etr
lca
l wlt
h th
eze
ro a
nd fu
ll-ac
ale
poin
ts o
f the
tra
nsf
er
curv
e.T
he llrs
t outp
ut t
ransí
tlonocc
urs
when th
e a
nalo
gsi
gnal
has
reac
hed
+1/2
LS
3 an
d su
ccee
dlng
ou
tpu
ttr
an
sltlo
ns
occ
ur
aver
y 1
LSB
late
r up
to
lull-
scale
.
The
suc
cesa
lve a
ppro
xim
atlo
n re
gist
er (S
AR
) perf
orm
s 8
Ite
ratlo
ns
[o a
ppro
xlm
ate
the
inpu
t vol
tage
. F
or a
ny S
AR
type
con
vert
er, n
-Íte
rat(
ons
are
requ
lred
for
an
n-bi
t co
n-ve
rter
. F
igur
e 2
show
a a
typi
cal e
xam
ple
of a
3-b
ÍI co
n-ve
na
r. I
n th
e A
DC
0803
, A
OC
0809
, tti
e ap
prox
imat
ton
tech
niq
ua
Is e
xten
ded
lo 8
blls
usl
ng t
he 2
56R
net
wor
k.
CO
NTR
OLS
FR
OM
S.A
.R.
RÍH
-1
FIG
UR
E 1
. FU
.Iilo
f L.
jdd«
r a
nd
Sw
ltch
TfM
Fun
ctio
nal D
escr
iptio
n
The
A/D
con
verte
r's a
ucce
aalv
a ap
prox
lmat
lon
regl
star
(SAR
) la
resa
l on
lfi«
pos
itiva
edg
e of
the
atar
t con
vers
ión
(SC
) pul
se. T
he c
onve
rsió
n la
beg
un o
n th
a la
lllng
edg
e of
tha
atan
con
vers
ión
puls
a. A
con
vers
ión
In p
roca
ss w
fll b
eIn
tem
jpte
d b
y re
ceip
t of
a n
ew s
lart
con
vers
ión p
ulse
.C
ontln
uoua
con
vers
ión
tnay
be
acco
mpl
lahe
d by
tyln
g th
een
d-of
-con
vers
ión
(EO
C)
outp
ut lo
the
SC
Inpu
t. If
uaed
lnth
is m
oda,
an
axte
mal
ata
rt co
nver
sión
pul
se s
houl
d b
eap
plle
d af
ter
pow
er u
p. E
nd-o
f-con
vers
lon
wlll
go
low
be-
twee
n O
and
8 c
lock
pul
sas
alte
r th
e rls
lng
edge
o|
star
tco
nver
sión
.
• The
mos
t Im
port
an! a
ectlo
n of
th«
A/O
con
vert
er I»
tne
com
para
tor.
It Is
this
aec
tlon
whl
ch I
s re
spon
sibl
a (o
r the
ultím
ale
accu
racy
oí
Ihe
entlr
a co
nver
ter.
It ¡
s al
so I
he
IDEA
L CU
RVE
-I/I
LSI
• -m
isi
-nao
ER
RO
R'-
i/us
í
M iíi n
n v
> wi
M
T/I
Y|x M
ÍSAC
T1Q
» O
f FUL
L-SC
ALE
RQ
UR
E2.
3-B
ltA/D
Tn
n»
{«rC
urv
«
com
para
tor d
rltt
whl
ch h
as th
e gr
eate
st In
fluen
ce o
n th
era
peat
ablll
ty o
f th
a de
vlce
. A
cho
pper
-sta
billi
.tid
com
-pa
rato
r pr
óvid
as th
e m
ost
el le
ctiv
a m
etho
d of
aa
tlsfy
lng
all t
he c
onve
rter
req
ulre
men
ta.
The
cho
pper
-sta
blllz
ed c
ompa
rato
r con
vert
s th
e O
C In
put
sign
a! In
to a
n A
C s
lgna
l.Thl
s sl
gnal
Is th
en fe
d th
roug
h a
hlgh
gaf
n A
C a
mpl
lllar
and
has
tha
DC
leve
! res
tore
<í.T
his
tech
nlqu
a Ilm
lts th
a dr
ñtco
mpo
nent
of t
he a
mplllle
rsln
caIh
e dr
ltt Is
a D
C c
ompo
nen!
whi
ch Is
not
pas
sed
by'th
e A
Cam
plIH
er. T
hls
mak
es t
he e
ntlre
A/D
con
vert
er e
xfre
mel
yIn
sens
itivo
to te
mpe
ratu
ra, ¡
ong
term
drl
tt a
nd In
put o
ífse
ten
ors.
;
Figu
re 4
sho
ws
a ty
plca
l arr
or c
urve
lor
the
AD
CÓ
808
asm
easu
red
usln
g Ih
e pr
oced
urea
out
llned
In A
N-1
7J).
INFt
MIT
EBES
OLU
TID
XÍE
HFEC
TCOÜ
VEHT
E.H
M
1/1 in
in
ai
vi
vi
7/1vi
» AS
Í RAc
noii
OF
FULL
-SCA
LE
FIG
UR
E!.
3-81
1 Aí
O A
b»ol
utt A
ccuricy
Cur
ve
flEfE
RE
NC
EU
NE
illlíH
I11""
1"1
"""!
!!!!!! fU
LL
«ULE
FIG
UR
E 4
. T
yplc
jl E
rror
Cur
v»
RQ
UR
E5