Você está na página 1de 278

SERVICIO NACIONAL DE ADIESTRAMIENTO EN TRABAJO INDUSTRIAL

SOPORTE Y MANTENIMIENTO
DE EQUIPOS DE
COMPUTACIÓN

MANUAL DE APRENDIZAJE

SISTEMAS
DIGITALES

CÓDIGO: 89001640

Profesional Técnico
SISTEMAS DIGITALES

TAREA 1: IMPLEMENTA CIRCUITOS DIGITALES COMBINACIONALES.

En esta tarea el estudiante implementa sistemas digitales combinacionales,


interactúa para este fin con puertas lógicas y con circuitos integrados de funciones
específicas como: decodificadores, multiplexores y demultiplexores. La operación
a realizar en esta tarea es:

 Entiende e implementa circuitos digitales combinacionales.

EQUIPOS Y MATERIALES:
• Manual del curso. • Display de 7 segmentos.
• Apuntes de clase. • Circuitos integrados (7400, 7404,
• Fuente de alimentación regulada 7432, etc.)
de 5V. • Dip switch.
• Diodos emisores de luz. • Push bottons.
• Resistencias varias de 1/4W • Computadora con microprocesador
(330Ω, 100Ω, etc.). Core I3 o superior.
• Potenciómetro 1KΩ. • Sistema operativo Windows.
• Cables de conexión. • Software de simulación electrónica

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 5


SISTEMAS DIGITALES

1.1. OPERACIÓN: ENTIENDE E IMPLEMENTA CIRCUITOS DIGITALES


COMBINACIONALES.

Primeramente se explica (a manera de repaso) el uso de la tablilla de conexiones


(protoboard), y se describe una opción de fuente de alimentación usando una pila
de 9 volts y el regulador 7805, así como la aplicación de los diodos emisores de
luz (LED), que son esenciales para visualizar los valores de entrada y salida de los
circuitos, incluyendo los interruptores y las resistencias necesarios para su
adecuado funcionamiento.

1. Reconocimiento del protoboard: El protoboard está construido por un bloque


central y dos tiras en los extremos. El bloque central está formado por grupos
de cinco contactos conectados en común, divididos por una canaleta central, de
manera que cuando un componente o dispositivo se inserta en la tablilla,
quedan cuatro contactos libres para interconexiones con las terminales del
dispositivo.

En las tiras de los extremos hay


ocho grupos de 25 contactos
comunes, las cuales son
convenientes para señales como
VCD (voltaje de corriente directa
o positiva), GND (tierra o
negativo) o cualquier señal que
requiera más de cinco contactos
comunes. Es recomendable usar

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 6


SISTEMAS DIGITALES

terminales o alambre de calibre 24 o 26 para la interconexión, ya que usar


alambre de calibre más grueso muy probablemente dañaría los contactos de la
tablilla de terminales.

Para la interconexión de los elementos del circuito dentro de la tablilla de


conexiones, se recomienda preparar alambres descubriendo la parte metálica
de los extremos.

2. Implementar en el protoboard de conexiones los siguientes circuitos:

• Fuente de alimentación 5 volts de corriente directa.

• Circuito para visualizar los valores de entrada.

• Circuito para visualizar los valores de salida.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 7


SISTEMAS DIGITALES

PROCESO:
a) Identifique las terminales del diodo emisor de luz
ánodo y cátodo. Si observamos el contorno inferior del
encapsulado del LED notaremos una parte plana,
como lo indica la figura. La terminal del lado plano es
el cátodo y la otra terminal es el ánodo.
b) Conecte el ánodo del LED en una de las tiras de la
tablilla de conexiones que corresponde al
positivo de la fuente (+5VCD); y el
cátodo del LED, en una de las hileras del
bloque central.
c) A continuación conectamos la resistencia
de 330 K (franjas naranja, naranja y café)
en la tablilla de conexiones, donde una
de sus terminales se coloca en una tira del extremo que corresponderá a la
tierra (GND); y la otra terminal, en la misma fila central donde colocamos el LED
(paso anterior).
Cabe mencionar que en las hileras centrales, los comunes están representados
en forma horizontal y la función de la resistencia es limitar la corriente que
pasará a través del LED, ya que si éste lo conectáramos directamente a la
fuente, posiblemente el LED se quemaría por no tener un límite de corriente.
d) Probamos tres opciones para efectuar la conexión y cerrar el circuito entre el
LED y la resistencia.
• Cable de conexión: La interconexión de un LED y una resistencia se realiza
fácilmente usando un alambre.
• DIP switch: Si ahora deseamos conectar una mayor cantidad de LEDS y
resistencias, utilizamos un DIP switch, el cual consta de 8 switchs, que se
pueden utilizar de uno en uno, o bien, todos a la vez. En la figura se
representa en su conexión más simple.
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 8
SISTEMAS DIGITALES

• Push button: Otra


manera de instaurar el
circuito anterior es
mediante el uso de un
push button. Al oprimir el
botón se cierra el
circuito, permitiendo el
paso de la corriente. Note que la conexión de este dispositivo es en forma
diagonal.

• CONEXIÓN DE LOS CIRCUITOS INTEGRADOS (C.I.).

1º. Para que funcionen correctamente,


deben de estar conectados a una
tensión de 5V. Para realizar esto, el
polo (+) y el polo (-) deben de estar
conectados a una determinada
pata de cada C.I. que se indican en
su hoja de especificaciones, como
en el caso del siguiente ejemplo:
7400 (4 puertas NAND).
2º. El conexionado de los montajes se realizará mediante el protoboard y utilizará
la fila A para las conexiones a 5V (polo positivo) y la fila L para las conexiones
a 0V (polo negativo).
3º. Como fuente de tensión se utilizara una fuente de poder estabilizada con
salida de 5V o en su defecto se puede emplear la fuente explicada
anteriormente. Esto significa que, como los C.I. no admiten más de 5V y una
corriente de 10 mA, no podemos colocar directamente el polo (+) en la fila A,
sino que DEBEMOS PASAR PREVIAMENTE POR UNA RESISTENCIA
LIMITADORA DE TENSIÓN.

¿Qué valor tendrá? Teniendo en cuenta que en sus bornes ha de tener una caída
de tensión de 1V y que la corriente que permita pasar sea de 10 mA, aplicamos la
ley de Ohm:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 9


SISTEMAS DIGITALES

Si no se tiene la seguridad de tener siempre


exactamente 5V en los porta pilas, ya que cuando
son nuevas, los multitester suelen marcar mayor al
voltaje nominal; lo que se realiza es colocar un
POTENCIÓMETRO de 1KΩ. En la siguiente
ilustración recordamos cuales son los valores de
las diferentes resistencias que podemos obtener
según la conexión de sus tres patas (en este caso,
para 1K).

Siempre al comienzo de cada práctica ajustaremos con ayuda de un multitester los


5V. En la primera ilustración podemos ver el esquema eléctrico necesario y, en la
segunda, como sería el montaje con los elementos según su aspecto exterior.

4º. Código de colores del cableado. Para hacer más fácil el montaje y, caso de
que no funcione, su posterior revisión, nos atendremos durante el montaje
OBLIGATORIAMENTE al siguiente código de colores para el cableado:
• ROJO: cualquier cable que conecte un elemento directamente a 5 voltios.
• NEGRO: cualquier cable que conecte un elemento directamente a 0 voltios.
• AMARILLO: las entradas de las puertas lógicas.
• VERDE: conexiones entre diferentes C.I.
• CUALQUIER OTRO COLOR, para las salidas de los diferentes C.I.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 10


SISTEMAS DIGITALES

• COMPROBACIÓN DE LAS PUERTAS LÓGICAS.

1. PUERTA NOT: La puerta NOT o INVERSOR


es aquella que en la salida tiene el valor
inverso de la entrada. Su símbolo y su tabla
de verdad es la siguiente:
Implementar en el protoboard el siguiente
circuito con puerta lógica NOT y con
interruptor. Utilizar el circuito integrado 7404, que consiste en 6 puertas NOT y
cuyo conexionado interno puedes Observar en la figura:

El conexionado tendría el siguiente aspecto:

Uso del conmutador.


El conmutador tiene una finalidad muy concreta:
es el encargado de introducir en la entrada de las
puertas lógicas todos los valores posibles: un “1”
cuando conecta la entrada de la puerta lógica a
5V y un “0” cuando conecta la entrada de la
puerta lógica a 0V. Se puede sustituir, para
simplificar los montajes, por un cable con los dos
extremos pelados. Uno de los extremos, lo

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 11


SISTEMAS DIGITALES

conectamos a la entrada de la puerta lógica y, dependiendo del valor que


queramos darle, conectaremos el otro extremo en la línea A de la Placa borrad
(5V) o en la línea L (0V), tal como podemos ver en el esquema:

Analizar el funcionamiento y completar la tabla de verdad siguiente:

2. Puerta OR (O): La puerta OR es aquella que en la salida está a 0 solamente


cuando todas las entradas están a 0. Su tabla de verdad es la siguiente:

Implementar en el protoboard el siguiente circuito con puerta lógica OR y con


interruptor. Utilizar el circuito integrado 7432, que consiste en 4 puertas OR y cuyo
conexionado interno puedes observar en la figura:

El conexionado tendría el siguiente aspecto:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 12


SISTEMAS DIGITALES

Analizar el funcionamiento y completar la tabla de verdad siguiente:

3. Puerta AND (Y): La puerta AND es aquella que en la salida está a 1 solamente
cuando todas las entradas están a 1. Su tabla de verdad es la siguiente:

Implementar en el protoboard el siguiente circuito con puerta lógica AND y con


interruptor. Utilizar el circuito integrado 7408, que consiste en 4 puertas AND y
cuyo conexionado interno puedes observar en la figura:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 13


SISTEMAS DIGITALES

El conexionado tendría el siguiente aspecto:

Analizar el funcionamiento y completar la tabla de verdad siguiente:

4. Puerta NOR (NO - O): La puerta NOR es UNA PUERTA OR a la que en la


salida se le ha colocado un INVERSOR (puerta NOT) y, por tanto, la salida
estará a 1 cuando todas las entradas estén a 0. Su tabla de verdad es la
siguiente:

Se puede observar que su tabla es la CONTRARIA de la PUERTA OR.


Implementar en el protoboard el siguiente circuito con puerta lógica NOR y con

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 14


SISTEMAS DIGITALES

interruptor. Utilizar el circuito integrado 7402, que consiste en 4 puertas NOR y


cuyo conexionado interno se puede observar en la figura:

El conexionado tendría el siguiente aspecto:

Analizar el funcionamiento y completar las tablas de verdad:

5. Puerta NAND (NO - Y): La puerta NAND es UNA PUERTA AND a la que en la
salida se le ha colocado un INVERSOR (puerta NOT) y, por tanto, la salida
estará a 0 solo cuando todas las entradas estén a 1. Su tabla de verdad es la
siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 15


SISTEMAS DIGITALES

Se puede observar que su tabla es la CONTRARIA de la PUERTA AND.


Implementar en el protoboard el siguiente circuito con puerta lógica NAND y con
interruptor. Utilizar el circuito integrado 7400, que consiste en 4 puertas NAND y
cuyo conexionado interno se puede observar en la figura:

El conexionado tendría el siguiente aspecto:

Analizar el funcionamiento y completar las tablas de verdad:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 16


SISTEMAS DIGITALES

6. Puerta OR EXCLUSIVA o EXOR: La puerta OR EXCLUSIVA o EXOR realiza


una función lógica más compleja que las anteriores. La función es tal que en la
salida habrá un 0 siempre que sus entradas tengan igual nivel. Su tabla de
verdad es la siguiente:

Implementar en el protoboard el siguiente circuito con puerta lógica EXOR y con


interruptor. Utilizar el circuito integrado 7486, que consiste en 4 puertas EXOR y
cuyo conexionado interno puedes observar en la figura:

El conexionado tendría el aspecto de la imagen inferior. Analizar el funcionamiento


y completar las tablas de verdad:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 17


SISTEMAS DIGITALES

• COMPROBACIÓN DE LOS POSTULADOS PRINCIPALES DEL ALGEBRA


DE BOOLE
Realizar la comprobación de los postulados principales del algebra de Boole, para
ello realizar la representación gráfica e implementación física de los siguientes
postulados:

A+1=1 A+0=0

A+A=A A+Ā=1

• SISTEMA COMBINACIONAL CON PUERTAS LÓGICAS.


Implementar un sistema combinacional capaz de cubrir las necesidades de control
de aterrizaje de un pequeño aeropuerto, el cual consta de tres pistas llamadas A,
B y C. En ese aeropuerto aterrizan dos tipos de aviones: un DC9 que requiere de
una sola pista para aterrizar y un B747 que necesita de dos pistas para hacerlo. El
avión B747 tiene prioridad de aterrizar respecto del DC9.

Resolución: Diseñe un sistema combinacional que determine qué tipo de avión


podría aterrizar en función de las pistas disponibles.

1. Especificar el sistema. Las variables que intervienen son:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 18


SISTEMAS DIGITALES

2. Determinar entradas y salidas. Donde las pistas A, B, C son las entradas del
sistema; mientras que el permiso para aterrizar para el DC9 o el B747 son las
salidas que a continuación se representan en un diagrama de bloques.

3. Trasladar el comportamiento del sistema a una tabla de verdad. Hay que


decidir el valor de las salidas (0 o 1) para cada una de las combinaciones de
entrada:

4. Minimizar. Para hacerlo se utilizan los mapas de Karnaugh para simplificar las
funciones DC9 y B747.

5. Diagrama esquemático:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 19


SISTEMAS DIGITALES

6. Simular el sistema empleando un software de simulación de electrónica digital.

7. Realizar la implementación física en el protoboard del sistema digital explicado.

• SISTEMA COMBINACIONAL CON CI MSI Y LSI.

DECODIFICADORES:
Los decodificadores son circuitos combinacionales basados en puertas lógicas
que trasforman un código de tipo binario en código decimal. Su función consiste
en activar una sola de sus salidas dependiendo del estado lógico en que se
encuentren sus entradas. Tienen "n" entradas y 2n salidas.

Implementar un decodificador de 2 entradas y 4 líneas de salida, se tendrá la


siguiente tabla de verdad y circuito.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 20


SISTEMAS DIGITALES

DECODIFICADOR DE 7 SEGMENTOS:
Existen circuitos integrados de decodificadores como: el circuito TTL 7446, 7447 y
7448 que con cuatro entradas (A, B, C y D) en código binario BCD produce siete
salidas (a, b, c, d, e, f y g) activas a nivel bajo (0V) capaces de suministrar
corriente a los leds de un display de 7 segmentos. El 7446 con sus salidas en
colector abierto (30V), el 7447 también con sus salidas en colector abierto (15V) y
el 7448 con salida de potencia y resistencia interna de 2 kilo ohmios.

Tienen además las siguientes entradas de control:

• RBI = entrada de propagación de borrado activa a nivel bajo (0V): a nivel bajo
(0V) apaga el display, siempre que LT esté a nivel alto (5V) y todas las entradas
A, B, C y D estén a nivel bajo (0V). Además, pone la salida RBO a nivel bajo
(0V) para que se pueda propagar el borrado.
• LT = prueba de lámpara: a nivel bajo (0V) todos los segmentos de salida se
encienden (salidas a nivel bajo 0V), siempre que BI esté a nivel alto (5V).
• BI/RBO = borrado prioritario a nivel bajo (0V): con BI a nivel bajo (0V) apaga el
display, independientemente de las demás entradas. Actúa también como
salida indicadora de apagado del display RBO.

Realizar la implementación y la tabla de verdad del circuito que se muestra a


continuación:

MULTIPLEXORES:
Realizar la implementación de un multiplexor y comprobar su funcionamiento, se
puede usar cualquier multiplexor disponible en el laboratorio como: 74151, 74157,

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 21


SISTEMAS DIGITALES

74153 u otro. En esta demostración se muestra un circuito con el multiplexor


74151, que contiene un multiplexor con ocho entradas de datos y una salida.
Tiene una entrada de inhibición (STROBE G) activa a nivel bajo (0V) y tres
entradas de selección (SELECT A, B y C). Cuando STROBE (G) está a nivel bajo,
las entradas SELECT A, B y C seleccionan el canal cuyo dato aparecerá en la
salida.

DEMULTIPLEXOR / DECODIFICADOR:
Realizar la implementación de un demultiplexor/decodificador y comprobar su
funcionamiento, se puede usar cualquier CI disponible en el laboratorio como:
74139, 74138, 74155, 8321 u otro. En esta demostración se muestra un circuito
con el multiplexor 74138. Este circuito integrado contiene un demultiplexor 1:8,
que también puede funcionar como decodificador 3 a 8. La relación de pines de
este integrado es la siguiente:

• A, B y C: entradas de selección activas a nivel alto (5V).


• E3: entrada de validación o de dato activa a nivel alto (5V).
• E2 y E1: entradas de validación activas a nivel bajo (0V).
• Y0, Y1, Y2, Y3, Y4, Y5, Y6, Y7: salidas del demultiplexor activas a nivel bajo
(0V).

La tabla de verdad y el montaje del demultiplexor es la siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 22


SISTEMAS DIGITALES

Para que el circuito funcione como demultiplexor la entrada E3 tiene que estar a 1
y una de las otras dos (E2 o E1) a 0. Si E2=0 el dato se introduce por E1 y si E1=0
el dato se introduce por E2. En ambos casos el dato es activo a nivel bajo al igual
que las salidas.

Para realizar la decodificación las variables de validación deben valer E1=0, E2=0
y E3=1.

Al estar la salida seleccionada a nivel bajo (0V) para visualizar la demultiplexación


o la decodificación colocamos el LED de tal manera que se encienda cuando hay
0V a la salida y se apague con 5V en la salida.

FUNDAMENTO TEÓRICO:

SISTEMAS DIGITALES.
Se denomina sistema digital al
sistema que realiza operaciones
mediante dígitos, los cuales
usualmente se representan como
números binarios.

Las principales operaciones son:


ingreso, procesamiento, transmisión,
almacenamiento y despliegue de
datos digitales.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 23


SISTEMAS DIGITALES

Los sistemas análogos representan las variables en forma continua, en el tiempo;


los digitales en forma discreta. Los sistemas simbólicos emplean letras o iconos
como símbolos no numéricos.

Los sistemas análogos están siendo reemplazados por sistemas digitales, para
esto las cantidades físicas en forma análoga, por ejemplo: sonidos, imágenes,
voltajes, distancias, deben ser convertidas a representaciones digitales mediante
técnicas de aproximación, empleando dispositivos de conversión análogo-
digitales. Primero se toman muestras, luego se convierten las muestras en
números.

DISEÑO CLÁSICO Y ACTUAL:


El permanente cambio que tiene el estudio de sistemas digitales se debe
principalmente a tres factores:

• La continua evolución de la tecnología digital que en menor tamaño coloca cada


vez mayor número de componentes más rápidos.
• El desarrollo de herramientas de ayuda al diseño digital (CAD) que permiten
enfrentar tareas extremadamente complejas
• Las nuevas metodologías de desarrollo de software que facilitan el desarrollo de
aplicaciones complejas con interfaces visuales, como las herramientas CAD y
los lenguajes de descripción de hardware (HDL).

Las primeras metodologías de diseño digital, que se podrían denominar clásicas,


permiten comprender los principios de funcionamiento de los sistemas digitales
básicos, y pueden ser desarrolladas empleando papel y lápiz. Emplean los
principios teóricos del álgebra de Boole y algoritmos de minimización. Sin embargo
los algoritmos son de tipo no polinomial, y no pueden ser aplicados a situaciones
de mediana complejidad (redes con más de 5 entradas), debido a su costo
exponencial.

Sin embargo, al ser posible enfrentar diseños digitales más complejos, debido a la
tecnología, debieron desarrollarse nuevas heurísticas para representar sistemas
digitales, minimizarlos, y poder implementarlos en base a bloques lógicos
determinados. En estos nuevos algoritmos, están basadas las herramientas CAD.
Su exposición y estudio corresponde a disciplinas de programación, estructuras de
datos y algoritmos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 24


SISTEMAS DIGITALES

CONCEPTOS BÁSICOS EN SISTEMAS DIGITALES.


Comenzaremos nuestro estudio realizando un breve repaso de los conceptos
básicos de electrónica digital.

LÓGICA DIGITAL:

DEFINICIÓN DE LÓGICA DIGITAL.


Los circuitos que trabajan con electrónica digital son aquellos que son capaces de
obtener decisiones lógicas como salida a partir de unas ciertas condiciones de
entrada.

En consecuencia, se puede decir que en algunos casos parecen que son


inteligentes, aunque esto no es cierto, ya que no tienen capacidad para pensar por
sí mismos, sino que están programados por la persona que los diseñó.

La electrónica analógica y
la digital son opuestas, ya
que la primera trabaja con
señales que varían de
forma continua, mientras
que la segunda trabaja con
señales de naturaleza
incremental. En electrónica analógica los parámetros de medida usuales son los
voltajes e intensidades, mientras que en electrónica digital se miden los estados
lógicos de un circuito.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 25


SISTEMAS DIGITALES

ELEMENTOS DIGITALES DE DECISIÓN Y MEMORIA.


Como se ha visto antes, los circuitos digitales tienen ciertos estados lógicos dentro
de su funcionamiento, lo que significa que presentan cierta memoria para realizar
las tareas para las que se les han programado. El elemento que hace posible que
se disponga de esa memoria es la puerta lógica, que será el elemento base de
toma de decisiones de nuestros circuitos.

Así interconectando varias puertas lógicas se conseguirán codificar los posibles


resultados que se deseen obtener de un circuito, codificando la información
necesaria en la red de puertas lógicas que se formará en cada caso.

La salida de estos elementos es un “si” o un “no”, que dependerá de los estados


de sus entradas. Por ello se trabajará con el sistema de numeración binario, en el
que solo existirán esos estados. Este sistema es un sistema en base 2, frente al
de base 10 que se utiliza normalmente en la vida cotidiana. Para poder trabajar
con él se utilizará el álgebra de Boole, que definirá las normas de utilización de
este nuevo sistema.

SISTEMA BINARIO.
Como se dijo anteriormente este sistema es
el que se utilizará cuando se trabaje en
electrónica digital. Se basa en la utilización de
dos números para representar cualquier
cantidad, que son el “0” y el “1”.

En electrónica estos números representarán


los niveles de tensión de cada punto de un
circuito, “1” cuando exista tensión alta y “0”
cuando la tensión sea nula.

El procedimiento de la formación de cualquier


número en este sistema sigue el mismo
procedimiento que el sistema decimal, pero
sustituyendo las potencias de 10 por
potencias de dos.

Las equivalencias entre los primeros números decimales y los binarios se


muestran en la tabla.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 26


SISTEMAS DIGITALES

CONVERSIÓN DE DECIMAL A BINARIO.


Existen dos métodos para realizar la conversión de un número decimal a binario.

• Teniendo en cuenta las sucesivas potencias de dos y su correspondiente valor


en decimal. Se ajustará la suma total de los números binarios puestos a uno y
su correspondiente valor en decimal. La similitud entre ambos sistemas se
muestra más abajo.

Potencias de 2 28 27 26 25 24 23 22 21 20

Equivalencia decimal 256 128 64 32 16 8 4 2 1

• Realizando sucesivas divisiones por la


base binaria 2. El resultado se obtiene
recogiendo números enteros de la
operación, empezando por el último
cociente y siguiendo por los restos de
cada división, desde abajo hacia arriba.

ARITMÉTICA BINARIA.
Las reglas para realizar operaciones en aritmética binaria son similares a las que
se utilizan en el sistema decimal, pero mucho más simples, ya que se utilizan
solamente dos números. Las reglas para las cuatro operaciones básicas son:

OTROS CÓDIGOS BINARIOS.


Hay otros códigos binarios que se
utilizan en electrónica digital y que por
su importancia se explican a
continuación.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 27


SISTEMAS DIGITALES

• Decimal codificado en binario (BCD):


Este sistema es una forma particular de emplear el sistema binario, que se utiliza
para representar números decimales. Cada dígito decimal se representa con
bloques independientes de 4 bits codificados en binario. Se utiliza para
representación de números decimales en displays. Su formato se representa en la
tabla. De esta forma la representación de números decimales se haría de la
siguiente forma:

• Código de paridad de bit:


Éste no es en sí un sistema de numeración, sino que más bien es un sistema de
seguridad para otro sistema de numeración.

Se utiliza en la transmisión de datos entre computadoras y en algunos tipos de


memorias, para controlar que el byte recibido es correcto y no ha sufrido
modificación de la información en el proceso de transmisión de los datos digitales.

Funciona con un solo bit, que representa el tipo de paridad que tiene el byte que lo
acompaña junto con el propio bit de paridad, según los siguientes formatos.

o Paridad impar: El número de unos del grupo de bits formado por los datos y el
bit de paridad es siempre impar, con lo que el bit de paridad es puesto a uno si
el número de unos del dato original era par y se pone a cero en el caso
contrario.
o Paridad par: El número de unos del grupo de bits formado por los datos y el bit
de paridad es siempre par; con lo que el bit de paridad es puesto a uno si el
número de unos del dato original era impar y se pone a cero en el caso
contrario.

ÁLGEBRA DE BOOLE.
Este tipo de álgebra es el que define todas las operaciones de la lógica digital y la
forma con la que se trabajará con las señales digitales.

PROPIEDADES DEL ALGEBRA DE BOOLE.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 28


SISTEMAS DIGITALES

A continuación se enumeran las propiedades del álgebra de Boole que se


cumplirán en los circuitos digitales. Las utilizaremos para simplificar las funciones
lógicas que se verán más adelante.

Son las mismas que se utilizan en las matemáticas comunes, pero añadiendo
algunas normas más.

Propiedad conmutativa: Dadas dos variables booleanas se cumple:

Propiedad distributiva: Dadas tres variables booleanas se cumple:

Propiedad asociativa: Dadas tres variables booleanas se cumple:

Elemento neutro: Para cada operación que se puede realizar en el álgebra de


Boole existe un elemento neutro, tal que no modifica el valor de un operando
cualquiera, si se aplica dicha operación con el elemento neutro. Es decir:

Elemento simétrico: Es el elemento inverso de un operando. Se representa con


una línea superior encima de su símbolo. Siempre se cumple que:

Esto significa que:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 29


SISTEMAS DIGITALES

TEOREMAS DEL ÁLGEBRA DE BOOLE.


Los teoremas que se enumeran a continuación son esenciales para reducir de
forma eficaz las expresiones lógicas que representarán los circuitos que se
diseñarán con puertas lógicas.

Ley de dualidad: Toda expresión del álgebra de Boole tiene una expresión dual.
Ésta se forma a partir de la original cambiando los “0” por “1” y los “+” por “x” y
viceversa. Es decir:

Ley de idempotencia: Para toda variable lógica se cumple:

Ley de absorción: Dadas dos variables lógicas se cumple:

Ley de la doble negación: Para toda variable lógica se cumple:

Leyes de Morgan: Sirve para convertir sumas en productos y viceversa. Son dos
leyes muy importantes para la práctica, ya que permiten realizar todas las
operaciones lógicas con una sola función.

PUERTAS LÓGICAS.
Estos elementos digitales son los que van a permitir realizar las funciones lógicas
que se deseen, en función de las salidas que requieran para unos determinados
estados lógicos de entrada (las variables).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 30


SISTEMAS DIGITALES

Las puertas trabajarán con estados lógicos de tensión, es decir, el “1” lógico se
representará con tensiones altas y el “0” lógico con tensiones bajas. Todas las
funciones que deba realizar un circuito lógico estarán controladas por el álgebra
de Boole. Cada puerta lógica representará un tipo de operación del álgebra de
Boole, con lo que con combinaciones de varias puertas se pueden formar
funciones complejas formadas por múltiples variables.

TIPOS DE PUERTAS LÓGICAS.


A continuación se representarán las puertas lógicas fundamentales junto con su
símbolo esquemático y la tabla de verdad que las representa. En la tabla de
verdad se representan los estados de la salida de la puerta dependiendo del valor
que tomen las variables de entrada.

Puerta lógica OR: Representa la suma del álgebra de Boole. Su salida será 1 si
hay al menos una entrada puesta a 1.

Puerta lógica AND: Representa el producto en el álgebra de Boole. Su salida


será 1 si todas sus entradas son 1.

Puerta lógica NOT: Representa la negación lógica del álgebra de Boole. Su


salida será la inversa de su entrada.

Las puertas que se han mostrado hasta ahora son las puertas básicas, pero hay
más, que aparecen como combinación de las anteriores y son también muy
utilizadas en los circuitos digitales de propósito general.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 31


SISTEMAS DIGITALES

Puerta lógica NOR: Es la suma lógica negada. Se compone de la suma normal


seguida de una puerta NOT. Su salida es 1 si son 0 todas sus entradas. Su
símbolo esquemático y tabla de verdad son:

En donde el círculo existente en la salida de la puerta quiere decir que su salida


está negada.
Puerta lógica NAND: Representa el producto lógico negado, con lo que su salida
será 0 si sus dos entradas son 1. Su símbolo y tabla de verdad son:

Puerta lógica OR-Exclusiva: Esta puerta es la combinación de varias puertas de


las que se han visto anteriormente y la más complicada internamente. Su salida es
uno si sus dos entradas son distintas y cero si son iguales. Su símbolo
esquemático y tabla de verdad son:

Puerta lógica NOR-Exclusiva: Es la puerta complementaria a la anterior. Su


salida será 1 si sus dos entradas son iguales y será cero en el caso contrario. Su
símbolo y tabla de verdad son:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 32


SISTEMAS DIGITALES

CARACTERÍSTICAS DE LAS PUERTAS LÓGICAS.


Dentro de los posibles circuitos integrados que contienen puertas lógicas existen
varios tipos de tecnología. La elección de uno de estos tipos de tecnología para
una aplicación concreta se realiza a partir de unas características mínimas
requeridas por esa aplicación.

Las características más importantes que tiene una puerta lógica son:

• Retardo de propagación: Es el retraso de respuesta que presenta una puerta


lógica, desde que se aplica una entrada lógica al circuito y éste da la respuesta
correspondiente a esa entrada.
• Potencia de disipación: Es la potencia que consume una puerta lógica en
estado estacionario. Se mide en mW.
• Fan out: Indica la cantidad de carga que se puede conectar a la salida de una
puerta lógica. Es decir, las puertas que se pueden conectar a la salida de ésta.
• Fan in: Es el máximo número de entradas con el que se ha construido una
puerta lógica.
• Inmunidad al ruido: Mide la cantidad máxima de ruido que puede
superponerse a la una señal digital para que la puerta que la recibe no pase de
un estado lógico a otro. Es la diferencia entre el nivel de tensión desde la salida
de una puerta y el umbral de la puerta de entrada que se accionará. Este efecto
se observa mejor en la siguiente figura:

FAMILIAS LÓGICAS.
Existen varias familias lógicas en el mercado, cada una con unas determinadas
características. Así dependiendo de cada aplicación habrá que seleccionar la que
mejor se adapte a cada caso, ya sea en velocidad, requisitos de consumo o que
sea inmune al ruido que exista en una fábrica.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 33


SISTEMAS DIGITALES

Debido a los requisitos de la industria actual las dos familias lógicas que más han
proliferado son la CMOS y la TTL, sobre todo la TTL ya que presenta una mayor
combinación de circuitos lógicos en sus integrados.

Estas dos familias lógicas son las que se van a estudiar con un mayor detalle en
los siguientes párrafos.

FAMILIA LÓGICA TTL.


Es la familia lógica más extendida del mercado y por ello es la que mayor
combinación de circuitos lógicos digitales presenta. Su alimentación es de +5V
con una tolerancia de ± 5V, un fan out de 10 y buena inmunidad al ruido. Su
nombre viene de Lógica Transistor - Transistor (TTL), que es la tecnología con la
que está construida. Dentro de esta familia existen diversas subfamilias que
presentan distintas características en cuanto a velocidad y consumo, estas son:
• TTL Standard: Se identifica como SN74xx. El consumo por puerta es de 10mW
y funciona hasta frecuencias de 35MHz. El retraso por puerta es de 10nS.
• TTL de baja potencia: Se identifica como SN74Lxx. Se caracteriza por lo poco
que consumen. El consumo por puerta es de 1mW y funciona hasta frecuencias
de 3Mhz. El retraso por puerta es de 33nS.
• TTL de alta velocidad: Se identifica como SN74Hxx. Se caracteriza por su
velocidad. El consumo por puerta es de 22mW y funciona hasta frecuencias de
50MHz. El retraso por puerta es de 6nS.
• TTL Schottky: Se identifica como SN74Sxx. Es el más rápido de la familia TTL.
El consumo por puerta es de 19mW y funciona hasta frecuencias de 125MHz.
El retraso por puerta es de 3nS.
• TTL Schottky de bajo consumo: Se identifica como SN74LS. Se caracteriza por
su combinación de bajo consumo y alta velocidad, que de cómo resultado
puertas con las siguientes características: el consumo por puerta es de 2mW,
funcionando hasta frecuencias de 35MHz, siendo el retraso por puerta de 10nS.

FAMILIA LÓGICA CMOS.


Es la segunda familia lógica más vendida en el mercado. Se caracteriza por el
bajo consumo de energía que necesita para funcionar, aunque éste depende de la
frecuencia de trabajo del circuito en cuestión. Al igual que en la familia anterior hay
varias versiones o subfamilias lógicas dentro de esta tecnología, dependiendo de
las aplicaciones en las que se vallan a utilizar.

Como características básicas hay que señalar que se pueden alimentar con un
rango de tensiones entre 3 y 15V, presentando un fan out mucho mayor que el

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 34


SISTEMAS DIGITALES

que presenta la familia TTL, en este caso de 50. También presenta una fabulosa
inmunidad al ruido, con lo que no presenta ningún inconveniente de uso en
ambientes muy ruidosos, como son las fábricas.

Las principales desventajas que presenta esta familia son su baja velocidad y un
cuidado mayor en la manipulación de estos componentes, ya que se pueden
romper de forma muy fácil en presencia de electricidad estática. Las subfamilias
de la familia lógica CMOS son:

• CMOS standard: Está formado por la serie de circuitos integrados de la serie


4000. Esta serie tiene un consumo por puerta de 2,5nW y un tiempo de
respuesta de 40nS.
• HCMOS: Es la familia CMOS de alta velocidad, identificándose por la serie
74HCxx. Su alimentación debe ser en entre 2 y 6V, tiene un retardo de 9nS y un
consumo por puerta de 2,5nW.
• HCMOS compatible con la familia TTL. Pertenece a la serie 74HCTxx. Su
tensión de alimentación es de 5V, siendo las demás características similares a
las de los casos anteriores.

A continuación se presenta una tabla resumen de las familias lógicas que se han
visto junto con sus características.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 35


SISTEMAS DIGITALES

FUNCIONES EN EL ÁLGEBRA DE BOOLE.


Una función lógica es una expresión construida a base de variables booleanas
unidas mediante operandos lógicos de suma y producto. Se representa por f (c, b,
a), para indicar que el resultado de una función depende de tres variables lógicas
llamadas a, b y c. Por ejemplo una función lógica común podría ser:

F (c, b, a) = Salida lógica = a + cb + cba

Estas funciones se pueden considerar como una de las formas existentes de


expresar el funcionamiento de un circuito electrónico digital, ya que cada término
representa uno de los posibles estados de la salida. Posteriormente estas
funciones se transformarán en circuitos digitales construidos en base a las puertas
lógicas que se han visto.

De esta forma los circuitos digitales pueden ser considerados como una caja
negra que tiene una serie de entradas (variables) y una serie de salidas, de forma
que se cumple/n la/s función/es lógica/s que esta representa. Es decir:

TABLA DE LA VERDAD
Es una forma gráfica de representar una función
lógica. Es la manera de la que se empiezan a
realizar todos los circuitos lógicos combinacionales
que han de presentar unos ciertos resultados, que
dependen de los estados que presentan las
entradas del circuito digital en un instante
determinado.

En la tabla de la verdad se representan todas las


posibles combinaciones de entrada y las correspondientes de salida, en cada
estado, de forma que se cumplan los requisitos enunciados en el problema a
resolver.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 36


SISTEMAS DIGITALES

A partir de aquí es muy sencillo convertir la tabla de verdad a formato de función,


basta con crear una función por medio de sumas de productos de las
combinaciones que dan como resultado 1, tomando a si a=1 y ā si a=0, o como
producto de sumas de las combinaciones que dan como resultado 0, tomando a si
a=0 y ā si a=1. Es decir, la tabla de la verdad anterior se puede representar como:

Otra forma de representar la tabla de la verdad es mediante una expresión que


indique para qué combinaciones de entrada la salida debe ser 1. Así para la tabla
anterior sería:

RESOLUCIÓN LÓGICA DE PROBLEMAS.


Para resolver un problema correctamente y de forma organizada se han de seguir
una serie de pasos entre el enunciado del problema y la obtención del circuito
final. Como requisitos fundamentales están los de entender de forma clara el
problema a resolver y el realizar el circuito de la forma más reducida posible, ya
que ello nos llevará a la obtención de un circuito más sencillo de realizar y con un
menor costo de desarrollo.

Así las fases mínimas que se han de realizar en la resolución de un problema son:

1. Comprender de forma adecuada el problema que se trata de resolver y


determinar en número de entradas y salidas necesarias que debe tener el
circuito a diseñar para la solución de éste.
2. Formar la tabla de verdad con todas las entradas y salidas que se han
considerado necesarias, con lo que para cada combinación de entrada se
obtienen la salida correspondiente, según indique el problema.
3. Obtener las ecuaciones lógicas del circuito a partir de la tabla de la verdad
antes obtenida. Se obtendrá una ecuación por cada salida que se necesite.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 37


SISTEMAS DIGITALES

4. Simplificar al máximo las ecuaciones lógicas obtenidas, para así obtener el


circuito más reducido posible. Más adelante se explicará un método de
simplificación muy eficaz, que se realiza gráficamente.
5. Convertir las ecuaciones obtenidas en un circuito lógico que se pueda montar.

A continuación se muestra un ejemplo de realización de un circuito práctico.

Ejemplo: Se desea controlar dos motores M1 y M2 por medio de tres interruptores


A, B y C, de forma que se cumplan las siguientes condiciones:

1) Si A está pulsado y los otros dos no, se activa M1.


2) Si C está pulsado y los otros dos no, se activa M2.
3) Si los tres interruptores están cerrado se activan M1 y M2.
4) En las demás condiciones los dos motores estarán parados.

Solución:
Siguiendo las fases que se han expuesto anteriormente:

Fase 1: Las entradas serán los tres interruptores, puesto que son los que el
operario maneja para controlar los motores, y los motores serán las salidas, ya
que es lo que se trata de controlar.

Fase 2: Se realiza la tabla de la verdad para todas las posibles combinaciones de


entrada.

Fase 3: Obtención de las ecuaciones lógicas a partir de la tabla de verdad.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 38


SISTEMAS DIGITALES

Fase 4: Simplificación de las funciones mediante métodos matemáticos conocidos


del álgebra de Boole.

Fase 5: Conversión de las funciones lógicas obtenidas en la fase anterior en un


circuito lógico combinacional.

Pero si se tiene en cuenta que la operación axb + axb corresponde a la puerta


lógica NOR-Exclusiva el circuito anterior se puede representar como:

Como se ve hay dos maneras de simplificar los circuitos lógicos obtenidos, una
mediante las leyes del álgebra de Boole y otra mediante puertas lógicas
complejas, que se adapten a las funciones lógicas obtenidas.

REALIZACIÓN DE FUNCIONES CON PUERTAS NAND Y NOR.


El tipo de circuitos que se van a aprender a diseñar aquí es de un formato
especial, ya que todo el circuito estará construido por el mismo tipo de puertas. La
principal aplicación de esto es el diseño de circuitos que se van a implementar en
PAL o dispositivos lógicos programables, en los que todo el circuito debe estar
construido en puertas NAND o NOR.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 39


SISTEMAS DIGITALES

Otra posible aplicación es la de aprovechar al máximo las posibles puertas libres


que quedan en un circuito lógico que se haya montado, de manera de que se
pueda eliminar algún circuito integrado con el fin de abaratar el producto final.

El diseño de este tipo de circuitos es el mismo que en los demás casos, salvo que
la ecuación obtenida debe ser transformada mediante las leyes de Morgan y la de
la doble negación, que ahora se recuerdan.

Así la siguiente función lógica se puede convertir a puertas NOR como:

Para convertirla en puertas NAND se haría como:

La inversión de una variable se consigue con una puerta NAND o NOR,


introduciendo la variable a invertir por todas las entradas de esa puerta a la vez.

SIMPLIFICACIÓN DE CIRCUITOS LÓGICOS.

TIPOS DE CIRCUITOS LÓGICOS


Hay dos tipos de circuitos lógicos, combinacionales y secuenciales. Las
diferencias entre uno y otro son significativas, estas se explica a continuación.

• Circuitos lógicos combinacionales: Son aquellos en los que el estado de las


salidas dependen únicamente y exclusivamente del estado de las entradas del
circuito en ese mismo instante.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 40


SISTEMAS DIGITALES

• Circuitos lógicos secuenciales: Son un caso parecido al anterior, pero las


salidas en un instante determinado dependen además de las entradas del
circuito en ese instante, del estado en el que se encontraba éste en el estado o
estados anteriores. El circuito presenta cierta memoria con respecto a lo que ha
ocurrido con anterioridad.

SIMPLIFICACIÓN DE FUNCIONES LÓGICAS.


Hay distintos métodos de simplificación de las funciones lógicas que representan a
diversos circuitos digitales. El motivo principal de la simplificación de funciones es
el de realizar un circuito físico lo más reducido posible, de manera que éste sea lo
más económico y simplificado posible.

Simplificación matemática.
Este método de simplificación consiste en la aplicación directa de las leyes del
álgebra de Boole y sus teoremas asociados.

El procedimiento a seguir es similar al de la simplificación de las funciones


matemáticas comunes, aplicando métodos como son el factor común, eliminación
de valores no válidos, etc. Este método tiene la desventaja de que su eficacia final
depende mucho de la habilidad del operario, mejorando su efectividad con la
experiencia de éste.
Con este método no se reduce el circuito al máximo posible, para ello habrá que
utilizar otro método que se explicará más adelante.

Un ejemplo sencillo de la utilización de éste método se puede observar en las


siguientes expresiones:

Simplificación gráfica (Karnaugh).


Este es un método de simplificación gráfico y por ello es más sencillo de utilizar
que otros. Es el método de simplificación más conocido por los diseñadores, se
llama método de simplificación por Karnaugh.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 41


SISTEMAS DIGITALES

Éste es un método muy eficaz puesto que la función resultante está lo más
simplificada posible (no se puede reducir más), siendo las demás simplificaciones
posibles debidas a combinaciones de hardware que cumplen de manera exacta
algunas de las partes obtenidas en las ecuaciones resultantes de la simplificación
gráfica. Las puertas lógicas que cumplen este tipo de condición son la NOR-
Exclusiva y OR-Exclusiva, cuyas ecuaciones son:

Esta simplificación se realiza mediante tablas que tienen un formato especial, de


manera que de una casilla a otra solo cambie el valor de una variable. El aspecto
de estas tablas, así como las variables a las que afecta, es:

Estos diagramas se pueden ampliar hasta 6 variables o más pero su manejo se


vuelve muy engorroso. Si se van a manejar más variables es conveniente realizar
la simplificación por la computadora, que utiliza para ello otro método de
simplificación.

Si se observan los diagramas anteriores se ve como en la esquina superior


izquierda aparecen los nombres de las variables y a su lado los valores que estas
pueden tomar.

Además para rellenar de forma más cómoda los diagramas se han situado, en
cada casilla, los números decimales correspondientes a cada combinación de las
variables de entrada, suponiendo que estas están colocadas de mayor a menor.
Es decir a la combinación 00101 correspondiente a las entradas EDCBA,
correspondiéndole el número decimal 5.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 42


SISTEMAS DIGITALES

Para la correcta simplificación de una función lógica se deben seguir una serie de
pasos bien definidos, que se ajusten a una serie de normas concretas. Para ver
todo esto se va a realizar un ejemplo práctico:

Ejemplo: La función a simplificar será:

Solución:
Se seguirán los siguientes pasos:

1. Se dibuja el mapa más adecuado para el número de variables que requiere la


función a simplificar. En nuestro caso el de 3 variables.

2. Se escribe un 1 o un 0 en las casillas que correspondan, como si fuera una


tabla de la verdad.

3. Se agrupan los unos de la cuadrícula de forma que se cumplan las siguientes


normas:
• Cada lazo debe contener el mayor número de 1 posible, agrupando por
grupos de 16, 8, 4, 2 o 1.
• Los lazos pueden quedar superpuestos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 43


SISTEMAS DIGITALES

• No se pueden formar grupos de unos en formato diagonal, solo en horizontal


y vertical.
• Se deben formar el mínimo número de lazos posible y lo más grandes que se
pueda.
• La columna de la izquierda es adyacente con la de la derecha y la primera
fila con la última, pudiendo formar lazos entre ellas.

En este caso los lazos formados son:

4. La expresión final simplificada se obtiene de los grupos formados según el


siguiente criterio: En cada grupo desaparece la variable o variables cuyo valor es
cero en la mitad de los cuadros del grupo y uno en la otra mitad. Las variables que
permanecen son tomadas como no negadas si su valor es uno en todo el grupo y
como negadas si su valor es cero. Así la función simplificada será:

NOTA: En casos en los que halla combinaciones de entrada en las que no nos
importe el estado final de la salida, al sustituir estas posiciones en el mapa de
simplificación se pondrá una X, que podrá ser incluida o excluida de los lazos que
se formen para la simplificación de la función lógica resultante.

CIRCUITOS LÓGICOS COMBINACIONALES:


Existe una amplia variedad de circuitos lógicos combinacionales construidos para
propósitos concretos. Éstos se construyen a partir de combinaciones de las
puertas lógicas estudiadas, pero agrupando todo el circuito en un solo chip, de
forma que se pueda integrar en un proyecto de forma rápida y sencilla.

Los circuitos integrados que se explican son de este tipo y como se verá cumplen
una amplia gama de aplicaciones.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 44


SISTEMAS DIGITALES

DECODIFICADORES.
Los decodificadores son circuitos lógicos combinacionales que convierten un
código de entrada codificado en un sistema numérico binario o no binario, en otro
formato que estará sin codificar.

Hay dos tipos de decodificadores, los que generan una sola salida para cada
combinación de entrada y los que proporcionan distintos formatos de salida, que
representan la combinación de entrada, de forma legible para el técnico.

Los tipos más comunes de decodificadores se presentan en los siguientes


apartados.

Decodificadores binarios.
Este tipo de decodificadores se encargan de convertir la señal binaria de entrada
en varias señales de salida, de forma que por cada código binario de entrada se
activa una sola salida. Así un decodificador binario de 2 entradas tendrá 4 salidas,
desde la 0 hasta la 3; y uno con 4 entradas tendrá 16, desde la 0 hasta la 15. Es
decir tienen tantas salidas como combinaciones de entrada se puedan generar.

A estos decodificadores se les conoce como, decodificador 2/4 si tiene dos


entradas, decodificador 4/16 si tiene cuatro entradas, etc.

El esquema interno de estos circuitos así como su tabla de verdad se pueden ver
en la siguiente figura.

Decodificador BCD/decimal.
Este decodificador es similar al de la figura de arriba pero
en este caso tiene cuatro entradas binarias en formato
BCD, con lo que solo se presentan 10 posibles
combinaciones de entrada, por lo que solo tendrá 10
salidas. Su tabla de la verdad se muestra en la figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 45


SISTEMAS DIGITALES

La mayor parte de los decodificadores BCD/binario comerciales incluyen algún


sistema de eliminación de entradas no válidas, debido a que las últimas
combinaciones binarias de entrada no son válidas en código BCD, con lo que no
se activará ninguna salida.

APLICACIÓN DE LOS DECODIFICADORES.


Una aplicación práctica de los decodificadores es la de generación de circuitos
combinacionales de forma sencilla, con la única ayuda de una puerta OR o AND,
dependiendo del tipo de lógica que utilice el decodificador.

Para ello bastará con sumar o multiplicar con la puerta lógica, las salidas del
decodificador que proporcionen la función lógica que se pretende conseguir. Así
para generar la función lógica f (c, b, a) =Σ (0, 1, 3, 5,7) bastará con montar uno de
los siguientes circuitos:

El circuito comercial más utilizado es el


decodificador BCD-decimal (4028).
Este chip funciona con lógica positiva
de entrada y positiva de salida.

La tabla de la verdad que define su


funcionamiento es la siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 46


SISTEMAS DIGITALES

ASOCIACIÓN DE DECODIFICADORES.
Para conseguir decodificadores mayores a partir de otros más pequeños algunos
decodificadores incorporan dos señales de inhibición para que mediante algún
circuito lógico se puedan combinar.

Esta asociación o combinación se puede realizar de la siguiente manera:

Se puede apreciar cómo se consigue una nueva entrada de código a partir de una
señal de inhibición de cada circuito integrado, gracias a una puerta inversora. Con
ello se consigue seleccionar un decodificador para las primeras 8 combinaciones
de entrada y otro para el resto. Las otras dos entradas de inhibición sirven para
una entrada de inhibición general para la asociación conseguida.

CODIFICADORES.
Realizan una conversión de un cierto número de señales de entrada sin codificar
en otras de salida que están codificadas, es decir hacen justo lo contrario que el
circuito que hemos visto en el apartado anterior.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 47


SISTEMAS DIGITALES

Se utiliza ampliamente para introducir datos que provienen de un teclado, por


ejemplo el de una calculadora, para convertir las señales que se generan en éste
en un código binario u otro que pueda entender la máquina que los va a procesar.

La mayor parte de ellos funciona con lógica negativa, es decir, el significado del 0
y el 1 están invertidos, de forma que una entrada está activada con cero y
desactivada con uno.

Un circuito práctico de éste tipo es:

La tabla de la verdad correspondiente es:

En otra combinación que no esté presente en la tabla de la verdad se puede


producir cualquier estado en la salida.

Los codificadores que más se utilizan son codificadores con prioridad, con lo que
se resuelve el problema anterior. Su filosofía de funcionamiento consiste en que la

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 48


SISTEMAS DIGITALES

salida presentará el código de la entrada que mayor prioridad tenga, aunque estén
seleccionadas varias entradas a la vez.

Este tipo de codificadores presentan la siguiente tabla de verdad:

En donde la X puede ser cualquiera de los estados 0 o 1.

El símbolo esquemático que representa este codificador es:

En donde I es una entrada de inhibición que permite al técnico controlar el


funcionamiento global de chip. Así un 1 hará que el chip no funcione, con lo que
todas sus salidas estarán puestas a nivel alto, y un cero hará que el circuito
funcione normalmente.

Además se le han añadido dos salidas adicionales, que funcionan con lógica
negativa, su función es:

• P0 indica que ninguna de las entradas está activa.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 49


SISTEMAS DIGITALES

• P1 indica que una o más entradas están activa. Señal muy útil para almacenar
los datos pulsados en un circuito con memoria cuando se activa alguna entrada.

El codificador decimal / BCD 40147 integrado de la familia CMOS tiene el patillaje


que se muestra en la figura que se presenta a continuación, este chip funciona con
lógica negativa de entrada y con lógica negativa de salida. Además tiene prioridad
9-0. Por ello su tabla de la verdad es la que se muestra:

ASOCIACIÓN DE CODIFICADORES.
Aprovechando las dos señales adicionales de salida que tienen los codificadores
con prioridad se pueden realizar combinaciones de codificadores pequeños para
conseguir uno mayor. La
asociación de ambos se
hará como se muestra en la
figura.

Se puede observar como si


se pulsa una tecla del
codificador de la derecha
provoca que la salida P0 se
ponga a nivel 1 e inhiba al
codificador de la izquierda,
con lo así se guarda la
prioridad. Las puertas AND
son las encargadas de unir las salidas de ambos codificadores, y el inversor se
encarga de proporcionar una salida adicional de mayor peso que las anteriores

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 50


SISTEMAS DIGITALES

indicando que el codificador de mayor peso está activado, es decir que se está
dando una combinación de entrada de entre 8 y 15.

CONVERTIDORES DE CÓDIGO.
Un convertidor de código es un circuito lógico digital que tiene como entrada una
información codificada en un código digital y proporciona como salida otra señal
codificada pero en un código diferente al de entrada.

Los conversores de código se pueden construir manualmente mediante un


decodificador y un codificador seguidos, intercambiando las líneas de
salida/entrada entre ambos, de forma que se adapten los códigos de la forma
deseada.

Un convertidor de código muy utilizado es el que convierte de código binario a


código de 7 segmentos. Éste es utilizado para visualizar números con displays, de
manera que se ve el código binario de entrada en formato de caracteres gráficos.

Dentro de estos conversores los hay de ánodo común o de cátodo común,


dependiendo de la forma de polarizar a los segmentos luminosos (LED) del
visualizador, siendo los conversores de lógica negativa para los visualizadores de
ánodo común y de lógica positiva para los de cátodo común.

La configuración de estos visualizadores es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 51


SISTEMAS DIGITALES

Al conectar los LED del visualizador hay que tener en cuenta que cada LED
necesita una resistencia de polarización, ya que el voltaje de salida del conversor
de código es superior al que soporta cada LED.

Hay conversores de código binario a 7 segmentos, que generan las letras A, B, C,


D, E y F, pero la gran mayoría son conversores de código BCD a 7 segmentos,
con lo que solo generan números.

El decodificador BCD / 7 segmentos integrado (4511) es el circuito que sustituye a


todo lo que se ha diseñado anteriormente. Su tabla de verdad y patillaje se
muestran seguidamente:

La función de cada patilla del circuito integrado se describe a continuación:

• Patilla 8: Alimentación negativa (Masa).


• Patilla 16: Alimentación positiva.
• Patillas 9 a 15: Salidas para el display de 7 segmentos.
• Patillas 1, 2, 6 y 7: Entradas de código BCD.
• Patilla 3: Entrada LT. Hace que se encienda el display al completo.
• Patilla 4: Entrada BL. Hace que no aparezca nada en el display.
• Patilla 5: Entrada LE/ST. Activa hace que el circuito funcione normalmente,
pero a partir del número 9 no se visualizará ningún número. Si se desactiva
almacena el número que tenía introducido en el momento anterior.

MULTIPLEXORES.
Un multiplexor es un circuito que tiene múltiples entradas y una sola salida. El
efecto que produce es como el de un conmutador, es decir, en la salida se puede
obtener la señal que está presente en una de las entradas. El proceso de
selección se consigue mediante unas entradas de selección adicionales que,

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 52


SISTEMAS DIGITALES

mediante un código binario, permiten seleccionar la entrada que se desea que


aparezca en la salida. La relación entre el número de las señales de selección y el
de las señales de entrada viene dado por la siguiente expresión:

Existen dos tipos de multiplexores, los digitales y los analógicos. Los multiplexores
digitales permiten seleccionar una señal digital entre varias existentes en la
entrada del circuito, mientras que los analógicos lo hacen con señales analógicas,
aunque el elemento de selección siempre es digital.

Estos circuitos se representan como:

El circuito integrado que hemos escogido para este punto es el 4067. Este chip
funciona como multiplexor y demultiplexor. La patilla de control OUT/IN es la
entrada/salida común de datos para el circuito integrado.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 53


SISTEMAS DIGITALES

También sirve como codificador 4 a 16, todo ello gracias a esa patilla de
entrada/salida.
Si ponemos un nivel alto como entrada en esa patilla, las patillas 0 a 15 estarán
configuradas como salida, siendo seleccionada cada salida con las señales A a D.
La señal de inhibición se activa con un nivel alto y provoca que el circuito esté sin
funcionar.

DEMULTIPLEXORES.
Es el circuito que realiza justo lo contrario que el que se ha visto en el apartado
anterior. Es decir, es un conmutador que parte de una sola entrada, la cual es
dirigida a través de una de las posibles salidas mediante la selección adecuada de
un código de entrada.

El circuito que se trata es el que se presenta en la siguiente figura:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 54


SISTEMAS DIGITALES

Si se observa detenidamente la figura se puede observar como el demultiplexor se


parece bastante a un decodificador, excepto por la patilla de entrada de datos.
Ésta puede ser sustituida en el decodificador con la patilla de inhibición.

Los demultiplexores, al igual que los multiplexores, existen en dos versiones, la


analógica y la digital. En la versión analógica hay que tener en cuenta que el
sentido de la señal es bidireccional, por lo que éste circuito se puede utilizar en los
dos sentidos, es decir el multiplexor también puede funcionar como demultiplexor.

COMPARADORES.
Un comparador de n bits es un circuito que tiene como entradas dos números
binarios de n bits cada uno y como salidas tres indicadores que señalan que
número, presente en la entrada, es mayor, menor o igual que el otro.

En los circuitos comerciales además se introducen otras tres entradas lógicas


adicionales para poder unir varios comparadores, con el fin de poder comparar
números mayores (de más bits).

La tabla de verdad que indica el funcionamiento de estos circuitos comerciales es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 55


SISTEMAS DIGITALES

La forma de conexión de varios circuitos integrados de este tipo se realiza de la


siguiente manera:

Se observa como el circuito integrado conectado más a la derecha es el que


mayor peso lógico obtiene, ya que es el último en tomar la decisión, que
dependerá en algunos casos de la decisión de los comparadores anteriores.

El integrado utilizado como comparador es el 4063. El patillaje del comparador y la


tabla de verdad que describe su funcionamiento son:

Las patillas principales son:

• Patillas 5 a 7: Salidas de comparación.


• Patillas 2 a 4: Entradas de comparación (salidas del nivel inferior).
• Patillas Ax: Entradas del primer número a comparar.
• Patillas Bx: Entradas del segundo número a comparar.
• Patilla 8: Masa.
• Patilla 16: Alimentación positiva.

SUMADORES.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 56


SISTEMAS DIGITALES

Los circuitos digitales sumadores realizan la suma aritmética de dos números


enteros positivos, normalmente descritos en notación posicional binaria, aunque
pueden desarrollarse sumadores para otros formatos de descripción numérica.

Los sumadores son un elemento crítico en el desarrollo de circuitos aritméticos por


lo que se han desarrollado numerosas estructuras que buscan la mejora de las
prestaciones del circuito, balanceando entre su tamaño y su velocidad.

Para operandos A y B de un bit ya se han desarrollado en otros temas el sumador


completo (“full-adder”) con acarreo de entrada (Ci) y el semi-sumador (“half-adder)
sin acarreo de entrada. Los bits de salida serán la salida de suma S y el acarreo
de salida (Co).

Para sumadores de N bits un método natural de realizar la suma es situar


sumadores completos en modo “ripple” o en serie, de forma que desde el bit
menos significativo hacia el más significativo el acarreo de entrada del bit j esté
conectado al acarreo de salida del bit j-1. El primer bit se puede construir con un
semisumador mientras que los demás bits requieren un sumador completo, en
este caso se tiene un semisumador de N bits.

Si en el primer bit se utiliza un sumador completo, el circuito dispone además de


acarreo de entrada Ci y se tiene un sumador completo de N bits. Tener acarreo de
entrada permite un mejor funcionalidad del circuito, como por ejemplo poner en
serie dos (o más) sumadores de N bits para formar un sumador de 2N bits.

En cualquier caso se tienen N+1 bits de salida: N de suma S y un acarreo de


salida Co. El tiempo de propagación de este sumador es proporcional al número N
de sumadores en serie.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 57


SISTEMAS DIGITALES

El sumador “ripple” es un sumador lento. Para construir sumadores rápidos hay


que intentar paralelizar el cálculo de los acarreos. El método “carry look-ahead”
genera los acarreos en paralelo obteniendo su expresión lógica de forma
recursiva:

Para cada bit j se obtiene de Aj y Bj en paralelo el “Carry-Propagate” Pj que indica


las condiciones bajo las cuales el acarreo se propaga de la entrada a la salida, y el
“Carry-Generate” Gj que indica las condiciones bajo las cuales se genera acarreo
de salida independientemente del acarreo de entrada.

Para 4 bits se generan los acarreos en paralelo:

Una vez generados los acarreos se generan las salidas también en paralelo:

El circuito se construye en paralelo a partir de las ecuaciones de T1, T2 y T3.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 58


SISTEMAS DIGITALES

Las ecuaciones que definen los acarreos son cada vez más grandes, luego no es
rentable continuar aumentando el circuito. Una solución es poner sumadores
“carry look-ahead” de 4 bits en serie.

Otra solución es llevar la estructura de “carry look-ahead” a más niveles, la


expresión de Co también se puede poner de la forma:

Donde G y P son el “carry-generate” y el “carry-propagate” de una suma de 4 bits.


Si se añaden las ecuaciones de G y P a T2 se pueden realizar sumadores de 16
bits con esta estructura, que se puede llevar a más bits utilizando más niveles de
T2 (64 bits, 4 grupos de 16 con un nivel más).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 59


SISTEMAS DIGITALES

Otra estructura de suma rápida es el “carry-select” basada en sumadores y


multiplexores. Para una suma de M bits en M/N etapas de N bits, en cada etapa
de suma, menos la primera, se calcula la suma en paralelo con acarreo de entrada
a 0 o a 1, y luego, cuando se obtiene el acarreo real, se seleccionan con los
multiplexores las salidas correctas.

El tiempo de propagación de este sumador depende del tiempo de propagación de


la primera etapa, más el tiempo de propagación de los (M/N-1) multiplexores para
propagación del acarreo. A cambio el circuito es bastante más grande que la
estructura “ripple”.

Circuitos comerciales: 74’83. Sumador de 4 bits, con estructura interna de carry


look-ahead. El circuito opera como sumador suponiendo las entradas y salidas en
polaridad positiva o en polaridad negativa.

A partir de un sumador pueden realizarse otras aplicaciones lógicas sencillas. Por


ejemplo, un circuito restador o un circuito sumador/ restador. Para realizar estas
aplicaciones hay que hacer antes un planteamiento del problema, recurriendo a
conocimientos adquiridos.

Un restador se realiza con un sumador suponiendo los operandos en


complemento-2. De la aplicación del c-a-2 se sabe que (–B) se realiza como (B) c,

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 60


SISTEMAS DIGITALES

2, que se puede formar complementando los bits de B y sumando 1 en el bit


menos significativo. Luego:

R = A – B = A + B + 1, donde 1 se añade en el acarreo de entrada.

En este caso, al estar A y B en 4 bits en c-a-2, el resultado de la resta R tiene


tantos bits como las entradas, el acarreo de salida no se utiliza y existe la
posibilidad de que se produzca “overflow”.

Un sumador/restador necesita una entrada de control C, que indique si se realiza


la operación de suma o de resta. Para hacer la resta se requiere el c-a-2, luego los
operandos X e Y, y la salida Z están en esta notación.

Para el operando A del sumador da igual el valor de C, A <= X

Para el operando B si C = 0 => B <= Y, si C = 1=> B <= Y, luego


B=CY+CY=CÅY

Para Cin, si C = 0 => Cin <= 0, si C = 1=> Cin <= 1, luego Cin = C

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 61


SISTEMAS DIGITALES

EJERCICIOS Y PREGUNTAS DE REPASO E INVESTIGACIÓN

EJERCICIOS:

1. Transforma los siguientes números al sistema binario:


a) 21 e) 61
b) 112 f) 214
c) 37 g) 232
d) 529 h) 28

2. Transforma los siguientes números binarios a decimales :


a) 1110001 d) 100
b) 110001 e) 10111
c) 1010101 f) 11001101

3. Obtener la tabla de verdad de la siguiente función:

4. Implementar con puertas lógicas la siguiente función:

5. Implementar con puertas lógicas la siguiente función:

6. Transforma los siguientes cronogramas en tablas de verdad. (E=Entrada,


S=Salida).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 62


SISTEMAS DIGITALES

7. Realiza las tablas de verdad de los siguientes circuitos eléctricos:

8. Realiza la tabla de verdad de los siguientes circuitos, obteniendo primero la


función lógica de salida.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 63


SISTEMAS DIGITALES

9. Simplificar la siguiente expresión:

10. Simplificar por Karnaugh la siguiente función:

11. Se pretende gobernar una lámpara con dos interruptores A y B, cumpliéndose


que cada vez que varíe el estado de cualquier interruptor, varíe también el
estado de la lámpara. Cuando A y B están a nivel bajo la lámpara está
apagada. Representar la tabla de verdad, la función lógica simplificada y la
implementación de la misma con puertas lógicas.

12. En una casa hay dos puertas, una trasera y una delantera. En ella se ha
montado un sistema de alarma que funciona, cuando se conecta la alarma, de
modo que cuando se abre cualquiera de las dos puertas la alarma se activa.
Escribe la tabla de verdad y el circuito lógico.

13. Diseñar un sistema en el que dado en binario un número del 0 al 7, nos indique
si dicho número se encuentra entre el 0 y el 5, ambos incluidos (salida X1); y si
dicho número está entre el 3 y el 7 ambos incluidos (salida X2).

14. Diseñar un circuito con puertas lógicas que nos indique si un número inferior a
10, codificado en binario, es primo (1) o no (0).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 64


SISTEMAS DIGITALES

15. Un sistema de alarma está constituido por cuatro detectores denominados A,


B, C y D. El sistema debe activarse cuando se activen 3 ó 4 detectores. Si sólo
lo hacen 2 detectores es indiferente la activación o no del sistema. Por último el
sistema no deberá activarse si se dispara un único detector o ninguno. Por
razones de seguridad el sistema se deberá activar si A=0, B=0, C=0 y D=1.
Diseñar el circuito con puertas lógicas.

16. Un motor es controlado mediante 3 pulsadores A, B y C. Diseñar un circuito de


control por medio de puertas lógicas que cumpla las siguientes condiciones de
funcionamiento:
• Si se pulsan los 3 pulsadores a la vez el motor se activa.
• Si se pulsan 2 pulsadores cualesquiera el motor se activa, pero se enciende
una lámpara adicional.
• Si se pulsa un solo pulsador, sólo se enciende la lámpara.
• Si no se pulsa ningún pulsador, ni el motor ni la lámpara se activan.

17. Tenemos un ascensor para un edificio de 9 plantas que envía información del
piso en el que se encuentra la cabina por medio de un número binario
codificado. Queremos realizar un circuito que nos avise cuando dicha cabina
esté en las plantas baja, 3ª, 4ª, 5ª y 9ª. Obtener la tabla de verdad, la función
lógica simplificada e implementar con puertas lógicas.

18. Una habitación dispone para encender una lámpara de 5 interruptores La


lámpara debe estar encendida si el número de interruptores accionados es
impar. En caso contrario debe estar apagada.

19. Un proceso químico tiene tres indicadores de temperatura digitales. Cada


indicador dará salida “1” Si la temperatura está por encima del valor tarado.
Diseñar un circuito digital para que detecte cuando la temperatura del proceso
esté comprendida entre T1 y T2 o también sea superior a T3 (T1<T2<T3).
Obtener la tabla de verdad del circuito, la función lógica de salida, simplificar
dicha función e implementar el circuito con puertas lógicas.

20. En un coche en el que se indican la posición de los


pulsadores de luz interior de las dos puertas (puntos A y
B), al abrir una o las dos puertas se activa el
correspondiente pulsador y se enciende la luz interior.
Escribe la tabla de la verdad para controlar el
funcionamiento de la bombilla, el circuito lógico y la puerta

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 65


SISTEMAS DIGITALES

lógica que se necesita.


21. Para el aprovisionamiento de un pueblo, se dispone de un depósito que se
llena con el agua que se bombea desde una presa. La bomba es accionada
cuando se cumplen las dos condiciones siguientes :
• Cuando el nivel del depósito ha descendido hasta un nivel mínimo por lo
que es necesario suministrarle agua.
• El nivel de la presa es superior a un nivel máximo predeterminado.

Escribe la tabla de verdad para el sistema de control de la bomba y el circuito


lógico de control.

22. Diseñar un codificador que teniendo por entrada los números del 0 al 7 en el
sistema binario se vean en un display digital.

23. Diseñar un circuito lógico de manera que teniendo por entrada un nº binario de
4 bits (valores decimales del 0 al 15), se obtengan 5 salidas, una que nos
exprese las decenas (1 bit), y otras 4 que nos expresen las unidades.
Ejemplos:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 66


SISTEMAS DIGITALES

24. Diseñar un circuito lógico con el cual se consigan comparar dos números
A(A1,A2) y B(B1,B2) de 2bits en 3 categorías:
• A>B
• A=B
• A<B

25. Diseñar un circuito lógico que controle dos


motobombas que extraen agua, la primera
de un pozo P y lo lleva a un depósito D1, la
segunda extrae agua de D1 y la lleva a otro
depósito D2. Las condiciones de
funcionamiento son las siguientes:
• Funcionaran las bombas siempre que
esté lleno el lugar de donde se extrae el
agua y esté vacío el depósito a llenar.
• Que no funcionen las dos bombas a la
vez.
• Los niveles los indican unos sensores que marcan 0 si el depósito o el pozo
está vacío, y 1 si están llenos.

26. Diseñar una calculadora que reste dos números de 2 bits A y B. (Debe haber
una salida que indique si el resultado es positivo o negativo).

27. Necesitamos seleccionar candidatos para un puesto de trabajo que cumplan


los siguientes requisitos:
• Ingenieros Técnicos que vivan en la localidad o tengan coche.
• No titulados con más de 5 años de experiencia que vivan en la localidad o
tengan coche.
• Recomendados

Se pide:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 67


SISTEMAS DIGITALES

• Variables de entrada de la función lógica.


• Variables de salida.
• Función por la que obtenemos la variable de salida en función de las
variables de entrada.

Diseñar un circuito que sume o reste dos entradas A y B, según el valor de una
tercera C. Si C=0, aparecerá en la salida el valor de A+B. Si C=1 se realizará la
operación A‐B. Asimismo el circuito contará con una salida adicional en la que
aparecerá el posible acarreo en la suma binaria o el préstamo en la resta.

PREGUNTAS DE REPASO E INVESTIGACIÓN:

1. ¿Qué valor lógico debe faltar en la entrada de la puerta mostrada?


a) 1
b) 0
c) indistintamente 0 o 1

2. ¿Qué valor lógico debe faltar en la entrada de la puerta mostrada?


a) 1
b) 0
c) indistintamente 0 o 1

3. ¿Qué tipo de señal sólo puede adquirir valores discretos entre dos extremos
cualesquiera?

4. ¿Qué valor lógico entrega en la salida la puerta mostrada?


a) 01
b) 1
c) 0
d) 10

5. ¿Con qué puerta lógica identificarías la tabla de verdad mostrada?

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 68


SISTEMAS DIGITALES

a) AND
b) NOT
c) NAND
d) NOR
e) OR

6. Una dirección IP es una etiqueta numérica que identifica, de manera lógica y


jerárquica, al elemento de comunicación/conexión de un dispositivo
(habitualmente una computadora) dentro de una red. La dirección IP de una
computadora consta de cuatro series de números de la forma _ _ _·_ _ _·_ _
_·_ _ _; donde cada serie va del 0 al 255. ¿Cuántos bits necesitaremos para
codificar en binario la dirección IP completa de una computadora?
a) 32 d) 28
b) 8 e) 36
c) 24

7. ¿Cuántos números diferentes se puede obtener con 3 bits?


a) 3 c) 8
b) 6 d) 7

8. ¿Cuántos bits necesitamos para representar el número 327?


a) 7 d) 9
b) 6 e) 8
c) 10

9. ¿Qué puerta de las estudiadas identificarías con la función lógica de la suma?


a) NOT d) NAND
b) AND e) OR
c) NOR

10. ¿Qué valor lógico entrega en la salida la puerta mostrada?


a) 1
b) 10
c) 0
d) 11

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 69


SISTEMAS DIGITALES

11. ¿A qué puertas lógicas equivale el circuito de la


figura?
a) NOR
b) NAND
c) AND
d) NOT
e) OR

12. ¿Qué valor lógico debe faltar en la entrada de la puerta


mostrada?
a) 0
b) 1
c) indistintamente 0 o 1
a) NOR

13. ¿Qué nombre recibe la puerta mostrada?


a) NAND
b) OR
c) NOT
d) AND
e) NOR

14. ¿Con qué puerta lógica identificarías la tabla de verdad mostrada?

a) NOR d) NOT
b) NAND e) OR
c) AND

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 70


SISTEMAS DIGITALES

15. ¿Qué valor lógico entrega en la salida la puerta


mostrada?
a) 01
b) 0
c) 10
d) 1

16. ¿Cuál será la función lógica de salida


del circuito de la figura?
a) F = (a·b)·(b+c)
b) F = (a·b)+(b+c)
c) F = (a+b)+(b·c)
d) F = (a+b)·(b·c)

17. ¿Con qué puerta lógica identificarías la tabla de verdad mostrada?

a) NAND c) AND
b) NOT d) OR

18. Una dirección IP es una etiqueta numérica que identifica, de manera lógica y
jerárquica, al elemento de comunicación/conexión de un dispositivo
(habitualmente una computadora) dentro de una red. La dirección IP de una
computadora consta de cuatro series de números de la forma _ _ _·_ _ _·_ _
_·_ _ _; donde cada serie va del 0 al 255. ¿Cuántas direcciones IP diferentes
se pueden lograr con este sistema?
a) 2 147 483 648 c) 4 294 967 296
b) 1 073 741 824 d) 8 589 934 592

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 71


SISTEMAS DIGITALES

19. ¿Cuál será la función lógica de salida del circuito de la figura?


a) F = (a·b·c)+(a+c)
b) F = (a+b+c)+(a+c)
c) F = (a+b+c)·(a+c)
d) F = (a·b·c)·(a·c)
e) F = (a·b·c)·(a+c)

20. ¿Cuál de los siguientes números en binario representa el número 21?


a) 10110 c) 110101
b) 10101 d) 11011

21. ¿Cuántos números diferentes se pueden obtener con 4 bits?


a) 32 c) 4
b) 16 d) 8

22. ¿Qué valor lógico debe faltar en la entrada de la puerta


mostrada?
a) indistintamente 0 o 1
b) 0
c) 1

23. Indica cuál(es) de las siguientes igualdades son falsas:

24. ¿Cuál será la función lógica de salida del circuito de la figura?

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 72


SISTEMAS DIGITALES

25. Indica cuáles de las siguientes afirmaciones son ciertas:


a) En una puerta NOR la función toma valor lógico 1 cuando alguna de las
entradas valen 1.
b) En una puerta NAND cuando todas las entradas valen 0 la función toma
valor lógico 1.
c) En una puerta NOR la función toma valor lógico 1 cuando todas las
entradas valen 0.
d) Una puerta NOT cambia un nivel lógico al nivel opuesto.
e) En una puerta NAND la señal de salida será un 1 sólo en el caso de que
todas las entradas sean 1.
f) En una puerta NOR la función toma valor lógico 1 cuando alguna de las
entradas valen 0.
g) En una puerta AND la señal de salida será un 1 sólo en el caso de que
todas las entradas sean 1.
h) En una puerta OR la señal de salida será un 1 cuando alguna de las
señales de entrada sea un 1.

26. ¿Qué valor lógico entrega en la salida la puerta


mostrada?
a) 01
b) 0
c) 10
d) 1

27. Indica cuál(es) de las siguientes igualdades son ciertas:

28. ¿A qué puertas lógicas equivale el circuito de la figura?


a) OR
b) NAND
c) NOR
d) NOT
e) AND
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 73
SISTEMAS DIGITALES

29. ¿Cuál será la función lógica de salida


del circuito de la figura?
a) F = (a+b+c)+(a+c)
b) F = (a·b·c)+(a+c)
c) F = (a·b·c)·(a+c)
d) F = (a+b+c)·(a·c)
e) F = (a·b·c)·(a·c)

30. ¿Qué valor lógico debe faltar en la entrada de la puerta


mostrada?
a) 0
b) indistintamente 0 o 1
c) 1

31. ¿Qué valor lógico entrega en la salida la puerta mostrada?


a) 0
b) No se puede saber
c) 1

32. ¿A qué puertas lógicas equivale el circuito de la


figura?
a) NAND
b) AND
c) NOT
d) NOR

33. ¿Cuál es el número más alto que se puede representar con 10 bits?
a) 1023 c) 1025
b) 20 d) 1024

34. ¿Cómo se escribe el número 35 en sistema binario?


a) 111001 c) 110001
b) 100011 d) 100001

35. Una dirección IP es una etiqueta numérica que identifica, de manera lógica y
jerárquica, al elemento de comunicación/conexión de un dispositivo

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 74


SISTEMAS DIGITALES

(habitualmente una computadora) dentro de una red. La dirección IP de una


computadora consta de cuatro series de números de la forma _ _ _·_ _ _·_ _
_·_ _ _; donde cada serie va del 0 al 255. ¿Cuántos bits necesitaremos para
codificar en binario una única serie?
a) 11 d) 8
b) 9 e) 7
c) 10

36. ¿Qué número en sistema decimal corresponde al 10110?


a) 26 d) 44
b) 13 e) 22
c) 3

37. ¿Qué valor lógico debe faltar en la entrada de la puerta mostrada?


a) 1
b) 0
c) indistintamente 0 o 1

38. ¿Qué valor lógico entrega en la salida la puerta mostrada?


a) 0
b) 1
c) No se puede saber

39. ¿Qué valor lógico debe faltar en la entrada de la puerta mostrada?


a) 1
b) indistintamente 0 o 1
c) 0

40. Una dirección IP es una etiqueta numérica que identifica, de manera lógica y
jerárquica, al elemento de comunicación/conexión de un dispositivo
(habitualmente una computadora) dentro de una red. La dirección IP de una
computadora consta de cuatro series de números de la forma _ _ _·_ _ _·_ _
_·_ _ _; donde cada serie va del 0 al 255. ¿Cuántas direcciones IP diferentes
se pueden lograr con este sistema?
a) 2 147 483 648 c) 4 294 967 296
b) 1 073 741 824 d) 8 589 934 592

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 75


SISTEMAS DIGITALES

41. ¿Qué valor lógico debe faltar en la entrada de la puerta mostrada?


a) indistintamente 0 o 1
b) 0
c) 1

42. Indica cuál(es) de las siguientes igualdades son falsas:

43. ¿A qué puertas lógicas equivale el circuito de la figura?


a) NAND
b) OR
c) NOR
d) NOT
e) AND

44. ¿Cuántos números diferentes se pueden obtener con 10 bits?


a) 20 d) 1024
b) 100 e) 1025
c) 1023

45. ¿Con qué puerta lógica identificarías la tabla de verdad mostrada?

a) NOT d) AND
b) NOR e) NAND
c) OR

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 76


SISTEMAS DIGITALES

46. ¿Cuántos bits necesitamos para representar el número 327?


a) 8 d) 9
b) 7 e) 6
c) 10

47. ¿Cuál de los siguientes números en binario representa el número 21?


a) 10101 c) 110101
b) 10110 d) 11011

48. ¿Qué tipo de señal puede adquirir infinitos valores entre dos extremos
cualesquiera variando de forma continua?

49. ¿Qué valor lógico entrega en la salida la puerta


mostrada?
a) 1 c) 10
b) 0 d) 01

50. ¿A qué puertas lógicas equivale el circuito de la figura?


a) NOR d) OR
b) NOT e) AND
c) NAND

51. ¿Cuál será la función lógica de salida del circuito de la figura?

52. ¿Qué nombre recibe la puerta mostrada?


a) NAND d) NOR
b) AND e) NOT
c) OR

53. ¿Qué nombre recibe la puerta mostrada?


a) OR d) NOT
b) NAND e) AND
c) NOR
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 77
SISTEMAS DIGITALES

54. ¿Qué valor lógico entrega en la salida la puerta mostrada?


a) 1 c) 11
b) 0 d) 10

55. ¿Qué tipo de señal sólo puede adquirir valores discretos entre dos extremos
cualesquiera?

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 78


SISTEMAS DIGITALES

TAREA 2: IMPLEMENTA CIRCUITOS DIGITALES SECUENCIALES.

En esta tarea el estudiante implementa circuitos digitales secuenciales, interactúa


para este fin con circuitos integrados de funciones específicas como los
contadores y registros. La operación a realizar en esta tarea es:

 Entiende e implementa circuitos digitales secuenciales.

Equipos y Materiales:
• Manual del curso. • Cables de conexión.
• Apuntes de clase. • Display de 7 segmentos.
• Fuente de alimentación regulada • Circuitos integrados (7400, 7404,
de 5V (puede reemplazarse con 7432, etc.).
porta pila, pila de 9V, regulador de • Dip switch.
voltaje 7805). • Push bottons.
• Diodos emisores de luz. • Computadora con microprocesador
• Resistencias varias de 1/4W Core I3 o superior.
(330Ω, 100Ω, etc.). • Sistema operativo Windows.
• Potenciómetro 1KΩ. • Software de simulación electrónica.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 79


SISTEMAS DIGITALES

2.1. OPERACIÓN: ENTIENDE E IMPLEMENTA CIRCUITOS DIGITALES


SECUENCIALES.

• TIMER 555 - MULTIVIBRADOR ASTABLE:

Este tipo de funcionamiento se caracteriza por una salida con forma de onda
cuadrada (o rectangular) continua de ancho predefinido por el diseñador del
circuito. Implementar el circuito que se muestra a continuación, que será usado
como entrada de reloj en los circuitos secuenciales posteriores.

• CONTADOR DIGITAL DE 0 - 99 CON DISPLAY DE 7 SEGMENTOS ÁNODO


COMÚN:

Nota: Se puede desarrollar un sistema digital alternativo de acuerdo a la


disponibilidad de materiales.

PRESENTACIÓN DEL PROYECTO: Se va a realizar un contador digital de 0 a 99


con display de 7 segmentos ánodo común el cual es alimentado por una fuente de
voltaje de 5 V, los pulsos son generados por medio de un circuito LM555
configurado en modo astable.

TÉRMINOS CLAVE: Display 7 segmentos ánodo común, circuito integrado LM555


Astable, circuito integrado SN74LS47, circuito integrado HD74LS90P.

MATERIALES: se especifican en la tabla que se muestra en la página siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 80


SISTEMAS DIGITALES

PRODUCTO DESCRIPCIÓN
En este caso utilizado como temporizador
Circuito Integrado LM555
versátil.
Contador de décadas (Binary Code
Circuito integrado HD74LS90P
Decodification).
Decodificador (Binary Code Decodification) a 7
Circuito integrado SN74LS47
segmentos ánodo común.
Adaptador voltaje a 5 V Fuente de alimentación del circuito.
Resistencias 220 Ω Todas se utilizan a ¼ de Vatio.
Condensador para carga y descarga del
Condensador Electrolítico
circuito.
Cable UTP Cable para conexión del circuito.
Potenciómetro 1 KΩ Resistencia variable para la frecuencia de reloj.
Display 7 Segmentos HS-
Display 7 Segmentos ánodo común.
5161BS
Protoboard Protoboard para conexión del circuito.
Led Led ánodo común.

DESARROLLO DEL PROYECTO:


Inicialmente se procede a realizar un generador de pulsos con un circuito LM555
(véase documentación circuito integrado LM555 multivibrador monoestable y
astable), para esto se conecta la entrada Pin No. 2, está conectada a la entrada de
disparo Pin No. 6. Los componentes externos R1, R2 y C1 conforman la red de
temporización que determina la frecuencia de oscilación. El condensador C2 de
0.01 uF conectado a la entrada de control Pin No. 5 sirve únicamente para
desacoplar y no afecta en absoluto al funcionamiento del resto del circuito. Si se
desea se puede omitir.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 81


SISTEMAS DIGITALES

Para realizar el cálculo de la frecuencia de oscilación se establece mediante la


siguiente fórmula:
f = 1.44 / [(R1 + 2*R2) * C1]

El ciclo de trabajo depende de los valores de R1 y R2 y puede ser ajustado


seleccionando diferentes resistencias, dado que C1 se carga a través de R1 + R2
y se descarga únicamente a través de R2, se puede conseguir ciclos de trabajo de
un mínimo del 50% aproximadamente, si R2>>R1, de forma que los tiempos de
carga y descarga sean aproximadamente iguales.

A continuación mostramos la frecuencia mínima y máxima de nuestro circuito


calculando los valores con la ecuación antes explicada:
• Resistencia fija (R1) = 220 ohmios.
• Resistencia variable (R2): para la mínima se toma como 0 ohmios y para la
máxima como 1000 ohmios.
• Capacitor (C1)= 0.0001 faradios.
• fmin = 1.44/[(220+2*0)*0.000001] = 72000/11 Hz
• fmax = 1.44/[(220+2*1000)*0.000001] = 24000/37 Hz

Con la etapa de generador de pulsos completa proceder a realizar la conexión de


los circuitos integrados SN74LS47 y HD74LS90P entre ellos para que
posteriormente se realice la conexión a los display de 7 segmentos ánodo común;
el integrado HD74LS90P es un contador de décadas (BCD) que está construido a
base de flip flops, este circuito tiene la característica de poseer dos entradas MR
(Máster Reset) y otras dos MS (Máster Set), además de dos entradas de reloj
(Que se activan mediante flanco de subida).

Los 4 bits de salida, irán al SN74LS47 que es un decodificador BCD a 7


segmentos los cuales se conectaran respectivamente a las terminales de nuestro
display de 7 segmentos ánodo común.

Ya que el contador indicado anteriormente solo genera los números decimales del
0 al 9 es necesario realizar una configuración similar del mismo circuito para el
otro display de 7 segmentos ánodo común y conectar ambos circuitos para
generar los números del 0 al 99.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 82


SISTEMAS DIGITALES

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 83


SISTEMAS DIGITALES

CIRCUITO COMPLETO CONTADOR 0-99 CON DISPLAY DE 7 SEGMENTOS


ÁNODO COMÚN.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 84


SISTEMAS DIGITALES

SOPORTE FOTOGRÁFICO.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 85


SISTEMAS DIGITALES

FUNDAMENTO TEÓRICO:

SISTEMAS SECUENCIALES.
En los circuitos combinacionales la salida en un determinado momento depende
únicamente de los valores de las señales de entrada en el mismo instante. Sin
embargo, en el mundo real la mayor parte de los sistemas con los que nos
enfrentamos tienen una dimensión adicional: el funcionamiento de los mismos
depende no únicamente de sus entradas actuales, sino también de la historia por
la que han pasado. Así, los circuitos secuenciales surgen para solucionar las
limitaciones intrínsecas de los combinacionales.

Los circuitos secuenciales son sistemas que, además de entradas y salidas,


también tienen estados que recuerdan la historia pasada por el circuito. Utilizan la
información del estado conjuntamente con una combinación lógica de sus
entradas de datos para determinar el futuro estado del sistema y sus salidas. Por
tanto, una de sus características es que las mismas entradas en estados
diferentes dan lugar a salidas distintas, ya que estas dependen también del
estado.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 86


SISTEMAS DIGITALES

Muchos de los sistemas digitales prácticos se realizan siguiendo la filosofía de los


circuitos secuenciales (circuitos de control, sistemas de alarma y seguridad,
relojes, etc.). Podemos considerar como ejemplo una máquina expendedora
(simplificada), que representaríamos como se muestra en la figura.

En la figura pueden verse varios estados, en los que el sistema espera monedas o
la selección de productos, o entrega el producto. Estos estados memorizan la
última acción del usuario, de forma que el sistema puede responder a las nuevas
acciones de forma diferente dependiendo de la historia pasada: si seleccionamos
producto, la salida no será la misma si ya le hemos entregado el dinero o todavía
no. Este puede ser un ejemplo sencillo de máquina secuencial, y a partir de ahora
formalizaremos el concepto y estudiaremos la forma de analizar y diseñar este tipo
de circuitos.

Los circuitos secuenciales son aquellos cuya salida en cualquier momento no


depende solo de la entrada al circuito sino también de la secuencia de entradas a

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 87


SISTEMAS DIGITALES

las que estuvo sometido anteriormente. Destacan, pues, por su capacidad de


“memorizar” información.

TIPOS DE CIRCUITOS SECUENCIALES.


Pueden clasificarse en dos grandes grupos:

Asíncronos: Los cambios de estado se producen cuando están presentes las


entradas adecuadas.

Síncronos: Los cambios de estado se producen cuando además de estar


presentes las entradas adecuadas se produce la transición de una señal
compartida por los elementos del sistema y que sincroniza su funcionamiento. A
esta señal se le llama señal de reloj o de clock.

Los dispositivos secuenciales más simples y elementales son los biestables. La


unión de biestables da lugar a otros circuitos secuenciales más complejos, como
son los contadores y los registros de desplazamiento.

EL TIMER 555.
Este excepcional Circuito Integrado muy difundido en nuestros días nació al inicio
de la década de los 70 continúa utilizándose actualmente, veamos una muy breve
reseña histórica de este C.I.

Jack Kilby ingeniero de Texas Instrument en el año de 1950 se las ingenió para
darle vida al primer circuito integrado, una compuerta lógica, desde entonces y
hasta nuestros tiempos han aparecido innumerables circuitos integrados, en Julio
de 1972, apareció en la fábrica de circuitos integrados SIGNETICS CORP., un
microcircuito de tiempo el NE555V, inventado por el grupo que dirigió el Jefe de
Producción en ese tiempo, Gene Hanateck. Este integrado se puede aplicar a
diversas aplicaciones, tales como:
• Control de sistemas secuenciales,
• Generación de tiempos de retraso,
• Divisor de frecuencias,
• Modulación por anchura de pulsos,
• Repetición de pulsos,
• Generación de pulsos controlados por tensión, etc.

Además de ser tan versátil contiene una precisión aceptable para la mayoría de
los circuitos que requieren controlar el tiempo, su funcionamiento depende

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 88


SISTEMAS DIGITALES

únicamente de los componentes pasivos externos que se le interconectan al


microcircuito 555.

DESCRIPCIÓN DEL TIMER 555:


Se alimenta de una fuente externa conectada entre sus terminales (8) positiva y
(1) tierra; el valor de la fuente de alimentación se extiende desde 4.5 Volts hasta
18.0 Volts de corriente continua, la misma fuente exterior se conecta a un circuito
pasivo RC exterior, que proporciona por medio de la descarga de su Capacitor una
señal de voltaje que está en función del tiempo, esta señal de tensión es de 1/3 de
Vcc y se compara contra el voltaje aplicado externamente sobre la terminal (2) que
es la entrada de un comparador como se puede apreciar en la gráfica anterior.

La terminal (6) se ofrece como la entrada de otro comparador, en la cual se


compara a 2/3 de la Vcc contra la amplitud de señal externa que le sirve de
disparo.

La terminal (5) se dispone para producir (PAM) modulación por anchura de pulsos,
la descarga del condensador exterior se hace por medio de la terminal (7), se
descarga cuando el transistor (NPN) T1, se encuentra en saturación, se puede
descargar prematuramente el Capacitor por medio de la polarización del transistor
(PNP) T2.

Se dispone de la base de T2 en la terminal (4) del circuito integrado 555, si no se


desea descargar antes de que se termine el periodo, esta terminal debe
conectarse directamente a Vcc, con esto se logra mantener cortado al transistor
T2 de otro modo se puede poner a cero la salida involuntariamente, aun cuando
no se desee.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 89


SISTEMAS DIGITALES

La salida está provista en la terminal (3) del microcircuito y es además la salida de


un amplificador de corriente (buffer), este hecho le da más versatilidad al circuito
de tiempo 555, ya que la corriente máxima que se puede obtener cuando la
terminal (3) sea conecta directamente al nivel de tierra es de 200 mA.

La salida del comparador "A" y la salida del comparador "B" están conectadas al
Reset y Set del FF tipo SR respectivamente, la salida del FF-SR actúa como señal
de entrada para el amplificador de corriente (Buffer), mientras que en la terminal
(6) el nivel de tensión sea más pequeño que el nivel de voltaje contra el que se
compara la entrada reset del FF-SR no se activará, por otra parte mientras que el
nivel de tensión presente en la terminal 2 sea más grande que el nivel de tensión
contra el que se compara la entrada Set del FF-SR no se activará.

El microcircuito 555 es un circuito de tiempo que tiene las siguientes


características:
• La corriente máxima de salida es de 200 mA cuando la terminal (3) de salida se
encuentra conectada directamente a tierra.
• Los retardos de tiempo de ascenso y descenso son idénticos y tienen un valor
de 100 nseg.
• La fuente de alimentación puede tener un rango que va desde 4.5 Volts hasta
16 Volts de CD.
• Los valores de las resistencias R1 y R2 conectadas exteriormente van desde
1ohm hasta 100 kohms para obtener una corrimiento de temperatura de 0.5% a
1% de error en la precisión, el valor máximo a utilizarse en la suma de las dos
resistencias es de 20 MΩ.
• El valor del Capacitor externo contiene únicamente las limitaciones
proporcionadas por su fabricante.
• La temperatura máxima que soporta cuando se están soldando sus terminales
es de 330 centígrados durante 19 segundos.
• La disipación de potencia o transferencia de energía que se pierde en la
terminal de salida por medio de calor es de 600 mW.

El dispositivo 555 es un circuito integrado muy estable cuya función primordial es


la de producir pulsos de temporización con una gran precisión y que, además,
puede funcionar como oscilador.

Sus características más destacables son:


• Temporización desde microsegundos hasta horas.
• Modos de funcionamiento:
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 90
SISTEMAS DIGITALES

o Monoestable.
o Astable.
• Aplicaciones:
o Temporizador.
o Oscilador.
o Divisor de frecuencia.
o Modulador de frecuencia.
o Generador de señales triangulares.

Las aplicaciones del 555 son tan numerosas que prácticamente no existe un
sistema electrónico que no lo utilice de alguna forma. Su versatilidad, bajo costo y
sencillez de uso lo hacen imprescindible en muchos casos. Además sobre él se ha
escrito mucha literatura y existen cientos de libros, artículos y documentos sobre
sus aplicaciones reales y potenciales.

El circuito integrado 555 en su presentación usual de cápsula plástica dispone de


8 pines.

Puede estar etiquetado bajo distintos nombres o referencias dependiendo del


fabricante (NE555, μA555, LM555, SN72555, XR-555, CA555, HA1755, NC1455,
TA7555P, ECG955, etc.). También se consigue en otras presentaciones
incluyendo cápsulas metálicas para aplicaciones de montaje superficial (SMT).

El 555 convencional consta internamente de 23 transistores, 2 diodos y 12


resistencias de las cuales 3 son de 5 Kohms por eso tiene el nombre de 555. Este
circuito tiene una capacidad suficiente para impulsar directamente leds,
zumbadores, bobinas de relé, parlantes, piezoeléctricos y otros componentes,
además, es directamente compatible con circuitos integrados digitales estándares,
que es otra de sus grandes ventajas.

a) Configuración de pines.
Se puede ver de la figura que independientemente del tipo de encapsulado la
numeración de las pines es la misma.
El 556 es un C.I. con 2 temporizadores tipo 555 en una sola unidad de 14 pines y
el 558 es un C.I. con 4 temporizadores tipo 555 en una sola unidad de 14 pines

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 91


SISTEMAS DIGITALES

Descripción de las pines del 555.


1 Tierra o masa: (Ground) Conexión a tierra del circuito en general.

2 Disparo: (Trigger) Es en esta patilla, donde se establece el inicio del tiempo de


retardo, si el 555 es configurado como monostable. Este proceso de disparo
ocurre cuando este pin va por debajo del nivel de 1/3 del voltaje de alimentación.
Este pulso debe ser de corta duración, pues si se mantiene bajo por mucho tiempo
la salida se quedará en alto hasta que la entrada de disparo pase a alto otra vez.

3 Salida: (Output) Aquí veremos el resultado de la operación del temporizador, ya


sea que esté conectado como monostable, astable u otro. Cuando la salida es
alta, el voltaje será el voltaje de aplicación (Vcc) menos 1.7 Voltios. Esta salida se
puede obligar a estar en casi 0 voltios con la ayuda de la patilla # 4 (reset).

4 Reset: Si se pone a un nivel por debajo de 0.7 Voltios, pone la patilla de salida #
3 a nivel bajo. Si por algún motivo esta patilla no se utiliza hay que conectarla a
Vcc para evitar que el 555 se "resetee".

5 Control de voltaje: (Control) Cuando el temporizador se utiliza en el modo de


controlador de voltaje, el voltaje en esta patilla puede variar casi desde Vcc (en la
práctica como Vcc -1 voltio) hasta casi 0 V (aprox. 2 Voltios). Así es posible
modificar los tiempos en que la patilla # 3 está en alto o en bajo independiente del
diseño (establecido por las resistencias y condensadores conectados
externamente al 555). El voltaje aplicado a la patilla # 5 puede variar entre un 45 y
un 90 % de Vcc en la configuración monostable.

Cuando se utiliza la configuración astable, el voltaje puede variar desde 1.7 voltios
hasta Vcc. Modificando el voltaje en esta patilla en la configuración astable

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 92


SISTEMAS DIGITALES

causará la frecuencia original del astable sea modulada en frecuencia (FM). Si


esta patilla no se utiliza, se recomienda ponerle un capacitor de 0.01uF para evitar
las interferencias.

6 Umbral: (Threshold) Es una entrada a un comparador interno que tiene el 555 y


se utiliza para poner la salida (Pin # 3) a nivel bajo.

7 Descarga: (Discharge) Utilizado para descargar con efectividad el condensador


externo utilizado por el temporizador para su funcionamiento.

8 V+: También llamado Vcc, es el pin donde se conecta el voltaje de alimentación


que va de 4.5 voltios hasta 16 voltios (máximo). Hay versiones militares de este
integrado que llegan hasta 18 Voltios.

b) El temporizador 555 se puede conectar para que funcione de diferentes


maneras, entre los más importantes están: como multivibrador astable y como
multivibrador monoestable.

Multivibrador astable: Este tipo de funcionamiento se caracteriza por una salida


con forma de onda cuadrada (o rectangular) continua de ancho predefinido por el
diseñador del circuito. El esquema de conexión e s el que se muestra. La señal, de
salida tiene un nivel alto por un tiempo T1 y en un nivel bajo un tiempo T2. Los
tiempos de duración dependen de los valores de R1 y R2.
T1 = 0.693(R1+R2) C1 (seg) y T2 = 0.693 x R2 x C1 (seg)

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 93


SISTEMAS DIGITALES

La frecuencia con que la señal de salida oscila está dada por la fórmula:
f = 1/ (0.693 x C1 x (R1 + 2 x R2)) f = 1 / (T1 + T2)

y el período es simplemente T = 1 / f

El ciclo de trabajo está dado por CT=100 x R2 / (R1+ 2 x R2)

Cuando la señal de disparo está a nivel alto (ej. 5V con Vcc 5V) la salida se
mantiene a nivel bajo (0V), que es el estado de reposo.

Una vez se produce el flanco descendente de la señal de disparo y se pasa por el


valor de disparo, la salida se mantiene a nivel alto (Vcc) hasta transcurrido el
tiempo determinado por la ecuación:
T = 1.1 x R1 x C (seg)

Es recomendable, para no tener problemas de sincronización que el flanco de


bajada de la señal de disparo sea de una pendiente elevada, pasando lo más
rápidamente posible a un nivel bajo (idealmente 0V).

NOTA: en el modo monoestable, el disparo debería ser puesto nuevamente a nivel


alto antes que termine la temporización.

Multivibrador Monostable: En este caso el circuito entrega a su salida un sólo


pulso de un ancho establecido por el diseñador (tiempo de duración). El esquema
de conexión es el que se muestra. La Fórmula para calcular el tiempo de duración
(tiempo que la salida está en nivel alto) es: T = 1.1 x R1 x C1 (en segundos).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 94


SISTEMAS DIGITALES

Observa que es necesario que la señal de disparo, sea de nivel bajo y de muy
corta duración en el PIN # 2 del C.I. para iniciar la señal de salida.

ELEMENTOS BÁSICOS DE MEMORIA.


Los elementos que se van a explicar a continuación son los elementos base de la
memoria con la que están construidos las computadoras actuales y todos los
circuitos que siguen una secuencia lógica de estados para conseguir realizar una
tarea final.

EL BIESTABLE.
Los biestables son circuitos lógicos que presentan una salida que puede estar en
uno de los dos estados posibles (0 o 1), aún después de desaparecer la señal de
entrada, de modo que almacenan la información binaria de un bit. Los hay de
varios tipos pero su esquema general es el siguiente:

Los biestables se construyen con dos salidas, Q y Q’, una es la inversa de la otra.
Q define el estado del biestable, mientras que la otra es utilizada para otros
propósitos en los circuitos combinacionales y es la inversa de la primera.
Los biestables pueden clasificarse de dos formas:
• Por su entrada, con lo que tendremos biestables tipo R-S, J-K, D y T.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 95


SISTEMAS DIGITALES

• Por el sincronismo de disparo, con lo que tendremos biestables síncronos y


asíncronos.

FLIP/FLOP R-S CON PUERTAS NOR.


Este biestable está construido con dos puertas lógicas montadas en una
configuración especial, en la que las salidas son realimentadas hacia las entradas.

Su esquema básico es:

A este circuito se le llama biestable R-S, ya que esas letras son los nombres de
sus entradas, que sirven para poner a uno (set) o a cero (reset) la señal de salida
Q.

Para comprender el funcionamiento del circuito hay que tener en cuenta el retardo
que se produce en las puertas, ya que el circuito funciona de forma asíncrona, es
decir, las salidas de éste no tienen que cambiar cuando una señal de control lo
diga.

El funcionamiento del circuito se puede describir de la siguiente manera. Si en la


entrada R ponemos un uno, manteniendo un cero en la entrada S, la salida Q se
pondrá a 0, ya que la salida de una puerta NOR solo se pone a cero si alguna de
sus entradas está puesta a uno, señal que se realimenta a la puerta lógica 2
provocando que la salida Q’ se ponga a uno, ya que la entrada R estaba a cero. Si
ahora ponemos un cero en la entrada S, como la salida Q’ está a nivel alto, la
salida Q seguirá a nivel bajo. Activando la señal R, con un nivel uno, la salida Q’
pasa a tener un valor cero, valor que se realimenta a la puerta 1, lo que hará que
la salida Q tome un valor 1. Si volvemos a situar la entrada R a un valor lógico
bajo el estado de las salidas no variará.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 96


SISTEMAS DIGITALES

Hay que considerar una última condición,


en el caso en que ambas entradas estén a
nivel alto. En este caso ambas salidas
quedarán a nivel bajo. Este estado en un
estado que hay que evitar en las básculas
R-S, ya que se crea un estado de
indeterminación al estar dos señales de
salida, que deberían ser inversas, con el
mismo valor. Una vez que ambas entradas
vuelven a nivel bajo la condición de
indeterminación desaparece, ya que
ambas puertas intentan conseguir un
estado de salida alto, pero al mismo
tiempo. Debido a los tiempos de retardo una de ellas lo conseguirá antes que la
otra, quedando entonces el circuito en un estado estacionario y determinado, el
problema es en que no se sabe en qué estado quedará. Esto dependerá de cada
biestable y no puede ser determinado a priori.

Como se ve en el funcionamiento del biestable influye el estado anterior en el que


se encontraba. La tabla que se muestra refleja el modo de funcionamiento en el
que se puede encontrar un biestable R-S en todo instante.

En la siguiente figura se muestra el diagrama de tiempos de un biestable R-S, en


el que se indican los estados de las salidas Q y Q al variar las entradas R y S.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 97


SISTEMAS DIGITALES

FLIP/FLOP R-S CON PUERTAS NAND.


El circuito que se obtiene en este caso es similar al del apartado anterior, solo que
al estar construido en base a puertas NAND, la lógica de control cambia, pero la
base de funcionamiento es la misma.

El circuito básico de este biestable es el que se muestra en la siguiente figura:

Al igual que con el biestable R-S construido con puertas NOR, en este biestable se
da también la condición de indeterminación, que en este caso como se trabaja con
lógica negativa, se dará cuando las dos entradas estén a nivel bajo.

La siguiente tabla de verdad muestra el funcionamiento de este biestable.

BIESTABLE R-S SÍNCRONO.


Los biestables R-S vistos hasta ahora son raramente utilizados en la práctica, ya
que presentan problemas en al almacenamiento de la información binaria, debido
a que también almacenan la información errónea de ruido que se puede producir

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 98


SISTEMAS DIGITALES

en los circuitos digitales, de forma que almacena el último valor existente en sus
entradas, sin saber si es el correcto.
Para evitar esto se añaden al circuito dos puertas de control para dejar que la
información solo pase a nuestro biestable cuando esas puertas lo permitan. De
este modo ahora podremos introducir una señal de control que gobierne el estado
de esas puertas, de manera que los datos se guarden cuando esa señal lo
indique.

A esta señal normalmente se la llama señal de reloj, que será la encargada de


introducir los datos al biestable en intervalos periódicos de tiempo. Esta señal se
utiliza mucho en los circuitos digitales, y es común para todos los circuitos
integrados que lo componen, de manera que mantiene a todas las señales del
circuito organizadas en intervalos de tiempo, de forma que el circuito funciona de
forma síncrona. Esto quiere decir que ningún elemento del circuito puede tomar
decisiones en cualquier momento, sino que tendrá que esperar hasta que la señal
de reloj se lo indique.

El esquema del nuevo biestable, que en este caso será síncrono, es:

Las nuevas señales que aparecen en este circuito son:


• Clock: Señal de reloj. Cuando esté a nivel alto el biestable tomará la decisión
que deba y si está a nivel bajo el estado de las entradas R y S no se tendrá en
cuenta.
• R y S: Señales de entrada al circuito, como las de los biestables asíncronos (los
básicos).
• Preset: Es una señal de puesta a uno del biestable, que funciona de forma
asíncrona, independientemente de la señal de reloj.
• Clear: Es una señal de puesta a cero del biestable, que funciona de forma
asíncrona, independientemente de la señal de reloj.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 99


SISTEMAS DIGITALES

Si observamos el siguiente diagrama de tiempos veremos el efecto que produce la


señal de reloj en el circuito.

Si observamos el diagrama anterior se ve que los cambios solo se producen


cuando la señal de reloj tiene un valor alto. Aun así si se producen cambios
mientras la señal de reloj está a nivel alto estos cambios se reflejan en la salida,
con lo que no se tiene el control total del circuito que se pensaba.

Hay otros biestables más avanzados que cambian su estado de salida justo en el
cambio de estado alto a bajo en la señal de reloj. En este caso se dice que el
biestable cambia su estado en el flanco de bajada. De esta manera el estado de
las entradas solo se toma en un instante de tiempo muy corto, con lo que no se da
tiempo a que este pueda cambiar.

Otra forma de disparo del biestable es en la transición de bajo a alto en la señal de


reloj, con lo que se dice que el biestable se dispara por flanco de subida.

En resumen las formas síncronas de disparar a un biestable son:


• Por nivel alto de la señal de reloj.
• Por nivel bajo de la señal de reloj.
• Por flanco de subida de la señal de reloj.
• Por flanco de bajada de la señal de reloj.

En cada uno de esos casos la entrada de la señal de reloj del biestable se dibuja
de una manera distinta en su símbolo esquemático. Las formas de dibujarla son
las que se muestran a continuación:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 100


SISTEMAS DIGITALES

EL BIESTABLE TIPO D.
El biestable tipo D es un derivado del biestable R-S convencional. En este caso
concreto el biestable derivado solo tiene una entrada lógica.

Este biestable siempre tiene señal de reloj, con lo que estamos hablando de un
biestable síncrono. El tipo de la señal de reloj puede ser cualquiera de los que se
han visto, tanto disparado por nivel como por flanco.

El esquema básico del biestable tipo D (derivado de un R-S) se muestra en la


siguiente figura. Además se presenta también su símbolo eléctrico, del circuito
integrado comercial.

Si observamos el funcionamiento de este circuito veremos que lo único que hace


es almacenar una copia del valor de entrada en la salida, es decir, si introducimos
un nivel alto en la entrada S sería uno y R sería cero, con lo que la salida tomaría
un valor alto. En el caso contrario la salida tomaría un nivel bajo.

Otro factor a tener en cuenta es que en esta configuración no se puede producir la


condición de indeterminación que se producía en el biestable R-S, ya que la

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 101


SISTEMAS DIGITALES

puerta inversora siempre proporciona en una de las entradas un valor distinto que
la de la otra.

La utilidad práctica que tiene este circuito es su función como latch, palabra que se
utiliza como sustituta de circuito memorizador de datos. La función que realiza en
un circuito es como la de una memoria que almacena los datos de varios bits.

Un ejemplo de utilización de este tipo de biestables sería la de almacenar los


dígitos que va pulsando un operario en un teclado numérico, de forma que cuando
el operario deja de pulsar los datos quedan almacenados en el biestable D y el
circuito digital los pueda procesar durante más tiempo.

EL BIESTABLE J - K
Con el biestable J-K se crea para solucionar el problema de indeterminación que
tiene el biestable R-S. Par ello se modifica éste último con dos puertas más, de
manera que si se da la condición de indeterminación el biestable cambia al estado
contrario al que estaba.

La modificación que se lleva a cabo se muestra en las siguientes figuras. Hay que
tener en cuenta que sirve tanto para los biestables R-S síncronos y asíncronos,
independientemente del tipo de señal de reloj que utilicen.

Si observamos la figura anterior e introducimos un nivel alto por las señales de


entrada J y K vemos que la condición de indeterminación nunca se puede dar, ya
que en las entradas R y S del biestable original no tienen nunca el mismo estado,
además como la conexión de entrada - salida se hace de forma invertida, el
estado final de las salidas será también invertido.

La tabla de verdad que definiría el estado del biestable es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 102


SISTEMAS DIGITALES

El biestable J – K integrado se presenta en la pastilla 4027 de la familia CMOS.


Este circuito integrado contiene dos biestables de este tipo integrados. Su patillaje
se puede observar en la siguiente figura:

EL BIESTABLE TIPO T.
Este biestable nace a partir del biestable J-K, aprovechando las nuevas
características que este presenta. La función que se trata de conseguir es que en
un caso su salida varíe entre los estados cero y uno, y en el otro esa salida
permanezca fija.

El diagrama eléctrico que crea un biestable tipo T a partir de un J-K es el que se


presenta en la siguiente figura. Además también se puede observar el diagrama
eléctrico de un biestable tipo T.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 103


SISTEMAS DIGITALES

La tabla de verdad que indica los posibles estados en los que se puede encontrar
este biestable es:

Si observamos la tabla de verdad veremos que si la entrada T está a nivel alto el


estado de la salida estará cambiando con cada impulso de reloj, mientras que si
ésta está en bajo nivel la salida permanecerá siempre con el mismo estado lógico.
Este tipo de biestables no existen en el mercado, ya que se obtienen directamente
del biestable J-K, aunque si podremos tratarlo como tal al dibujar un esquema
eléctrico.

La principal aplicación de este tipo de biestables es la de dividir frecuencias


digitales.

Esto se consigue poniendo a uno la entrada, con lo que por cada ciclo completo
de reloj se conseguirá un solo cambio de nivel en la salida. Así en la salida se
obtendrá la señal de reloj dividida por dos.

El efecto comentado se puede observar en la siguiente figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 104


SISTEMAS DIGITALES

BASCULAS MONOESTABLES.
Este tipo de básculas se diferencian de todas las que hemos visto hasta ahora en
que las anteriores tenían dos estados estables bien definidos, en los que podían
permanecer durante un tiempo indefinido y éstas solo tienen un estado estable, en
el que permanecerán todo el tiempo. Además hay otro estado, el complementario
al primero, que será activado por una señal externa y provocará que el
monoestable permanezca en un estado inestable durante un periodo de tiempo
determinado generalmente por un circuito RC.

Este tipo de básculas generalmente son activadas por flanco, ya sea ascendente o
descendente.

El efecto que se produce en la salida se puede observar en las siguientes figuras:

Un ejemplo de un circuito monoestable con dos puertas NAND se puede observar


en la siguiente figura. Se utiliza para generar pulsos de nivel bajo de corta
duración (inferior a un segundo) y funciona con lógica negativa de entrada.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 105


SISTEMAS DIGITALES

El estado estable está definido como un nivel alto tanto para la entrada de
impulsos exteriores como para la salida.

Cuando por la entrada se recibe un impulso negativo el circuito se dispara por


flanco de bajada y la salida toma un nivel bajo durante un periodo que depende de
la constante RC, volviendo más tarde a tener un nivel alto. Al introducir un valor
bajo por la entrada de la puerta se produce un nivel alto en la salida de la primera
puerta, al estar el condensador descargado en ese instante, el nivel alto pasa a la
entrada de la segunda puerta NAND, de manera que su salida pasa a tener un
nivel bajo. Una vez que el condensador se carga a través de la resistencia en la
entrada de la segunda puerta vuelve a haber un nivel bajo, provocando que la
salida vuelva a nivel alto, dando por finalizado el estado inestable.

Se puede observar que, debido al modo de funcionamiento del circuito RC, si se


mantiene un nivel bajo en la entrada del circuito, el monoestable funcionará de
manera normal, ya que el condensador una vez cargado no dejará al circuito que
genere otro impulso negativo de salida. Esta condición se mantendrá hasta que el
condensador se descargue como efecto de que la señal de entrada vuelva a su
nivel original.

La principal aplicación de estos circuitos es su uso conjunto con pulsadores


mecánicos. Con esta configuración se evitan los rebotes mecánicos que se
producen en el pulsador, generando una señal estable como consecuencia de esa
pulsación.

BASCULAS ASTABLES.
Este tipo de básculas es una de los que más se va utilizar en electrónica digital
debido a que es capaz de generar una señal cuadrada periódica, señal que se
puede utilizar como reloj para sincronizar todos los circuitos que compondrán
nuestros montajes.

Este circuito biestable se diferencia de los anteriores en que no tiene ningún


estado estable, es decir, los dos estados que tiene son estados inestables, con lo
que el circuito estará cambiando de un estado a otro continuamente.

Al igual que en el circuito monoestable el tiempo que dura cada estado inestable
estará definido por una red RC. Ejemplos de estos circuitos pueden ser:

Osciladores con inversores:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 106


SISTEMAS DIGITALES

Oscilador condicional, si E=0 no oscila y si E=1 oscila:

Todos estos circuitos oscilan gracias a la carga y descarga del condensador a


través de las resistencias del circuito. Si existe más de una resistencia es que el
condensador tiene los caminos de carga y descarga por distinto lugares. Así la
frecuencia de salida de los circuitos dependerá de la constante RC.

Para ver la forma de funcionamiento de los circuitos habrá que suponer un estado
lógico inicial y ver por donde se carga el condensador, lo que provocará que ese
estado lógico cambie. Así el condensador iniciará la descarga repitiéndose el
proceso anterior.

La puerta que tiene un símbolo en su interior indica que tiene los niveles de
cambio de estados mejor definidos, con lo que es más inmune al ruido. El efecto
que tiene en estos circuitos es que la señal cuadrada que generan tiene el mismo
ancho en el semiperiodo positivo que en el negativo. Son puertas trigger Smith.

Oscilador con cristal de cuarzo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 107


SISTEMAS DIGITALES

Este circuito funciona de distinta manera que los anteriores, ya que como se ve no
contiene condensadores. El componente electrónico que regula la forma y
frecuencia de la señal de salida es un cristal de cuarzo. Este componente destaca
por la gran exactitud de la frecuencia de salida y provoca una única oscilación a
una frecuencia determinada, que depende del tamaño del cristal que lleva
internamente.

REGISTROS DE DESPLAZAMIENTO Y CONTADORES.


Este capítulo describirá como crear registros de desplazamientos y contadores a
partir de los biestables que se han visto en el capítulo anterior. Se verá cómo se
adaptan a los distintos códigos binarios y cómo hacer circuitos secuenciales que
sigan una secuencia lógica de pasos que nosotros definiremos.

REGISTROS DE DESPLAZAMIENTO Y LATCH.


Estos dos tipos de circuitos están constituidos en base a los biestables que se han
visto en el capítulo anterior. Su esquema eléctrico es muy parecido, pero existen
pequeñas diferencias que provocan que su funcionalidad sea muy distinta.

El circuito que recibe el nombre de latch se comentó en el capítulo anterior pero


aquí se explicará más detenidamente. Se utiliza para almacenar información
binaria de varios bits a la vez cuando una señal lo indique, generalmente la señal
de reloj.

El esquema de estos circuitos es el siguiente. En él se ve que solo pueden


almacenar cuatro bits, pero es fácilmente ampliable, ya que solo hay que añadir
más biestables al circuito siguiendo la manera de interconexión que utilizan.

Las líneas discontinuas indican que todo lo que hay en su interior estaría integrado
en un circuito comercial, siendo sus entradas exteriores:
• Clock: Indica en qué momento se guardan los datos de entrada. Activo por
flanco de subida
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 108
SISTEMAS DIGITALES

• Clear: Señal asíncrona que pone a cero todos los biestables del latch.
• D1 a D4: Señales de entrada. Se toma muestra de ellas cuando lo indica la
señal de reloj.
• Q1 a Q4: Señales de salida. Siempre contienen una copia de los últimos datos
de entrada.

Una de sus aplicaciones más directas es el almacenamiento de datos que se


presentan durante un pequeño periodo de tiempo, pero que se tienen que utilizar
para un tiempo de procesamiento mayor. Los datos se almacenarán en un latch
para su posterior uso. En este caso los datos pueden provenir de un teclado o un
sensor electrónico.

El caso de los registros de desplazamiento es distinto. Su utilización práctica


depende de la configuración que estos presenten, y se pueden utilizar para
convertir los datos de una forma de transmisión de datos serie a paralelo o
viceversa, o incluso para actuar de retardador de datos.

La forma de funcionamiento de estos circuitos depende de la configuración de


éstos y se verán uno por uno. Sus configuraciones básicas son:
• Serie / Serie.
• Serie / Paralelo.
• Paralelo / Serie.
• Universales.

La mayoría de ellos se basan en que los datos que entran al registro sufren un
desplazamiento lateral antes de que salgan al exterior, de ahí viene su nombre.

Registro de desplazamiento Serie-Serie.


Es el un registro de desplazamiento que tiene la entrada de datos serie y la salida
de datos serie. Su esquema básico para cuatro bits es el que se muestra en la
siguiente figura:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 109


SISTEMAS DIGITALES

En este circuito los datos que entran por los registros de la izquierda se van
desplazando hacia la derecha según se lo indica la señal de reloj, de forma que
transcurridos 4 ciclos de reloj comienzan a salir por la derecha. Entonces se dice
que la información entra en forma de datos serie y sale del mismo modo, pero con
cierto retraso. Esto se utiliza para crear ciertos retardos que son necesarios a
veces en la transmisión o procesado de datos.

Si se introdujera un nivel alto por la entrada serie durante el primer ciclo de reloj la
salida del primer biestable pasaría a nivel alto, en el segundo ciclo de reloj el nivel
alto pasaría al segundo biestable, en el tercero al tercer biestable y en el siguiente,
el nivel alto aparecería en la salida del registro de desplazamiento.

En este mismo procedimiento se basan las memorias FIFO (First In First Out), solo
que los datos de entrada son de varios bits. En este tipo de memorias el primer
dato que entra es el primero en salir, de ahí su nombre.

Registro de desplazamiento Serie-Paralelo.


Es el mismo circuito que el anterior, solo que tiene la salida de datos en paralelo,
es decir, en este circuito introduciríamos los datos en serie y esperaríamos a que
el registro de desplazamiento esté lleno, 4 ciclos de reloj, que es cuando se
podrían recoger los datos en la salida.

Su principal aplicación es la conversión de datos que proceden de una transmisión


serie o formato paralelo, para poderlos procesar de la forma en que se tratan
normalmente los datos. Se utilizaría por ejemplo en el puerto serie de la
computadora, de manera que éste recibe los datos en serie y los manda al
procesador convertidos en paralelo.

Su esquema es el siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 110


SISTEMAS DIGITALES

Registro de desplazamiento Paralelo-Serie.


En este caso la información binaria se introduce en el registro en formato paralelo
en un solo ciclo de reloj, pero para obtener los datos en la salida hay que hacerlo
con pasos de la señal de reloj, de manera que la información habrá salido por
completo cuando hayan transcurrido 4 ciclos de reloj completos.

El circuito que representa este tipo de registros de desplazamiento es:

Estos registros de desplazamiento se utilizan para convertir los datos de formato


paralelo a formato serie. En una computadora se utiliza en el puerto de salida serie
para convertir los datos que provienen del procesador de paralelo a serie,
adaptándolos así al protocolo de transmisión serie.

Como se puede observar se ha necesitado utilizar las entradas de puesta a uno


que tienen los biestables para conseguir el objetivo buscado.

Registros de desplazamiento Universales.


En los circuitos que hemos visto anteriormente se puede observar cómo se ha
cambiado de configuración con solo tomar las entradas o salidas de distintas
maneras, con lo que con los mismos biestables se han conseguido distintos
propósitos. Así pues los circuitos que vamos a ver ahora se podrán adaptar a
cualquiera de las configuraciones vistas, ya que ponen a nuestra disposición todas
las señales necesarias para ello.

El primer circuito y más sencillo es el que se muestra en la siguiente figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 111


SISTEMAS DIGITALES

En este circuito se puede elegir la configuración que se desee, teniendo siempre la


precaución de elegir un solo tipo de entrada de datos y solo otro de salida.

Otros circuitos tienen las entradas y salidas colocadas de manera que los datos en
de entrada paralelo se introducen de manera asíncrona, lo que nos permite admitir
los datos cuando se presenten, sin contar con que hay que esperar a que la señal
de reloj nos lo permita. Un circuito como este podría ser:

USO DEL TEMPORIZADOR 555


El circuito integrado LM555 es un circuito temporizador compuesto internamente
por un divisor resistivo, dos amplificadores operacionales y un flip-flop RS, de
manera que con las conexiones externas que presenta se pueden crear circuitos
muy variados para una amplia gama de aplicaciones.

El diagrama interno se puede observar en la siguiente figura:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 112


SISTEMAS DIGITALES

Como se indicó antes el patillaje de este circuito integrado se muestra en la


siguiente figura:

Si nos fijamos en la figura que muestra el diagrama interno del temporizador


podremos deducir fácilmente su funcionamiento.

Los amplificadores operacionales del esquema están funcionando como


comparadores, con las tensiones de referencia que marca el divisor de tensión
que está conectado a Vcc. De esta forma en el operacional que está conectado a
la patilla R del biestable tenemos una tensión de referencia de 1/3 de Vcc, que se
puede variar con la tensión de disparo, y en el que está conectado a la patilla S del
biestable tenemos 2/3 de Vcc, que si se modifica con la tensión de control tendrá
½ de Vcontrol.

Para cambiar el estado de la salida del biestable es necesario activar alguna de


sus entradas, reset o set. Así para activar la señal de reset habrá que introducir
una tensión por la patilla de disparo menor que 1/3 de Vcc, con lo que la salida del
operacional subirá a nivel alto, activando con ello la señal de reset, pasando la
salida a tomar un nivel alto. Para activar la señal de set bastará con introducir por
la patilla no inversora del primer operacional una tensión superior a 2/3 de Vcc y la
salida de éste se pondrá a nivel alto, activando la señal de set y poniendo a nivel
bajo la salida del temporizador.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 113


SISTEMAS DIGITALES

Para tener un mayor control del temporizador hay otras patillas de entrada que nos
ayudarán a crear una mayor colección de circuitos temporizadores a partir de este
circuito integrado. Estas patillas son restablecer, y descarga.

La patilla restablecer es el reset del biestable RS, en lógica negativa, con lo que si
lo activamos la salida siempre tendrá un nivel alto. La patilla de descarga, que está
conectada a un transistor, sirve para descargar de manera brusca a cualquier
condensador que forme parte de la red RC externa que hace falta para la
temporización. El transistor conduce cuando en la salida Q hay un nivel alto,
descargando el condensador correspondiente, y está en corte en caso contrario.

Si la patilla de control no se utiliza, el fabricante indica que hay que conectar un


condensador de 10nF en esta patilla, con el fin de eliminar ruidos parásitos del
circuito. El circuito se alimenta con una tensión de entre 4,5V y 18V.

Uso del 555 como monoestable.


Este circuito es uno de los más típicos que vamos a montar con el temporizador
555. Se trata de generar un pulso de salida de una duración determinada. Este
pulso aparecerá cuando se introduzca por la señal de disparo una señal, y
desaparecerá cuando transcurra el tiempo de duración para el que ha sido
configurado, permaneciendo la salida en nivel bajo hasta que se vuelva a
introducir una nueva señal de disparo. El esquema eléctrico que configura al
temporizador como circuito monoestable es:

Para comprobar que el circuito es un monoestable hay que suponer un estado


inicial y comprobar el funcionamiento del circuito en ese estado. Para más

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 114


SISTEMAS DIGITALES

sencillez vamos a analizar primero el estado estable, que es cuando la salida está
a nivel bajo.

Estado estable:
Si la salida está a nivel bajo, la patilla de descarga estará conectada a tierra a
través del transistor interno y la tensión del umbral será cero voltios, con lo que no
se supera la tensión de 2/3 de Vcc y la salida permanece como está. Por lo tanto
estamos en un estado estable en el que el condensador permanece descargado.

Estado inestable:
Si partimos del estado estable y aplicamos una tensión a la entrada de disparo
que sea inferior a 1/3 de Vcc forzaremos a que la señal interna de puesta a cero
del biestable se active y con ello la tensión de salida toma un nivel alto de tensión.
Debido a ello la patilla de descarga del condensador estará desactivada,
permitiendo que éste se cargue, de modo que cuando alcanza una tensión de 2/3
de Vcc se activa la señal interna de set y el temporizador vuelve a su estado
estable. Las formas de onda de las señales se pueden ver en la siguiente figura:

El tiempo del estado inestable viene dado por la expresión: T = 1.1RC

Uso del 555 como astable.


En este caso el temporizador estará configurado como astable, de manera que
tendrá dos estados inestables entre los que estará variando la salida. De esta
manera la señal de salida del circuito será una señal cuadrada que tendrá una
frecuencia dependiente de las constantes de tiempo que determinan los circuitos
de carga y descarga RC. De esta manera se podrán crear señales cuadradas con
ciclos de trabajo variables, es decir el tiempo de carga distinto que la descarga,
con lo que la señal cuadrada no será simétrica.

El esquema que configura al temporizador como circuito astable es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 115


SISTEMAS DIGITALES

Para ver el funcionamiento del circuito hay que suponer un estado inicial y ver
cómo evolucionan las señales en él.

Al conectar el circuito el condensador está descargado, con lo que su tensión es


menor que 1/3 de Vcc, activándose por lo tanto la señal R del biestable, con lo que
la salida del temporizador pasa a nivel alto. En estas condiciones el condensador
se carga a través de Ra y Rb, puesto que la señal de descarga está desactivada,
hasta que su tensión supera el valor de 2/3 de Vcc, activándose la señal S del
biestable, momento en el que la patilla de descarga se activa, descargando al
condensador a través de Rb. Cuando la tensión de éste disminuye hasta un valor
inferior a 1/3 de Vcc la salida del temporizador vuelve a ser alta, repitiéndose el
proceso completo una y otra vez, mientras el circuito esté alimentado.

Las señales que se pueden observar en el condensador y en la salida del


temporizador se muestran en la siguiente figura:

W y T son los tiempos de carga y descarga del condensador a través de Ra + Rb


o Rb respectivamente. Se ha de tener en cuenta que el tiempo de carga siempre

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 116


SISTEMAS DIGITALES

es mayor que el de descarga, ya que el circuito resistivo es mayor en la carga que


en la descarga.

La frecuencia de trabajo del circuito viene dado por la expresión:

El ciclo de trabajo especifica la relación asimetría de una señal cuadrada que tiene
distintos tiempos de estado en alta y en baja. A partir de la señal cuadrada de la
figura anterior el ciclo de trabajo se define como:

Por ejemplo si W = 2ms y T = 2.5ms el ciclo de trabajo será:

CONTADORES.
Un "contador" puede ser considerado como un circuito que cuenta el número de
impulsos que se le aplican a través de una entrada externa de reloj.

Consta normalmente de una cadena de biestables en cuyas salidas se lee un


número binario puro que indica la cuenta realizada hasta el momento. Por tanto,
para conseguir un contador que cuente m números distintos, necesitamos una
cantidad "n" de biestables tal que se cumpla la siguiente expresión:

Los contadores pueden clasificase de diversas formas:


Según la señal de reloj:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 117


SISTEMAS DIGITALES

• Síncronos: Todos los biestables conmutan a la vez, con una señal de reloj
común.
• Asíncronos: La señal de reloj no es común, y los biestables conmutan uno tras
otro.

Según como cuenten:


• Ascendentes: El contador cuenta desde números pequeños a otros mayores.
• Descendentes: El contador cuenta desde números grandes a otros menores.
• Up/Down: El contador será ascendente o descendente, en función de una
entrada de control.

Según los números que puedan contar:


• Binarios de n bits: Cuentan todos los números posible de "n" bits, desde el 0
hasta el 2n-1.
• De Décadas "BCD": Cuentan desde el 0 hasta el 9, y son ampliables de década
en década.
• De módulo N: Cuentan N números diferentes, desde el 0 hasta el N-1.

Todos los contadores cuentan de forma cíclica, es decir, una vez alcanzado el
número máximo de cuenta, vuelven a contar desde 0 en el siguiente impulso de
reloj.

En muchas aplicaciones, los contadores son utilizados como temporizadores,


cuentan unos determinados pulsos de reloj, de manera que el tiempo total de
cuenta es de un tiempo determinado.

CONTADORES ASÍNCRONOS.
Son los contadores de construcción más sencilla, y se caracterizan porque los
impulsos de reloj de los biestables no actúan simultáneamente, sino de forma
secuencial, uno después de otro.

Se basan en una cadena de biestables conectados de forma que con cada pulso
de reloj conmuten al estado contrario al que tenían. La cadena se establece
conectando la salida de un biestable con la entrada de reloj del siguiente.

Como ejemplo se muestra un contador asíncrono ascendente de 4 bits, construido


mediante biestables JK activos por flanco de bajada, y con ambas entradas fijadas
a 1.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 118


SISTEMAS DIGITALES

Este circuito cuenta en binario puro de forma ascendente, desde el número 0


hasta el 15. Un cronograma del circuito, supuestos inicialmente puestos a 0 los
biestables, es el siguiente:

Este cronograma ilustra el hecho de que todos los circuitos contadores pueden ser
usados como divisores de frecuencia, ya que en sus salidas obtenemos señales
cuyas frecuencias mantienen una relación fija con respecto a la frecuencia de la
señal de reloj.

La principal desventaja de estos contadores es su lentitud, ya que los biestables


conmutan en serie y se suman los retardos de propagación, con lo que se ha de
esperar un poco más hasta obtener el resultado final de la cuenta. Observar que la
lentitud es mayor cuanto más grande es el contador.

Otro problema de los contadores asíncronos es que, durante y el tiempo de


conmutación de los biestables, aparecen momentáneamente valores de salida que
no son válidos dentro de la cuenta que se lleva.

Para construir un contador asíncrono descendente bastará con tomar las salidas
de cuenta en las salidas negadas de cada biestable, con lo que la cuenta

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 119


SISTEMAS DIGITALES

empezaría por 1111 y terminaría por 0000. Otro modo es utilizar biestables JK
activos por flanco ascendente.

Observar como en este último caso la cuenta se realiza al revés, que es lo


contrario de lo que puede parecer en un principio. El esquema eléctrico del
contador descendente es como el del ascendente pero tomando las salidas de
cuenta de las salidas negadas de los biestables, su cronograma es como el del
contador ascendente pero con las señales de salida invertidas.

CONTADORES SÍNCRONOS.
Los contadores síncronos están formados por una cadena de biestables de
cualquier tipo, a los que se aplica una misma señal de reloj, por lo que todos
conmutan a la vez, que es la entrada externa de impulsos a contar y cuyas
entradas síncronas son activadas por un conjunto de circuitos combinacionales
(puertas lógicas) configurados de tal manera que hacen que el contador vaya
pasando por los estados de cuenta deseados.

Por ejemplo, el diagrama de bloques de un contador síncrono de 4 bits realizado


mediante biestables tipo D es el siguiente:

Según sea el circuito combinacional, podemos obtener un contador ascendente o


descendente, binario (O a 15) o de Décadas, etc.

El problema principal consiste en diseñar dicho circuito combinacional para que


active correctamente las entradas de los biestables para el próximo estado, en
función de las salidas actuales de estos. Para ello el primer paso es construir la
llamada tabla de transición del contador, en la que establecemos el orden de
cuenta deseado y en la que se reflejarán todos los posibles estados en los que
han de funcionar los biestables.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 120


SISTEMAS DIGITALES

Por ejemplo, si queremos diseñar un contador ascendente binario de 4 bits, su


tabla de transición será la siguiente:

Sin embargo, para construir el circuito combinacional necesitamos una tabla de


verdad cuyas funciones de salida no sean el próximo estado de salida deseado en
los biestables, sino el valor de las entradas que harán conmutar a los biestables a
dicho próximo estado cuando llegue el siguiente pulso de reloj.

Para obtener dicha tabla de verdad, es necesario saber qué tipo de biestables se
van a utilizar en la construcción del contador y cuál es la tabla de excitación de
ese tipo de biestable.

Esa tabla de excitación indica cómo activar las entradas de un determinado tipo de
biestable para que conmute del estado actual a cualquier otro que se quiera
obtener en el próximo estado. Las tablas de excitación para los cuatro tipos
principales de biestables son las siguientes:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 121


SISTEMAS DIGITALES

Con estas tablas junto con la tabla de transición del contador podemos construir
ya la tabla de verdad del circuito combinacional a diseñar, llamada normalmente
tabla de excitación del contador. Esta tabla tendrá como variables de entrada el
estado actual de salida de los biestables, y como funciones de salida las próximas
entradas síncronas que han de tener dichos biestables para que conmuten en el
siguiente ciclo de reloj al estado que nosotros hemos definido anteriormente como
próximo estado.

El valor de estas funciones para cada combinación de entrada se obtiene


observando en la tabla de transición qué conmutación se debe producir en cada
biestable, y anotando los valores que deben tener sus entradas para que dicha
conmutación se produzca, según indique la correspondiente tabla de excitación
del biestable con el que se va a construir el contador.

Para el contador binario de 4 bits del ejemplo inicial, construido con biestables D,
la tabla de verdad coincide exactamente con la de transición, ya que en un
biestable tipo D se cumple que Qt+1=Dt.

Sin embargo, si construimos el contador con biestables JK, la tabla de verdad será
la siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 122


SISTEMAS DIGITALES

El paso final consiste en simplificar cada una de las funciones de esta tabla lo
máximo posible y dibujar el circuito contador completo, incluyendo los biestables y
las puertas lógicas necesarias impuestas por el circuito combinacional.
Simplificando por Karnaugh en biestables JK, resulta:

Simplificando en biestables tipo D, quedaría así:

El circuito diseñado con biestables JK quedaría de la siguiente manera:

En resumen, como características generales de los contadores síncronos caben


destacar las siguientes:

a) Todos los biestables están gobernados por la misma señal de reloj y conmutan
simultáneamente.
b) La frecuencia máxima de funcionamiento del contador viene determinada por el
retardo de un solo biestable, más el de una o dos puertas lógicas,
independientemente del número de biestables del contador. Son, por lo tanto,
contadores más rápidos que los asíncronos.
c) Las funciones obtenidas para las entradas síncronas de los biestables van
siendo cada vez más complejas a medida que aumenta el peso binario del

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 123


SISTEMAS DIGITALES

biestable. Esto hace que, para contadores con un mayor número de bits,
aparezcan problemas de fan out en las salidas de los biestables de peso binario
bajo.

Ejemplo de diseño de un contador síncrono.


Diseñar un contador síncrono ascendente que cuente décadas de números, es
decir, del cero al nueve. Diseñarlo en base a biestables RS.

En la primera fase se tratará de diseñar la tabla de transición del contador y junto


con la de excitación del biestable RS, calcular las entradas necesarias para que
los biestables cambien al siguiente estado de manera correcta. Así la tabla de
transición que quedará es:

Simplificando por Karnaugh las entradas de cada biestable nos quedan las
siguientes ecuaciones lógicas para cada una de las entradas de los biestables.

Dibujando finalmente el circuito completo incluyendo los biestables RS y las


puertas correspondientes a las expresiones que hemos calculado, nos quedará:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 124


SISTEMAS DIGITALES

CIRCUITOS SECUENCIALES ASÍNCRONOS CON PUERTAS.


Este tipo de circuitos estará constituido solamente por puertas, pero con la
peculiaridad de que permanecen las características de secuencia que se
presentaban en los biestables. Esto es posible gracias a la realimentación de las
salidas hacia las entradas, que se va realizar de modo que el estado siguiente al
actual dependa, tanto del nuevo valor que se aplique a las entradas, como del
valor anterior de las salidas.

El diagrama de bloques de este tipo de circuitos es:

Para diseñar un circuito de estas características es necesario representar en una


tabla el estado actual y el próximo estado, incluyendo en las propias entradas, las
salidas realimentadas.

Para verlo con mayor claridad lo representaremos con un mapa de Karnaugh, en


donde se podrán observar, el número de estados estables e inestables, las
combinaciones actuales de entrada y el próximo estado estable que se alcanzará
cuando se cambie la combinación de las variables de entrada.

Esto se verá de una manera más clara si se realiza un ejemplo práctico, a la vez
que se explica en qué consiste el método de diseño.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 125


SISTEMAS DIGITALES

El número de estados inestables sumados con los estables tiene que ser inferior al
número de combinaciones posibles de entrada, incluyendo como entradas las
variables de salida realimentadas, con lo que un posible caso es:

En donde A y B son las variables de entrada, y M y N son las salidas


realimentadas.

Los números del 1 al 8 que están dentro de un círculo son los estados estables, ya
que para esa combinación concreta la salida actual y la del siguiente estado
permanecen iguales, con lo que el circuito permanece estable. Los números del 1
al 8 que no tienen círculo son estados inestables, ya que la salida actual es
distinta que la del próximo estado, en esta situación el circuito tiende a cambiar los
valores de salida y con ello el de las entradas del circuito. Así se conmutará a otro
estado estable, mediante el paso por el inestable anterior.

Según el criterio anterior si estamos en un estado estable, para pasar a otro


estable distinto tendremos que pasar primero por uno inestable mediante el
cambio de una de las variables de entrada que son independientes.

Dibujando en el mapa de Karnaugh, en vez del número de estados, el valor de las


salidas para cada estado, tendremos:

Para dibujar esto nos hemos basado en que los estados estables han de tener el
mismo valor de salida para el próximo estado que para el estado actual, con lo que
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 126
SISTEMAS DIGITALES

el valor de M y N tiene que ser el mismo en las entradas actuales, que para la
próxima salida, que es el valor representado en el mapa de Karnaugh.

Para los estados inestables se ha colocado un valor para la próxima salida distinta
que para la actual, para provocar ese estado inestable que se buscaba, con el que
pasaremos a otro estado estable que tenga distinto valor de salida que el anterior.
Por ello el valor de la próxima salida deberá ser el de la salida que deberá tener en
el siguiente estado estable.

Lo único que queda por hacer ahora es reducir la expresión de salida del circuito
mediante uno de los métodos conocidos, teniendo en cuenta que en este caso, al
tratarse de un circuito con realimentación, la variable de salida dependerá también
de ella misma, pero en su estado anterior.

La simplificación será:

Las expresiones finalmente reducidas quedarán:

Así el circuito combinacional resultante será:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 127


SISTEMAS DIGITALES

NOTA: A veces para que la transición entre unos estados y otros sea correcta
habrá que añadir a la salida una resistencia en paralelo con un condensador. Esto
provocará que la transición entre un estado y otro sea más lenta, evitando falsos
estados provocados por los distintos retardos que hay en el circuito, debidos al
tiempo de propagación de las puertas.

CIRCUITOS SECUENCIALES SÍNCRONOS CON BIESTABLES.


Se trata de realizar lo mismo que en el apartado anterior pero sin utilizar tantas
puertas como utilizábamos antes, mediante la ayuda de los biestables que ya
conocemos. De esta manera ya tendremos realizada parte de la realimentación de
las salidas hacia las entradas, de manera que el circuito completo constará de tan
solo unas pocas puertas lógicas y varios biestables, siendo el esquema final más
reducido.

En este caso partiremos de la tabla de estados del ejercicio anterior, con lo que no
es necesario explicar nada nuevo sobre ella. Esta era:

Como se ve la tabla que indica los valores actuales de las entradas, las salidas
actuales y las próximas salidas, tampoco ha variado. Lo que diferencia el método
de diseño anterior del que ahora tratamos es el siguiente paso, ya que habrá que
calcular las entradas de los biestables para el próximo estado, de manera que
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 128
SISTEMAS DIGITALES

cuando llegue un nuevo pulso de reloj, la salida cambie al estado que indican las
tablas anteriores.

Como en la práctica tenemos biestables J – K tendremos que realizar el diseño


para este tipo de biestables. Así pues veamos las fases en que hay que diseñar el
circuito, siempre partiendo de la tabla de transición del biestable J – K que se
muestra más abajo.

Dibujando los estados por los que tiene que pasar cada salida de forma
independiente, para tener representados de forma más clara los estados por los
que tiene que pasar la salida de cada biestable, tendremos:

En la siguiente fase se tendrán que dibujar las entradas del biestable que controla
cada salida, de manera que ésta pase al siguiente estado de manera correcta.
Para ello habrá que mirar la tabla de transición del biestable J – K junto con el
estado actual y siguiente estado que se requiere para cada salida en cada
combinación existente en las entradas del circuito. Esto es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 129


SISTEMAS DIGITALES

En este punto de diseño se puede decir que lo más complicado está hecho. Ahora
solo queda simplificar las entradas de los biestables mediante los métodos que ya
conocemos y sustituir los resultados por puertas.

Tratando las entradas J y K de cada biestable por separado, tendremos cuatro


tablas de salida, dos por cada biestable. Incluyendo la simplificación de Karnaugh,
estas son:

De esta forma las ecuaciones reducidas quedarán como:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 130


SISTEMAS DIGITALES

MEMORIAS.
En este tema se explicarán los distintos de memoria que existen en el mercado, o
al menos la gran mayoría de ellas.

Para cada tipo de memoria se explicarán los modos de funcionamiento,


aplicaciones para las que son útiles y las ventajas que presentan con respecto a
los otros tipos.

Las memorias proveen de un medio de almacenamiento a los sistemas digitales,


para que se pueda realizar un procesamiento más rápido y eficaz de los datos que
éstas contienen.

Existe una gran variedad de memorias en el mercado, aunque en este tema solo
trataremos las memorias con semiconductores, ya que este utiliza una gran
variedad de sistemas de almacenamiento de datos.

La clasificación más general que se puede hacer de las memorias es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 131


SISTEMAS DIGITALES

Memorias volátiles (RAM).


• Estáticas.
• Dinámicas.

Contenidos Permanentes.
• ROM
• PROM
• EPROM
• EEPROM
• Memorias CAM

Los tipos de memorias más significativos indican lo siguiente:

• Memorias de acceso aleatorio (Direccionables): Son memorias de acceso


directo, esto es, cada una de sus células de almacenamiento pueden ser leídas
o escritas de forma directa, sin más que presentar en las entradas
correspondientes (de dirección) el código equivalente a la posición que ocupan.
• Memorias de acceso secuencial (desplazamiento): En este tipo de memorias
el acceso de una posición se consigue por desplazamiento hacia la salida de
todas las informaciones almacenadas en las posiciones anteriores a la
deseada.
• Memorias CAM (Content Addressable Memory): Estas memorias son
direccionables por su contenido. Esto significa que la operación de lectura no se
realiza indicando una dirección y observando su contenido, si no que se
suministra un dato y la memoria responde si dicho dato está almacenado o no.
En caso afirmativo la memoria indica en qué dirección se encuentra.

CARACTERÍSTICAS DE LAS MEMORIAS.


En el siguiente apartado se van a enumerar algunos de los parámetros más
significativos de las memorias. Dependiendo de si estas características son
mejores o peores, tendremos memorias más caras o baratas en el mercado.

• Capacidad: Es la cantidad de información expresada en número de bits que la


memoria puede almacenar, aunque generalmente los datos están organizados
en bytes. La capacidad se expresa como el número de palabras por el número
de bits de cada palabra, es decir:

Capacidad = palabras x bits/palabra


ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 132
SISTEMAS DIGITALES

Por ejemplo una memoria que puede almacenar 2048 palabras de 8 bits cada
una, vendrá representada por:
16384 = 2048 x 8

• Volatilidad: Se dice que una memoria es volátil cuando la información


almacenada en ella se pierde en ausencia de tensión de alimentación.
• Tiempo de lectura o tiempo de acceso: Es el tiempo que transcurre desde
que se da la orden de leer el contenido de una determinada posición de
memoria hasta que esos datos aparecen en los terminales de salida.
• Tiempo de ciclo de escritura: Es el tiempo que ha de transcurrir desde que se
inicia una operación de escritura y el instante en que la información queda
almacenada.

MEMORIAS RAM ESTÁTICAS.


El nombre de estas memorias viene determinado por su modo de funcionamiento.

RAM significa Random Memory Access, o memoria de acceso aleatorio, indicando


que la lectura de un dato en estas memorias se hace directamente sobre el dato a
leer, sin necesidad de leer los datos anteriores, como en las memorias de acceso
secuencial (disquetes, cintas).

Este tipo de memorias se caracterizan porque, mientras están alimentadas, la


información permanece almacenada en ellas sin modificación, a no ser que se
realiza una operación de escritura sobre ellas.

El inconveniente que presentan es que si la alimentación desaparece por un fallo


eléctrico, la información que había almacenada en ella desaparece.

Desde el punto de vista externo, salvo raras excepciones, el chip de memoria


presenta el aspecto que se muestra en la siguiente figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 133


SISTEMAS DIGITALES

Los dos terminales de alimentación son fundamentales para el correcto


funcionamiento de la memoria. En memorias RAM bipolares a estos terminales se
les suele denominar como Vcc y masa. Normalmente Vcc es de 5V pero según
evolucionan las memorias y sobre todo cuanto mayor es su tamaño y velocidad, el
valor de Vcc se reduce hasta alrededor de 3V o menos.

Los terminales de dirección (A0 ··· AN) sirven para indicar la posición de memoria
sobre la que se desea hacer una operación de lectura o escritura. El número de
posiciones de memoria del chip está relacionado directamente con el número de
terminales de dirección de la memoria, de manera que si hay n bits de direcciones
podremos direccionar 2n posiciones de memoria distintas.

La entrada o salida de datos se realiza por los terminales que están marcados
como datos (I/O) en el diagrama anterior. Estos terminales se comportan como
salidas si se está realizando una operación de lectura y como terminales de
entrada si se está realizando una operación de escritura. Además cuando el chip
está inhibido (no está seleccionado) las patillas de salida están en estado de alta
impedancia (como si no estuvieran conectadas a ningún sitio). El número de
terminales de datos depende del ancho en bits que tenga la palabra que se va a
guardar. Esto depende mucho del tipo de arquitectura en donde se vayan a
emplear este tipo de memoria, así habrá memorias de 4, 8, 16 o 32 bits de ancho
para el bus de datos.

El terminal de selección de lectura escritura (R/W o WE), que indica a la memoria


la operación que debe hacer en cada momento, es decir, si debe guardar los datos
o sacarlos al exterior. Un nivel alto en esta patilla significa que se va a realizar una
operación de lectura y un nivel bajo que será una operación de escritura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 134


SISTEMAS DIGITALES

El terminal marcado como CS o CE es el terminal de selección o activación de


chip, y actúa principalmente sobre los terminales de datos (E/S), con lo que si el
chip no está activado no se podrán realizar operaciones de lectura o escritura.

Existe otro terminal adicional de control para las patillas de datos de estos chips.
Es la patilla de control de salida de datos (OE), que permite alternar el estado de
las salidas entre un estado activado o un estado de alta impedancia. Esto permite
conectar varios de estos chips a un mismo bus, ya que aunque tengamos varias
salidas conectadas a un mismo punto, solo estarán activas las del chip que esté
seleccionado (solo uno a la vez).

Diagrama interno de una RAM estática.


Para ver con mayor claridad el funcionamiento interno de una memoria RAM
estática, y en general de la mayoría de memorias, el fabricante proporciona el
diagrama interno de sus memorias.

En este diagrama de bloques se puede apreciar la función de cada una de las


patillas asociadas con la memoria. Para ello observar la siguiente figura.

Como se puede observar algunas entradas de dirección determinan la selección


de filas de la matriz de memoria y las otras la selección de columnas. Una vez
seleccionada una posición de memoria y mediante la utilización de las señales de
control, se podrá escribir o leer un dato de la memoria.

Con la señal de control CS podemos bloquear las lecturas y escrituras de


memoria, mientras que con la señal WE se selecciona el tipo de operación a
realizar.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 135


SISTEMAS DIGITALES

Modos de funcionamiento de las RAM estáticas.


Por los modos de funcionamiento, entendemos los distintos ciclos de operaciones
que se pueden realizar con este tipo de memorias, así tendremos dos
fundamentales: Ciclo de lectura y Ciclo de escritura.

Cuando se realiza un ciclo de lectura, lo que se está haciendo es extraer los datos
existentes en la matriz de memoria que hay dentro del circuito integrado. Para ello
es necesario que el chip esté seleccionado mediante la activación de la entrada de
control CS y que indiquemos que se va a realizar una operación de lectura,
desactivando la señal WE.

Bajo estas condiciones, si ponemos en las entradas de dirección una dirección


válida, a la salida del circuito integrado se obtendrá el dato que hay en esa
posición de memoria. En la siguiente figura se puede observar un cronograma, en
el que se puede observar con más detalle todo el proceso que se ha explicado
anteriormente.

Cuando se va a realizar un ciclo de escritura el proceso se complica un poco más.

Esto es debido a que si se quiere que los datos se graben de una forma correcta,
habrá que manejar las señales con un orden correcto y lógico.

Lo primero que hay que hacer es colocar sobre el bus de direcciones la dirección
sobre la que se quiere grabar el dato, después seleccionar el modo de la memoria
en modo escritura y colocar el dato sobre el bus de datos. Hay que tener en
cuenta que el dato ya se ha grabado, con lo que para que no se borre habrá que
deshabitar el modo de escritura antes de modificar el dato del bus de datos o el de
direcciones. Si esto no se hiciera así lo que ocurriría es que o el dato no se
grabaría de modo correcto o se grabaría en varias direcciones distintas. El modo
correcto de hacerlo es como se ilustra en la siguiente figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 136


SISTEMAS DIGITALES

Expansión de memoria.
La expansión de memoria se realiza cuando se necesitan utilizar un mayor número
de datos o un tipo de datos mayor, es decir, cuando se necesitan un mayor
número de posiciones de memoria o cuando lo que se necesita es almacenar
datos de más bits de ancho.

La expansión de la longitud de la palabra o ancho de palabra se consigue


mediante la unión de varios chips, que comparten todas las señales de control
pero que tienen los buses de datos separados, de manera que se utilizan a la vez
para ampliar el ancho de bus.

Esto se puede observar en la siguiente figura:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 137


SISTEMAS DIGITALES

El otro tipo de expansión comparte los buses de datos y de direcciones, y


mediante la combinación correcta de las señales de control se generan más líneas
de direcciones, lo que significa que se obtendrán más posiciones de memoria para
almacenar datos.

La forma más sencilla de hacerlo es controlando las señales de CS con la ayuda


de un decodificador, de manera que se pueda controlar que chip está
seleccionado en cada momento. En este caso y debido a la configuración obtenida
se han de utilizar integrados que utilicen el tipo de salida triestado, que se utilizará
cuando el chip en cuestión no esté seleccionado.

Este tipo de ampliación se puede observar en la siguiente figura:

Hay otro tipo de ampliación que se obtiene como resultado de las dos que se han
visto anteriormente. Con ella se consigue una ampliación tanto del número de
posiciones de memoria como del ancho del bus de datos. En este caso será
necesaria la utilización de más chip de memoria que en los casos anteriores.

La asociación obtenida en este caso será:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 138


SISTEMAS DIGITALES

Memorias RAM serie.


Estas memorias tienen una forma muy peculiar de realizar los ciclos de lectura y
escritura. Por lo general son memorias de pequeña capacidad, del orden de 256 x
8 bits.

El aspecto exterior de este tipo de memorias es como el que se muestra en la


siguiente figura, en donde se puede ver que solo tiene una patilla para la entrada
de datos, otra para la salida de estos, una para la señal de reloj y la última para
seleccionar o deseleccionar el chip.

El modo de funcionamiento de estos chips es muy sencillo. Para realizar una


operación de lectura bastará con seleccionar el chip e introducir los bits de
dirección de página de forma ordenada por la entrada de datos, de manera que
entre un bit por cada pulso de reloj, inhibiendo de nuevo el chip, con lo que la
página indicada quedará seleccionada. El siguiente paso será una nueva
selección de chip con la que introduciremos los datos de dirección dentro de la
página seleccionada, con lo que ya se tendrá seleccionada una posición de

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 139


SISTEMAS DIGITALES

memoria concreta dentro de la página que se había seleccionado. Si la operación


es de lectura, en los siguientes 8 impulsos de reloj se obtendrán en la salida los
datos leídos, pero si es de escritura tendremos que introducir los datos a
almacenar después de los bits de dirección por la línea de entrada.

Memorias RAM dinámicas.


Estos tipos de memorias son exactamente igual
que las memorias RAM estáticas en cuanto a modo
de conexión y de ampliación, la diferencia que
existe entre ambas memorias es la forma en que
están construidas.

Cada célula de memoria de las memorias RAM


dinámicas está compuesta por un solo transistor
que tiene asociado un condensador en donde se almacena la carga por un
pequeño periodo de tiempo. La estructura real de cada celda de memoria se
representa en la figura.
Este tipo de memorias permite alcanzar una elevada cantidad de almacenamiento
a bajo costo, debido principalmente a que cada célula de memoria es mucho más
sencilla que la de las memorias RAM estáticas, que estaban compuestas de
biestables construidos con varios transistores, con lo que en menos espacio físico
se consiguen integrar un mayor número de celdas de memoria.

Su principal inconveniente radica en la necesidad de actualizar la información de


forma periódica mediante ciclos de escritura especiales que se conocen como
ciclos de refresco de memoria. Esto trae como inconveniente adicional el que se
tengan que construir circuitos especiales de control para estas memorias, para
poder realizar de manera adecuada esos ciclos de refresco.

La principal aplicación de estas memorias está en la informática, en donde debido


a las elevadas cantidades de datos que se procesan se necesitan también
grandes cantidades de memoria para almacenar esos datos que están siendo
procesados.
Estas memorias se construyen a partir de transistores MOS, que presentan
grandes impedancias de entrada y comportamiento capacitivo, con lo que los
condensadores son también transistores MOS.

Debido a que estas memorias almacenan una gran cantidad de datos, y con el
propósito de eliminar líneas de dirección, se han añadido dos señales de control

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 140


SISTEMAS DIGITALES

adicionales, para diferenciar si la dirección de entrada pertenece a las filas o a las


columnas de la matriz de memoria de datos. De esta manera la dirección se indica
con dos bloques de direcciones, uno para las filas y otro para las columnas.

Las señales que se han añadido son CAS y RAS:

• CAS: Column Addres Strobe, o almacenamiento de la dirección de columnas.


• RAS: Row Addres Strobe, o almacenamiento de la dirección de filas.

Memorias RAM dual-port.


Estas memorias están caracterizas por tener dos juegos de señales de dirección,
datos y lectura/escritura, cada uno de los cuales puede acceder sobre las mismas
células de memoria.
Su principal aplicación es en sistemas de procesamiento en los que hay más de
un procesador, y para
que el sistema
funcione de manera
más rápida se permite
el acceso de ambos
procesadores a la
misma memoria y al
mismo tiempo, según
se indica en la figura:

En estos casos si ambos procesadores leen y escriben en la matriz de memoria a


la vez se consigue un mayor rendimiento de la máquina. Solo hay un caso
especial que hay que tener en cuenta, cuando ambos procesadores intentan
acceder a la misma posición de memoria.

En este caso se pueden dar dos situaciones, dependiendo de la operación que se


vaya a realizar:

- Lectura: No hay ningún inconveniente, los dos leen el mismo dato y obtienen lo
mismo en los buses de direcciones.
- Escritura: Los dos están escribiendo sobre las mismas celdas de memoria y
entran en conflicto si quieren escribir distintos datos, con lo que habrá que
utilizar un sistema de arbitrariación que regule el acceso en estos casos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 141


SISTEMAS DIGITALES

Hay varios sistemas de arbitrariación para evitar estas situaciones, que en la


mayoría de los casos están integrados en la propia memoria. Uno de los más
sencillos es dejar que acceda el que primero lo solicite, y en caso de
indeterminación dejar que siempre actúe el mismo.

Memorias ROM.
El nombre de este tipo de memorias viene de Read Only Memory, que como su
nombre indica son memorias en las que solo se pueden realizar ciclos de lectura.

Aparecen en la industria para eliminar el inconveniente que presentan las


memorias
RAM de que cuando se les quita la alimentación los datos que tenían
almacenados desaparecen.

El almacenamiento de los datos en las memorias ROM se realiza en el diseño del


propio circuito integrado, de manera que cuando este se construye es cuando se
graban los datos, incluidos estos en el propio diseño.
Este tipo de memorias se utiliza en elementos electrónicos de gran difusión, que
siempre realizan la misma tarea o para almacenar un pequeño programa software
que ha de realizar un sistema computarizado. Este último caso es lo que se
conoce en muchas computadoras como la BIOS, que almacena un programa que
testea el equipo completo en el proceso de arranque e inicia el sistema operativo.

El diseño de estas memorias es muy caro, ya que para cada grupo de datos a
almacenar hay que realizar un nuevo diseño, con lo que solo sale rentable cuando
se necesitan grandes cantidades de memorias que tengan almacenados los
mismos datos, por ejemplo 100.000, ya que una vez realizado el diseño, la
fabricación es muy barata y sencilla.

Memorias PROM.
El nombre de estas memorias viene de Programable Read Only Memory, y como
su propio nombre indica son memorias ROM programables.

Este tipo de memorias aparece como una alternativa más económica para
pequeñas aplicaciones a las memorias ROM. Ahora estas memorias son
programables, con lo que o bien el fabricante o bien el propio usuario puede
programarlas a su antojo, siendo el diseño del circuito integrado común para todas
las aplicaciones.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 142


SISTEMAS DIGITALES

El proceso de programación consiste en romper fusibles o transistores internos del


circuito integrado mediante la aplicación de una tensión de programación
suficientemente alta para fundir los fusibles de los datos que tienen que estar a
cero.

Con este tipo de memorias podemos obtener memorias programadas a medida


con un relativo bajo coste, al que hay que añadir el programador de memorias. El
inconveniente de estas memorias es que solo se pueden programar una vez, con
lo que si nos equivocamos en la programación tendremos que tirar la memoria
completa y comprar otra.

Otras memorias programables.


Para solucionar los problemas que presentan las memorias que hemos visto hasta
ahora, se fueron creando muevas memorias según fueron aumentando las
necesidades y exigencia de los sistemas digitales. Dentro de las nuevas memorias
desarrolladas hasta ahora podemos destacar dos de ellas por las ventajas que
presentan para la electrónica digital.

Las memorias EPROM que añaden una nueva característica a las memorias
PROM.

Su nombre viene de Erasable Programable Read Only Memory, y como su


nombre indica se pueden borrar.

El proceso de grabación de estas memorias es similar al de las memorias PROM,


y el de borrado se realiza por medio de rayos ultravioletas, que por medios
químicos regeneran las uniones que se han destruido en el proceso de grabación
(son uniones creadas mediante cargas eléctricas). Estas memorias se pueden
grabar y borrar cientos de veces, e incorporan patillas de configuración para
chequear la memoria y obtener datos del fabricante y del propio chip.

El proceso de borrado se realiza a través de una ventana de cristal que lleva en la


parte superior, por la que entraran los rayos ultravioletas para proceder al borrado
de la memoria. Durante el uso normal de la memoria se ha de poner una
protección óptica a la ventana que no deje que entre ningún tipo de luz, ya que la
mayor parte de ellas tienen partes de luz ultravioleta que harían que los datos de
la memoria se fueran eliminando.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 143


SISTEMAS DIGITALES

Para hacernos una idea una memoria se puede borra por completo con un tiempo
de exposición de 10 minutos con luz ultravioleta, con 10 horas a la luz del sol y
con 1000 a la luz de un fluorescente.

Para eliminar los inconvenientes de borrado imprevisto de las memorias EPROM y


el tener que quitarlas del circuito en el que funcionan para su borrado, aparece
otro tipo de memorias que se llaman EEPROM o E2PROM, que son borrables
eléctricamente sobre el circuito en el que están montadas. Su nombre viene de
Electrically Erasable Read Only Memory y se borran con un voltaje eléctrico
determinado.

Una de las principales aplicaciones de estas memorias es el de almacenar el


estado actual de programación de los aparatos eléctricos que son programados
por el usuario final, como pueden ser los televisores digitales. Cuando éstos se
desconectan de la red eléctrica se procede a la reprogramación de la memoria de
datos de manera que se guardan las emisoras sintonizadas y los ajustes de
imagen como el brillo y color.

CONVERTIDORES DIGITAL-ANALÓGICO (D/A) Y ANALÓGICO-DIGITAL (A/D).


Los convertidores digital-analógicos (D/A) y analógico-digital (A/D) son el interfaz
entre el mundo real o analógico, y el mundo de la computación o digital. Una señal
analógica transmite información en función de su nivel de tensión o de intensidad,
frecuencia u otras variables continuas. Una señal digital almacena la información
mediante una serie de bits que están fijados a unos rangos de tensión alto o bajo,
que se consideran como 1 o 0 lógico. Los convertidores D/A y A/D son necesarios,
ya que la mayoría de los sistemas de control convierten fenómenos físicos como la
temperatura, presión, peso, etc. a señales eléctricas o viceversa. Por tanto, las
entradas y salidas del sistema deberán ser analógicas. Por otro lado, los sistemas
electrónicos digitales son menos sensibles al ruido que los sistemas analógicos y
permiten procesar los datos mediante circuitos digitales más rápidos y más
precisos que los circuitos analógicos. Según esto, en un sistema electrónico se
requerirá un convertidor A/D que transforme las entradas analógicas en señales
digitales, un circuito digital que procese los datos, generando unas salidas
digitales, y un convertidor D/A, que transforme las señales digitales en analógicas.

Seguidamente se estudian algunas estructuras típicas para realizar conversiones


D/A y A/D, comenzando por las primeras, ya que muchas estructuras de
convertidores A/D utilizan convertidores D/A. En este estudio no se detallan en

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 144


SISTEMAS DIGITALES

profundidad los problemas de diseño electrónico de los dispositivos, sino que se


estudian estas estructuras desde un punto de vista general.

CONVERTIDORES D/A.
Los convertidores A/D están formados por tres partes como se muestra en la
siguiente figura: un sistema de interruptores controlado por entradas digitales que
están en estado abierto o cerrado, un circuito divisor que genera un valor
analógico en función de los interruptores abiertos y cerrados, y una fuente de
tensión de alta precisión. Este circuito puede mejorarse mediante la amplificación
de la señal en el circuito divisor que le haga insensible a las cargas conectadas en
la salida.

Un ejemplo de convertidor D/A de cuatro bits se muestra en la siguiente figura,


que corresponde a un convertidor A/D de resistencias ponderadas, donde las
resistencias que aparecen se dividen por dos sucesivamente desde el bit menos
significativo hasta el bit más
significativo. La entrada del
circuito es un señal digital
formada por una palabra de
cuatro bits (A3, A2, A1, A0), que
activa a unos interruptores, de
forma que si el bit Ai es 1 el interruptor está cerrado, y si es 0 está abierto; la
salida es una señal analógica Vo. En esta figura se utilizan interruptores ideales,
en los circuitos reales estos interruptores se realizan mediante circuitos
electrónicos, ya estén formados por diodos, por transistores bipolares o por
transistores FET. Estos interruptores influyen en las prestaciones del convertidor,
ya que debido al diseño electrónico en las salidas del interruptor no se tendrán los
valores Vr o GND, sino que modificarán ligeramente estos valores, además esa
modificación puede ser distinta para cada interruptor ya que no son
electrónicamente idénticos, presentado ligeras variaciones entre cada uno de
ellos.

Estudiamos el circuito divisor en función de la tensión Vr aplicada al circuito y del


valor lógico Ai que será 1 si el interruptor está cerrado y 0 si el interruptor abierto
(se aplica los conocimientos de teoría de circuitos utilizando el teorema de
superposición y divisores de tensión). Resolviendo el circuito de resistencias se
obtiene que Vout =Vr (8/15 A3 + 4/15 A2 + 2/15 A1 + 1/15 A0) = Vr/15 (8 A3 + 4
A2 + 2 A1 + A0).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 145


SISTEMAS DIGITALES

Obsérvese que si Vr = 15V, Vout toma el valor de tensión en voltios


correspondiente al número codificado en binario en voltios.

El convertidor D/A de la siguiente figura es un convertidor D/A basado en


resistencias ponderadas con amplificador en la salida.

El cálculo de la tensión analógica Vo, se realiza teniendo en cuenta que en este


circuito V- ≈ 0 (V- ≈ V+) y que la intensidad que circula por la entrada I- del
amplificador es aproximadamente 0 (suponiendo el amplificador operacional ideal).
Según esto, igualando intensidades, planteamos que -Vo/Rn = (Vr/Ro) • A3 +
(Vr/2Ro) • A2 + (Vr/4Ro) • A1 + (Vr/8Ro) • A0, donde Ai toma los valores lógicos 0
o 1. Despejando Vo = -Vr • (Rn/8Ro) • (8A3 + 4A2 + 2A1 + A0). Según esta
expresión si consideramos Rn = Ro/2, y Vr = -16V, si A = 0000 entonces, Vo = 0;
Vo = 1V si A = 0001, Vo = 2V si A=0010,…, V0 = 15V si A = 1111.

Un problema de un convertidor D/A de este tipo, es que cuando se utiliza para un


número de bits de entrada alto, doblar continuamente el valor de la resistencia
lleva a valores de resistencia muy altos que ocupan mucho espacio en un circuito
integrado.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 146


SISTEMAS DIGITALES

Además, un circuito de este tipo es muy sensible a variaciones en los valores de


las resistencias debido a los procesos de fabricación. Estas desventajas pueden
evitarse utilizando un circuito del tipo de la siguiente figura, para una entrada
digital de cuatro bits, en el que ya se ha incluido un amplificador para la salida del
circuito divisor (V-). Este convertidor D/A se denomina convertidor en escalera R-
2R.

Estudiando el circuito, calculando V- mediante la sucesiva aplicación del teorema


de Thevenin, comenzando desde el bit menos significativo A0 y siguiendo hasta el
más significativo A3 se obtiene el circuito equivalente de la siguiente figura.
Suponiendo un amplificador ideal V- ≈ 0 e I- ≈ 0, lo que implica que las
intensidades IR e IRn son iguales, se obtiene que Vo = -VrRn/16R • (8A3 + 4A2 +
2A1 + A0), con lo que Vo es una tensión analógica dependiente del valor de la
palabra binaria.

Los métodos vistos hasta ahora están basados en división del voltaje. El siguiente
método utiliza la intensidad como elemento a dividir. Este método tiene la ventaja
de ser más rápido que el basado en voltaje debido a los interruptores. En el caso
de divisores de voltaje los interruptores se realizan con transistores bipolares en
dos estados: corte o saturación, en divisores de intensidad los interruptores
estarán en dos estados: corte o zona activa directa. En el tema III se estudió que
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 147
SISTEMAS DIGITALES

sacar a un transistor de saturación es relativamente lento, por lo que es mayor el


tiempo de conmutación del interruptor en divisores de voltaje que de corriente. El
siguiente circuito es un convertidor D/A con divisor de corriente basado en la
escalera R-2R. Para estudiar este circuito se debe aplicar el teorema de Norton
desde el bit menos significativo A0 hacia el bit más significativo A3.

Al hacerlo se obtiene una expresión para Vo = I Rn/8 (8A3 + 4A2 + 2A1 + A0)

Los componentes de un convertidor D/A no son ideales, las resistencias no tienen


un valor exacto, los interruptores y los amplificadores no se comportan idealmente,
etc. Se debe medir la calidad de un convertidor D/A mediante una serie de
parámetros como son:

• Resolución: número de bits de entrada N que admite el convertidor, en función


de este número se calcula el número de tensiones analógicas posibles como
1/2N.
• Linealidad: la tensión analógica medida en la salida debe ser una función lineal
del valor digital aplicado en las entradas, es decir los incrementos de tensión
analógica para cada incremento del valor digital deben ser iguales; la linealidad
es la medida de esta propiedad.
• Precisión: diferencia entre la tensión analógica medida en la salida, y la tensión
esperada para el caso ideal.
• Tiempo de establecimiento: intervalo que transcurre desde un cambio en las
entradas hasta que la salida se aproxima suficientemente a su valor final.
• Sensibilidad a la temperatura: variación del valor de tensión en la salida en
función de la temperatura.

CONVERTIDORES A/D.
Seguidamente, estudiamos algunas estructuras básicas de convertidores
analógico digital (A/D). La primera estructura que estudiamos es el método
paralelo, basado en la utilización de comparadores analógicos y circuitos digitales

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 148


SISTEMAS DIGITALES

como los codificadores con prioridad. Un ejemplo de este método, para un


convertidor de 2 bits se muestra en la siguiente figura.

El comparador genera en su salida un valor de tensión alto (1 lógico) cuando la


tensión en la entrada V+ es mayor que en la entrada V-, en caso contrario genera
un valor de tensión bajo (0 lógico). Cuando Vi pertenece al intervalo (0, Vr/6)
ninguna de las salidas del comparador estará a 1, y por tanto ninguna de las
entradas Ii del codificador estará a ese valor lógico, luego la salida del codificador
será O1O0 = (00). Si Vi está en el intervalo (Vr/6, 3Vr/6), la salida del comparador
inferior de la figura 4 está a 1 permaneciendo los demás a 0, la salida del
codificador con prioridad será ahora O1O0 = (01), y así cuando Vi esté en el
intervalo (3Vr/6, 5Vr/6) I2 e I1 tomarán el valor 1, y las salidas tomarán el valor 10,
y cuando Vi esté en el intervalo (5Vr/6, Vr) los tres comparadores estarán a 1, y la
salida será 11.

En este método de convertidor A/D para codificar el valor digital en N bits se


requieren 2N - 1 comparadores y registros (para almacenar las salidas de los
comparadores como valores lógicos) y un codificador con prioridad para convertir
los valores almacenados en los registros. Este circuito realiza la conversión en un
único ciclo de reloj, pero requiere un elevado número de elementos en cuanto N
es alto: para N = 10 se necesitan 1023 comparadores y registros y un codificador
con prioridad de 1023 a 10; por ello, esta estructura de convertidor es irrealizable.

Otros métodos realizan la conversión A/D en varios ciclos de reloj. Existen muchos
métodos de este tipo de convertidores, en los que se utiliza un convertidor D/A
para aproximar la solución digital que se genera en cada ciclo a la solución final. El
método de convertidor contador se basa en el esquema similar al de la figura
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 149
SISTEMAS DIGITALES

siguiente, para un convertidor A/D de 3 bits (puede aumentarse la estructura para


más bits). Inicialmente el contador debe almacenar el valor 0, por lo que debe
disponer de un sistema de Reset que le lleve a ese valor de cuenta. El valor digital
del contador se convierte a un valor analógico mediante un convertidor A/D, y a
este valor se le añade mediante un circuito sumador analógico una tensión offset
que permita centrar los intervalos de valores analógicos que corresponden a un
valor digital. Este elemento debe sumar Vmax/ (2N-1)/2, donde el rango de la
tensión de entrada está entre 0 y Vmax, y N es el número de bits de salida. Para
tres bits se obtienen los intervalos (0, Vmax/14), (Vmax/14, 3Vmax/14),
(3Vmax/14, 5Vmax/14),…, (13Vmax/14Vmax, Vmax), ocho intervalos en total.

La señal de entrada Vi se compara con la señal de salida del sumador Vo que


inicialmente es Vmax/14 ya que el contador está a 0. Cuando la tensión en Vi es
mayor que en Vo, la salida del comparador está a 1, y si es menor se fija a 0.
Mientras que la salida del comparador esté a 1 el reloj llega hasta el contador, con
lo que se realiza una cuenta hacia arriba. Al contar también aumenta el valor de
Vo. El contador cuenta hasta que Vo > Vi, con lo que la salida del comparador
está a cero, el reloj no llega hasta el contador, el valor de cuenta se mantiene y se
obtiene el resultado digital de la conversión como la cuenta almacenada en el
contador. Esta misma función se puede realizar conectando directamente la salida
del comparador a una entrada de habilitación de cuenta (Count Enable), si el
contador dispone de ella, y conectando directamente la señal Clk al reloj del
contador.

En este caso se requieren al menos ocho ciclos para determinar el valor digital,
siete ciclos de cálculo del valor digital, para el cálculo del valor digital más alto en
el peor caso, más un ciclo en el que se realiza la lectura de los datos de salida y
se inicializa el contador para la siguiente lectura. Para un convertidor A/D de N bits
se necesitan al menos 2N ciclos bajo esta estructura.
Otra estructura capaz de hacer la conversión en menor tiempo es el convertidor
A/D por aproximaciones sucesivas. Este método se basa en comparar

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 150


SISTEMAS DIGITALES

sucesivamente si la medida está en el semi-intervalo superior o en el inferior del


rango de medidas posibles para así ir aproximándose al valor digital final en N
ciclos, donde N es el número de bits de salida. Se necesita al menos un ciclo más
para realizar la operación de inicialización y de lectura del valor digital (o dos si se
realizan estas operaciones por separado). Esta estructura requiere de un
convertidor D/A de N bits junto con el sumador analógico como en la estructura
anterior, un registro de N elementos (de 0 a N-1) con pesos binarios (de 20 a 2N-1),
un comparador analógico y puertas lógicas para realizar el decodificador de
siguiente estado de los registros. El proceso de cálculo del valor digital sigue estos
pasos:

1. X = N-1. Inicialización del registro N-1 a 1 lógico, el resto de registros con índice
menor que X se fija a 0 lógico.
2. Conversión del contenido de los registros en un valor analógico con el
convertidor D/A.
3. Comparar el valor de la salida del convertidor D/A con el valor de entrada Vi. Si
Vi es menor se fija a 0 el registro X, en caso contrario se mantiene a 1.
4. X = X-1 (siguiente registro de mayor a menor peso). Mientras que queden
registros por estudiar (X >= 0), fijar el registro X a 1 y volver al paso 2.
5. Finalizado el proceso los registros contienen la codificación binaria del valor
analógico Vi.

Para un convertidor A/D de tres bits, la evolución del contenido de los registros es
el indicado en la siguiente figura, donde C es la salida del comparador analógico.
Como se observa en la figura se requieren cuatro ciclos, los tres primeros o
superiores corresponden a los valores por los que pasa el registro durante el
cálculo del valor digital, y cuya evolución depende del valor en la salida del
comparador analógico. El cuarto ciclo corresponde a la lectura del resultado final,
y al recomienzo del proceso de conversión.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 151


SISTEMAS DIGITALES

Un convertidor A/D de N bits para esta estructura se muestra en la figura. Como


hecho relevante se usa un convertidor de ciclo N + 1 (por ejemplo un contador en
anillo) para determinar el ciclo de operación y realizar la operación de inicialización
y lectura de datos. El decodificador del siguiente estado debe realizarse sabiendo
que en el ciclo N+1 (indicado por el contador) el registro debe cargarse al valor
inicial (bit N-1 a 1, y el resto de los bits a 0), en caso contrario la evolución
dependerá del valor de la salida del comparador.

Un convertidor A/D será descrito por un conjunto de especificaciones como son:

• Tensión analógica de entrada: máximo margen permisible de tensión a la


entrada.
• Precisión: margen de error en la entrada debido a todas las posibles fuentes de
error.
• Impedancia de entrada.
• Tiempo de conversión.
• Formato: tipo de codificación binaria del resultado.

Como se ha visto la conversión A/D se realiza en varios ciclos en los que debe
mantenerse constante el valor en la entrada analógica Vi del convertidor. Para
evitar fluctuaciones en la señal de entrada los convertidores A/D necesitan
además circuitos analógicos de muestreo y mantenimiento (sample and hold). El
proceso de toma de medidas en un sistema debe realizarse a una frecuencia de
muestreo determinada dada por el teorema de muestreo (1/s fm, donde fm es la
frecuencia mayor de la señal en su componente espectral). La señal analógica
muestreada se convierte a una señal digital, que es procesada mediante un
circuito digital y vuelta a convertir a un valor analógico.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 152


SISTEMAS DIGITALES

EJERCICIOS Y PREGUNTAS DE REPASO E INVESTIGACIÓN

• DIAGRAMAS DE CIRCUITOS CON EL CI 555:

1) Luces con velocidad variable: El siguiente circuito cuenta con dos diodos led
que se iluminaran alternadamente uno durante el estado alto y el otro durante el
estado bajo, la velocidad de estos destellos está determinado por el
potenciómetro R5 y cómo se puede deducir el integrado está conectado en
modo astable. Los diodos leds se pueden sustituir por otros componentes para
realizar una interface y conectar elementos de potencia.

2) Temporizador ajustable: En este circuito se mantiene encendido el diodo led


D1 por un tiempo determinado y el cual se controla con el potenciómetro R4. En
la parte inferior del diagrama aparece una interface para poder controlar
elementos de mayor potencia.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 153


SISTEMAS DIGITALES

3) Control de velocidad de un motor de corriente continua: Este circuito ajusta


la duración del pulso a un valor mínimo haciendo que en la velocidad menor la
tensión aplicada al motor sea máxima y por tanto la corriente también
manteniendo el torque. La velocidad aumenta conforme aumenta el ancho del
pulso. Una de las principales características es la facilidad con que vence la
inercia del motor ya que el potenciómetro P1 posee dos secciones y mientras
una baja la resistencia la otra aumenta y la resistencia total se mantiene muy
constante. El transistor Q1 se encarga de controlar la corriente aplicada al
motor, la alimentación puede ser de 6V a 12V, el capacitor C1 determina la
duración mínima de los pulsos y la banda media de frecuencia no se
recomiendan valores muy bajo ni muy altos se debe experimentar con
capacitores en la banda de 470nF a 2,2µF.

4) Generador de efectos especiales: Este circuito simula una baliza de luces en


vaivén como las del auto fantástico, consta de dos integrados el 555 y el 4017
los dos de uso muy común. La configuración del 555 hará que funcione como
generador de pulsos los cuales determinan la velocidad del efecto, su velocidad
puede ser variada por medio del potenciómetro P1 de 1MΩ, el 4017 funciona
como una matriz de diodos y se encarga de programar el efecto. Los
transistores de Q1 a Q5 permiten la excitación directa de lámparas de 12V y
40W por lo que se les debe colocar disipadores de calor.

Los materiales son:


R1 y R2=10KΩ
P1=1MΩ
R3 a R7=100Ω
C1=1µF x 50V electrolítico
C2=0.1µF cerámico

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 154


SISTEMAS DIGITALES

D1 a D6= diodos 1N4148


CI1= Circuito integrado NE555
CI2= Circuito integrado CD4017
La= Lámparas 12V x 40W
Tr1 a Tr5= Transistor 2N3055 NPN de potencia

5) Vúmetro programable: Consiste en un efecto de luces que encienden al ritmo


de la música, la velocidad de encendido de las luces y la velocidad de
corrimiento se puede controlar por medio de potenciómetros. Q1 y Q2 se
encargan de amplificar la señal de audio que luego pasa por una serie de
diodos que fija diferentes umbrales para el disparo de los transistores Q3 a Q7.
El 555 es utilizado como un temporizador que produce un tren de pulsos que se
aplica a un contador (CD4017) para ofrecer el potencial necesario para cada fila
de leds de acuerdo a los pulsos del 555 y la potencia del sonido aplicado al
potenciómetro P1.

Materiales:
Q1= BD139 Transistor NPN de potencia.
Q2= TIP29C Transistor NPN de potencia.
Q3 a Q15= BC548 Transistor NPN de uso general.
L1 a L48= Leds de 5mm color rojo.
D1 a D6= 1N4148 diodos de uso general.
P1= Pre-set de 2,2KΩ
P2= Pre-set de 1MΩ
R1= 1KΩ
R1 a R6= 12KΩ

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 155


SISTEMAS DIGITALES

R7= 220Ω
R8 a R21= 470Ω
R22 a R29= 1KΩ
R30= 1,5KΩ
R31= 4,7KΩ
C1= 22µF capacitor electrolítico x 16V.
C1= 100nF capacitor cerámico.
C1= 10nF capacitor cerámico.
CI1= CA555
CI2= CD4017 contador CMOS
Interruptor simple

6) Generador de diente de sierra: Cuando el temporizador 555 monoestable


inicia un disparo, la fuente de corriente PNP fuerza una corriente de carga
constante en el capacitor, por lo tanto el voltaje en el mismo es una rampa
lineal.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 156


SISTEMAS DIGITALES

7) Detector de humedad: Este circuito se encarga de censar la cantidad de


humedad que existe alrededor de la planta, entre mayor sea la humedad más
rápido será el destello del diodo led, si no existe humedad este no destella. Las
puntas del circuito deben estar en el suelo cerca de la planta y deben ser de un
material conductor.

8) Detector de luz: Este circuito detecta la luz que incide sobre la foto resistencia
LDR, cuando el circuito integrado 555 se enciende produce un sonido audible a
través de un parlante (altavoz). La patilla número 4 debe mantenerse por debajo
de 0.7V para que no se active el circuito, la sensibilidad del circuito se puede
ajustar con el potenciómetro de 100KΩ pues a mayor resistencia menor deberá
ser la luz que necesite para activarse.

9) Temporizador en serie: Si se conectan 3 temporizadores 555 en cascada cada


uno con salida a un diodo led se produce un destello secuencial en donde la
duración se puede ajustar individualmente. El tiempo se puede variar por medio
de los condensadores C1, C3 y C5; también, se puede sustituir R1, R3 y R5 por

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 157


SISTEMAS DIGITALES

potenciómetros esto en el caso de que se utilicen condensadores con el mismo


valor para los tres temporizadores.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 158


SISTEMAS DIGITALES

TAREA 3: IMPLEMENTA CIRCUITOS DIGITALES PROGRAMABLES.

En esta tarea se realiza una introducción a la implementación de sistemas


digitales basados en microcontroladores, de modo que el estudiante obtenga
nociones del funcionamiento de un sistema digital programable. Además se realiza
la implementación de diversos proyectos electrónicos que permitirán desarrollar la
habilidad de construir sistemas electrónicos útiles. En esta tarea se realiza la
operación: Entiende e implementa circuitos digitales programables.

EQUIPOS Y MATERIALES:
• Dispositivos y componentes propios de cada proyecto.
• Fuente de alimentación regulada de 5V (puede reemplazarse con porta pila, pila
de 9V, regulador de voltaje 7805).
• Computadora con microprocesador Core I3 o superior.
• Sistema operativo Windows.
• Software de simulación electrónica.

3.1. OPERACIÓN: ENTIENDE E IMPLEMENTA CIRCUITOS DIGITALES


PROGRAMABLES.

• PROYECTOS CON MICROCONTROLADORES: Se indica como ejemplo


demostrativo dos sistemas digitales con el microcontrolador PIC 16FX84, en
clase se puede emplear cualquier otro sistema con este microcontrolador u otro
microcontrolador.

Proyecto N° 1: Conexión de LED y dipswitch:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 159


SISTEMAS DIGITALES

Como un ejercicio práctico que introduzca de manera


rápida y sencilla en el manejo de los microcontroladores
PIC, se va a realizar un montaje simple, el cual consiste
en conectar cuatro interruptores (dipswitch) como
entradas del microcontrolador y cuatro LED como
salidas. El programa que se escriba se debe encargar
de verificar el estado de los dipswitch y de acuerdo a
este, encender los LED. Este ejemplo aunque es muy
simple, es fundamental para ejercitar el manejo de los
puertos. La figura siguiente muestra el diagrama
esquemático del circuito.

Debe notarse que los interruptores tienen resistencias


conectadas a la fuente de alimentación, estas sirven
para fijar un nivel alto cuando el dipswitch no está
haciendo contacto. En este caso, cuando no se
encuentra cerrado ningún interruptor el microcontrolador
lee “unos” y cuando alguno se encuentre cerrado se
leerá un “cero”.
Por otra parte, para encender los LED se utiliza un
circuito integrado ULN2803, el cual tiene un conjunto de
transistores que invierten el pulso y amplifican la corriente. Por lo tanto, el pulso
para encender un LED debe ser positivo.

Dado lo anterior, cuando se lee el estado de los dipswitch se debe invertir el valor
leído, para asegurarse que el interruptor que esté cerrado se convierta en una
señal positiva para encender el LED correspondiente.

En la figura se muestra el diagrama de flujo correspondiente al ejercicio, en la


página siguiente se muestra el programa respectivo.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 160


SISTEMAS DIGITALES

Proyecto N° 2: Manejo de un display de siete segmentos.


Los displays de siete segmentos son un elemento muy útil en el diseño de
aparatos electrónicos, por ejemplo, cuando se requiere visualizar el dato
proveniente de un conteo, de una temporización, el estado de una máquina, etc. El
ejercicio que se va a realizar consiste en hacer un contador decimal (de 0 a 9), el
cual lleva el conteo del número de veces que se oprime una tecla (pulsador). Para
manejar el display se utiliza un decodificador 9368, que es compatible con el
tradicional 7448, pero decodifica de binario a hexadecimal, es decir que puede
mostrar los caracteres de la A hasta F. En el ejercicio el microcontrolador debe

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 161


SISTEMAS DIGITALES

encargarse de verificar cuando el conteo llega a 9 para empezar nuevamente en


0.

El display utilizado es de cátodo común, para aumentar


su visibilidad se conecta un transistor NPN que le
entrega una buena corriente.

En la figura anterior se muestra el diagrama


correspondiente, en la figura siguiente el diagrama de
flujo y en la figura de la página siguiente el programa
que realiza el control de las funciones.

Nota: Si se usa el decodificador 7448 en lugar del 9368,


el pin 3 se debe dejar al aire.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 162


SISTEMAS DIGITALES

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 163


SISTEMAS DIGITALES

• PROYECTOS ELECTRÓNICOS: Se implementaran proyectos electrónicos


diversos, el estudiante puede elegir uno o más proyectos de manera personal
(el instructor determinara los que considere sean necesarios de acuerdo a su
complejidad). A continuación se colocan como referencia algunos proyectos
que se pueden tomar en cuenta.

1. PROYECTO 1: VUMETRO CON LEDS.
Para este proyecto estudiaremos los circuitos integrados LM3914 y el LM3915
que aunque las conexiones son iguales, el comportamiento no, debido a que la
escala de LM3914 es lineal y la escala del LM3915 es logarítmica. Con una
escala lineal podemos hacer que los leds se enciendan cada voltio, con la
logarítmica no, ya que está diseñada para audio, en decibeles. Utilizando
alguno de estos integrados en la conexión más básica obtenemos estas
diferencias:

Voltaje necesario en la entrada para encender cada led: Se muestra en la


siguiente tabla.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 164


SISTEMAS DIGITALES

LM 3914 LM 3915
LED

125 mV 60 mV
1
250 mV 80 mV
2
375 mV 110 mV
3
500 mV 160 mV
4
625 mV 220 mV
5
750 mV 320 mV
6
875 mV 440 mV
7
1V 630 mV
8
1.125 V 890 mV
9
1.25 V 1.25 V
10

Conexión básica del LM3914 y el LM3915:

Si es para equipo de medición es mejor el LM3914, pero si es como "Vúmetro" se


ve mejor el LM3915 aunque los dos funcionan. El pin 9 es el que determina el
modo, conectado al positivo trabaja en el modo tradicional o "Barra", si el pin 9 se
conecta al pin 11 se activa el modo "Punto", o sea led por led. Estos circuitos
integrados pueden operar de 3 a 20 voltios. Para ayudar a la estabilidad se puede

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 165


SISTEMAS DIGITALES

colocar un capacitor electrolítico entre positivo y


negativo, cerca del circuito integrado, según el fabricante
con 2.2 microfaradios es suficiente, puede ser mayor (en
el ejemplo 10 microfaradios 25 Voltios).

Para aplicaciones electrónicas prácticas, donde se debe


ajustar podemos agregar una resistencia variable o
potenciómetro en la entrada y si es con audio mejor
colocar un capacitor de 1 microfaradio o un poco más.
Conexiones del potenciómetro o resistencia variable:

Cada salida de estos circuitos integrados controla la corriente, por ello no es


necesario colocar alguna resistencia limitando la corriente, además se pueden
conectar leds en serie en cada salida para lograr un efecto de mejor presencia.

El LM3914 es equivalente al NTE1508 y el LM3915 al NTE1509. Estos circuitos


integrados son muy rápidos para responder al sonido por ello en modo punto
puede ser que parezca que no funciona como debiera, para que el efecto sea más
agradable hay que rectificar el audio, y si lo usamos con audio puro hay que
amplificarlo con algún amplificador operacional.

Ejemplo de amplificador y rectificador de audio:

Los diodos (D1 y D2) son mejor de germanio (bigote de gato), pero se puede usar
1n4148.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 166


SISTEMAS DIGITALES

2. PROYECTO 2: INDICADOR DEL NIVEL DE SONIDO CON 5 LEDS. (VU


METER).

En este proyecto veremos cómo hacer indicadores de leds para conectar a


nuestros equipos de audio, computadora, o a un micrófono para que se iluminen
los leds con el sonido de nuestra habitación.

Primero para estos proyectos se muestran los circuitos integrados más comunes y
como conectarlos. Algunos circuitos integrados son bastante comunes como
BA6124, KA2284, que son equivalentes al NTE1561.

Diagrama de conexiones del BA6124 o equivalente:

Este circuito integrado puede funcionar desde algo menos de 4 voltios hasta 16
voltios.

R1 puede ser de 10K a 20K, C1 de 2 a 10 MicroFaradios.

R2 es una resistencia variable de 20K, puede usarse de 10K a 50K.

El Led que se ilumina primero es el conectado al pin 1.

Los leds se conectan sin resistencia porque el circuito integrado tiene un limitador
de corriente en cada salida (aproximadamente 15 mA).

Dibujo de conexiones del BA6124 o similar:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 167


SISTEMAS DIGITALES

Si es para adornar se pueden utilizar 2 leds por cada salida o más, se ve igual que
los de 10 leds que son menos comunes. Los led se conectan en serie:

Además se puede agregar un preamplificador y micrófono para que se iluminen


con el sonido ambiente.

Diagrama del preamplificador con un micrófono eléctrico:

R1 puede ser de 3.3k en 6 voltios a 6.8k en 12 voltios.


C1 puede ser de 0.1 microFaradio o más.
Mic es un micrófono electrónico (Electret Mic).
Q1 es un transistor de audio, puede ser un C945, C458 o equivalente.
C3 es de .001 microfaradios, si desea dar énfasis a los bajos puede ser más alto.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 168


SISTEMAS DIGITALES

R3 puede ser de 330K en 6 voltios, hasta 1M en 12 Voltios.


R4 es de 10k, puede ser menor en 6 voltios.
R5 es de 1000 ohmios (1K).
C2 y R2 pertenecen al circuito del control de luces BA6124.
Con R2 ajustamos el nivel donde se muevan mejor los led con el sonido.
Con los valores del ejemplo en el dibujo siguiente puede funcionar bien desde los
6 a 12 voltios:

Este circuito integrado es muy sencillo y no tiene pines de ajuste, de una forma
normal no se pueden conectar en serie y está diseñado para medir audio, y por
eso es logarítmico.

El primer led se ilumina en -10dB, el segundo en -5dB, el tercero en 0dB (50mv),


el cuarto led en 3db y el quinto led en 6dB.

Para equipos de medición (indicador voltio a voltio, etc.) se utilizan los circuitos
integrados Lineales.

También existen circuitos integrados a los que se les puede ajustar el voltaje de
referencia y con ello conectar varios en serie.

3. PROYECTO 3: PROYECTO: AMPLIFICADORES DE AUDIO DE BAJA


POTENCIA.

Existen multitud de amplificadores de baja potencia utilizando circuitos integrados,


se va a mostrar algunos bastante comunes, fáciles de hacer y generalmente de
bajo costo. La mayoría de estos amplificadores son utilizados por televisores,
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 169
SISTEMAS DIGITALES

equipos de prueba y medición, modem viejos, etc. En la actualidad se habla de


equipos de sonido de "10000 Watts PMPO" o más. Entonces alguien puede
pensar que un amplificador de 20 vatios por canal es de baja potencia cuando en
realidad no es así, porque aquí hablamos de potencia real o RMS. Y deben saber
que PMPO no es una medida electrónica real. Los proyectos de amplificadores de
baja potencia son de 1W, 2W o bien menos de 10 vatios.

• Amplificador LM380N 2,5W.


Muy utilizado en televisores, radios de comunicación, equipos de medición,
modem, etc.

Diagrama del amplificador con LM380N:

Este circuito integrado es muy flexible para el voltaje, según el fabricante funciona
bien de 10 a 22 voltios, entregando una potencia de hasta 2.5 vatios. Yo lo utilizo
en proyectos para 12 voltios.

Dibujo de conexiones del LM380:

Amplificador LM386 <1W


Este amplificador es similar al LM380 pero es de mucha menos potencia, llegando
a 1 vatio el LM386N-4, el voltaje de operación va de 4 a 12 voltios (LM386N-1,
LM386N-3, LM386M-1, LM386MM-1) o de 5 a 18 voltios el LM386N-4.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 170


SISTEMAS DIGITALES

Diagrama del amplificador con LM386:

La ganancia de este amplificador se ajusta entre los pines 1 y 8


desconectados aproximadamente 26dB, y con un capacitor electrolítico entre las
puntas hasta 46dB. (10uF, positivo pin1).

Dibujo de conexiones del LM386:

La mayoría de las versiones del LM386 son del orden de 125 mW.
Usado bastante como amplificador para audífono o como salida en indicadores de
error, tonos de alerta y "buzzer".

Circuito integrado TDA7235 de 1,25 a 4W.


El TDA7235 es bastante utilizado en televisores, con disipador de calor puede
usarse como amplificador de 4 vatios.

El voltaje es sorprendentemente flexible, puede usarse desde 1.8 voltios a 24.

Dibujo de conexiones del TDA7235:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 171


SISTEMAS DIGITALES

Circuito integrado TDA7267 de 2W.


El TDA7267 es diseñado especialmente para televisores, con ganancia
preajustada a 32dB.

Aunque el voltaje no es tan flexible como el anterior, puede trabajar desde 4.5V
hasta los 18V.

Con el pin 3 (SVR) a tierra el circuito integrado queda en reposo (stand-by)

Dibujo de conexiones del TDA7267:

Circuito integrado TDA2822M Estereo de 8 Pines.


Este circuito integrado además de lo versátil con la alimentación (1.8V a 15V), es
doble (estéreo). Siendo el ideal para proyectos o aplicaciones portables, tratando
de no superar 1 vatio por canal.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 172


SISTEMAS DIGITALES

Dibujo de conexiones del TDA2822M:

El amplificador UTC2822H y El TDA2822M son exactamente iguales en


conexiones y la única diferencia encontrada es que el UTC2822H puede trabajar
de 1.8V a 6V, y soporta máximo 9 voltios. También está el TDA2822 que es de 16
pines.

Circuito integrado TDA2822 de 16 pines.


Este circuito integrado puede utilizarse de 3 a 15 Voltios, puede manejar un
máximo de 4 vatios (2W x 2) con disipador de calor. Las características
electrónicas son similares al amplificador TDA2822M de 8 pines, pero utilizado
desde 3 voltios.

Dibujo de conexiones del TDA2822 de 16 pines:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 173


SISTEMAS DIGITALES

Tanto para este amplificador TDA2822 como para todos los demás debemos
tomar en cuenta una buena conexión de tierras para evitar oscilaciones que
puedan dañarlos o producir ruidos indeseados. También utilizar una fuente de
alimentación con el filtraje adecuado para evitar zumbidos, inestabilidad o
distorsión.

Amplificador TDA7052. 1W BTL.


Lo especial de este amplificador es que prácticamente no lleva componentes
externos, puede utilizarse de 3 a 18 Voltios y puede manejar un máximo de 1.2
vatios. La ganancia de amplificación es de 39dB.

La salida es en puente (BTL) lo que puede lograr desarrollar su potencia con bajos
voltajes. La alimentación recomendada es 6V con altavoces de 8 ohmios. Algunos
televisores que lo utilizan con 12 voltios utilizan altavoces de 32 ohmios.
Dibujo de conexiones del TDA7052:

Los pines 4 y 7 no están conectados internamente, por ello en algunos diseños se


conecta a tierra (negativo).

Aunque son amplificadores de baja potencia, no hay que olvidar utilizar una fuente
de alimentación con el filtraje adecuado, para evitar ruidos no deseados, además
de la correcta conexión de tierras.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 174


SISTEMAS DIGITALES

FUNDAMENTO TEÓRICO:

SISTEMAS MICRO PROGRAMABLES.

Un sistema micro programable es un sistema electrónico digital formado por uno o


varios chips integrados capaces de interpretar y ejecutar secuencialmente las
órdenes contenidas en un programa y a una velocidad muy elevada.

Entre las aplicaciones más importantes podemos destacar:

• Realizar cálculos matemáticos o aplicaciones informáticas, como podemos


observar en las computadoras, que son sistemas micro programables basados
en los microprocesadores.
• Controlar procesos industriales de seguridad o producción, como en el caso de
autómatas programables que controlan robots y cadenas de montaje que
poseen microcontroladores.
• Controlar el funcionamiento de aparatos domésticos, como: microondas,
lavadoras, que se encuentran controladas por microprocesadores y o
microcontroladores.

Hardware y software.
Todos los conocimientos y conceptos relacionados con el sistema micro
programable se agrupan en tres, que son los siguientes:

• Hardware: Son todos los circuitos y componentes electrónicos que componen


el sistema.
• Software: Conjunto de instrucciones y rutinas con que se programa el sistema,
así como todo lo referente a los lenguajes empleados.
• Firmware: Es un término intermedio y se define como el conjunto de programas
de un sistema micro programable grabados sobre un hardware pero inalterables
por el usuario. El ejemplo más sencillo es la memoria ROM-BIOS en las
computadoras.

CLASIFICACIÓN:

COMPUTADORAS PERSONALES: Son sistemas micro programable que utilizan


un chip microprocesador. Están destinados a los procesos informáticos, aunque
añadiéndoles los sistemas de control externo adecuados, son capaces de
controlar procesos o máquina industrial.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 175


SISTEMAS DIGITALES

AUTÓMATAS PROGRAMABLES: Son sistemas micro programables basados en


un microcontrolador al que se le añaden sistemas de control de potencia tales
como contactores o relés. Están destinados al control de maquinaria industrial y
automatización.

PEQUEÑOS AUTOMATISMOS Y ELECTRODOMÉSTICOS: Son sistemas


gobernados por microprocesadores, microcontroladores o dispositivos lógicos
programables (PLD), destinados a controlar electrodomésticos, rótulos luminosos,
calculadoras programables, pequeños sistemas de alarmas y cualquier otro
sistema que se pueda asociar a estos elementos.

Unidad Central de Proceso: Su estructura es la de un circuito integrado LSI que


posee en su interior entre otros elementos:

• Unidad de decodificación e interpretación.


• Unidad aritmética lógica.
• Un contador de programa.
• Registros de almacenamiento.

La CPU controla por medio de instrucciones que decodifica e interpreta a las


memorias, a la unidad de entrada y salida I/O y a través de esta última a los
periféricos y sistemas de control externo.

Reloj: La CPU genera los impulsos de control de los bloques restantes, partiendo
de las señales de onda cuadradas suministradas por un generador de funciones

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 176


SISTEMAS DIGITALES

llamado reloj. La frecuencia del reloj determina la velocidad de operación y


funcionamiento de la CPU y de todo en general.

Buses: Se definen como el conjunto de grupos de hilos que transportan


información del mismo tipio y que sirven para realizar la comunicación entre los
diferentes bloques del sistema. Existen tres tipos de buses, en dos de los cuales el
número de hilos está en función del número de bits de la palabra binaria con la
que trabaja el sistema.

• Bus de datos (Data Bus): Es el destinado a transportar los datos entre los
diferentes bloques. Su número de hilos es igual a la longitud de la palabra.
• Bus de direcciones (Address Bus): Su misión es transmitir al bloque
correspondiente la dirección con la que va a trabajar la CPU. El número de
líneas determina la capacidad de la memoria. El número de direcciones de
memoria que es capaz de controlar un microprocesador mediante su bus de
direcciones, se obtiene:
Nº de direcciones de memorias o palabras = a la base binaria 2, elevada al
número de líneas del bus de direcciones.
Así por ejemplo, un micro de 8 bits posee 16 líneas luego = a 65.536 posiciones
o bits = 64 Kb.
• Bus de control (Control Bus): El micro utiliza un número de líneas para enviar
o recibir órdenes que realizan fines diversos, como R/W*, RESET, líneas de
interrupción, Entrada de programación, etc.

Circuitos de selección de Chips: Es un conjunto de elementos decodificadores y


multiplexores que tienen la finalidad de obtener las señales de autorización de
cada bloque del sistema, evitando que el bloque de bus de direcciones tenga que
llegar a todo el sistema

Unidad de entrada y salida (I/O): Todo sistema de desarrollo de microprocesador


necesita comunicarse con el exterior, ya sea para recibir o llevar información.

Estos dispositivos constituyen la frontera (interface) entre los circuitos internos y


los externos.

La necesidad de emplear circuitos específicos viene impuesta por la diferencia de


las señales empleadas en el interior y exterior del sistema:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 177


SISTEMAS DIGITALES

Diferente frecuencia de trabajo: El microprocesador y las memorias trabajan a


frecuencias muy superiores al megahercio, mientras que los periféricos y
receptores rara vez superan los kilohercios.

Diferencias en los códigos binarios de trabajo: Esto hace que tengamos que
trabajar con convertidores de códigos.

En algunos casos, las interfaces o unidades de entrada y salida son circuitos cuya
complejidad puede llevar a superar la de algunos microprocesadores.

Independientemente de su complejidad interna, además posee como mínimo


estos elementos:

Registros de entrada y registro de salida.


El primero es un registro cuyo número de bits es igual al de la palabra utilizada y
cuya carga está controlada por un conjunto de interruptores electrónicos
gobernados por la CPU. Se le denomina puerto de entrada. La información que se
envía desde los periféricos al puerto sólo se almacena cuando la CPU lo autorice.

El segundo, el registro de salida, es un registro de almacenamiento de información


de longitud igual al de la palabra utilizada. Lo llamaremos puerto de salida.

Periféricos.
Podemos distinguir dos tipos de funciones: Periféricos de comunicación entre el
sistema y el usuario y periféricos de almacenamiento masivo de la información.

Periféricos de comunicación:

Teclado (Keyboard) Periférico de entrada, sirve para introducir datos mediante


teclas y están adaptadas en función del tipo de lenguaje empleado en la
programación:

• Teclados hexadecimales para programar en lenguaje máquina.


• Teclados alfanuméricos, para programación en alto nivel.
• Teclados especiales, con teclas de funciones específicas.

Pantallas y displays. Son los periféricos de salida más usuales, junto con las
impresoras, por ejemplo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 178


SISTEMAS DIGITALES

Monitores de televisión (CTR), Cristal líquido (LCD), Visualizadores de tipo


matricial de 7 segmentos, etc.

Impresora. Periférico de salida básico, especializado en la producción de informes


en formato papel, los más importantes los de inyección de tinta y láser.

Interfaces de comunicación de E/S. son dispositivos periféricos que no deben


confundirse con las unidades (I/O) que sirve para intercomunicar sistemas micro
programable separado y serían:

• Interface RS-232 para comunicación serie.


• Interface Centronics para comunicación paralelo.
• Interface USB de comunicación universal.

Conviene citar en este apartado uno de los elementos utilizados en la


comunicación E/S y sería la puerta triestado. Corresponde a un circuito como el
que se cita a continuación, en el que si a la entrada de control le aplicamos un uno
la información pasa, independientemente si la niega o no. En el caso de que esa
información de control sea un cero no existe comunicación ya que se crea un
estado de alta impedancia, equivalente a un interruptor abierto.

CS =0 las puertas AND aplican señal baja a las bases de los transistores => alta
impedancia, equivale a una desconexión real.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 179


SISTEMAS DIGITALES

CS=1 Es lógico comprobar que las puertas transmiten señales opuestas a los
transistores con lo cual, en un caso obtendremos un “1” y en otro caso
obtendremos un “0”.

Módem. Es un interface que permite la comunicación serie a distancia, por medio


de redes telefónicas o redes inalámbricas.

Periféricos de almacenamiento.

Unidades de disco magnético. Esta clase de periférico emplea un soporte plano


y circular recubierto de un material magnético donde se almacena la información:
Disco duro (hard disk), Disco flexible (floppy disk).

Unidades de disco óptico. Soporte plano circular de policarbonato, donde se


almacena la información) recubierto de una capa de aluminio que actúa como
espejo: CD-ROM y DVD.

Unidades de memoria flexible. Están fabricadas con memoria tipo Flash y SD


(variedad de memoria RAM) que posee un conector USB. Pendrive y Tarjeta.

Sistemas de control externo.


Constituyen un conjunto de circuitos que sirven para realizar la comunicación entre
el sistema micro programable y los procesos industriales o máquinas por él
controlado.

• Transductores y sensores.
• Convertidores A/D, D/A, V/I, etc.
• Componentes de conmutación y potencia: relés, tiristores, contactores, etc.
• Circuitos de amplificación.

Módem. Es un interface que permite la comunicación serie a distancia, por medio


de redes telefónicas o redes inalámbricas.

Periféricos de almacenamiento.
Unidades de disco magnético. Esta clase de periférico emplea un soporte plano y
circular recubierto de un material magnético donde se almacena la información -
Disco duro (hard disk).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 180


SISTEMAS DIGITALES

Unidades de disco óptico. Soporte plano circular de policarbonato, donde se


almacena la información) recubierto de una capa de aluminio que actúa como
espejo: CD-ROM y DVD Unidades de memoria flexible. Están fabricadas con
memoria tipo Flash y SD (variedad de memoria RAM) que posee un conector
USB. Pendrive y Tarjeta.

Sistemas de control externo.


Constituyen un conjunto de circuitos que sirven para realizar la comunicación entre
el sistema micro programable y los procesos industriales o máquinas por él
controlado.

• Transductores y sensores.
• Convertidores A/D, D/A, V/I, etc.
• Componentes de conmutación y potencia: relés, tiristores, contactores, etc.
• Circuitos de amplificación.

MEMORIAS.
Antes de entrar a analizar las distintas memorias, volvemos a citar cierta
clasificación de ellas.

Memorias centrales: Son las que se encuentran en el interior de los sistemas


micros programables y están directamente regidas por la CPU. En ellas se
almacenan los sistemas operativos, las tablas de datos, el programa de usuario
que se encuentra en ejecución y los datos de la pila de memoria, según su
principio de funcionamiento existen los siguientes tipos:

• Memorias de núcleo de ferrita. Fue el primer tipo de memoria empleado, hoy en


desuso. Formadas por núcleos toroidales de algunas décimas de milímetro de
diámetro recorridos por tres hilos, dos de selección y uno de lectura.
• Memorias integradas. Son las únicas empleadas actualmente. Se clasifican en:
- Memorias de lectura y escritura, o memorias RAM.
- Memorias de sólo lectura o memorias ROM.

Memorias masa: Son las unidades de memoria de más alta capacidad que
existen y están situadas en los periféricos. Su función es almacenar grandes
cantidades de datos, así como los programas de usuario y el sistema operativo
cuando no están en ejecución. Las memorias más importantes hoy día son:

• Memorias en disco duro.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 181


SISTEMAS DIGITALES

• Memorias en disco óptico: CD-ROM, DVD, Blue ray.


• Memorias integradas extraíbles: Pen Drive y SD.

CLASIFICACIÓN DE LAS MEMORIAS INTEGRADAS.

Memorias RAM: Las siglas RAM significan memoria de acceso aleatorio (Random
Acces Memory). Son memorias volátiles, en las que se puede leer y escribir

Tipos:
RAM estáticas o SRAM: Las celdas de memoria o de almacenamiento están
formadas por flip-flops, que permanecen indefinidamente en su estado mientras no
se elimine la alimentación o se haga bascular.

RAM dinámicas o DRAM: Las celdas de almacenamiento están formadas por


pequeños condensadores que almacenan la información (Tecnología CMOS).
Tienen el defecto de que por inevitables corrientes de fuga pierden la información.
Por tal motivo se requiere de un circuito de refresco (proceso de reescritura
periódico) que restablezca la información. El tiempo típico de refresco de 2
milisegundos. Este proceso requiere un tiempo y una mayor complejidad de
hardware, es decir la memoria dinámica no está disponible en todo momento para
ser leída o escrita, ya que el proceso de recarga no es instantáneo. Por el
contrario la DRAM ofrece la ventaja de un mayor número de bits por chip, lo que
redunda en un precio más bajo y en unas dimensiones de montaje más pequeñas,
sin olvidar que el circuito de refresco encarece un poco el conjunto.

RAM con pila. Este tipo de memorias es no volátil, es decir no pierden la


información al ser desconectadas, se trata de una memoria RAM CMOS que lleva
incorporada en su encapsulado una pequeña batería de litio que asegura una
estabilidad de los datos durante diez años, con el chip extraído del circuito, en
lugar de ellas hoy se utilizan las EEPROM, que estudiaremos a continuación.

Memorias ROM. Las siglas ROM significan, memorias de sólo lectura (Read Only
Memory) Son memorias no volátiles, en las que sólo se puede leer, ya que su
proceso de grabado es más complejo y se realiza normalmente fuera del sistema.
Según la forma en que se procede a grabar los datos, se dividen a su vez en los
tipos siguientes:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 182


SISTEMAS DIGITALES

• ROM (programable por máscara). Los datos se graban en la memoria durante


su proceso de fabricación. Proceso fotolitográfico. Evidentemente estos datos
son indelebles y nunca se podrán borrar o cambiar.
• PROM. (Rom programable) Grabadas o programadas por el usuario una sola
vez. El fabricante las suministra en estado virgen, con tos sus bits puestos a “0”
o a “1”, según los tipos. El proceso de grabación se hace mediante un equipo
programador de PROM que produce fusiones de carácter irreversible de
acuerdo con los datos que se pretende grabar.
• EPROM (ROM borrable y programable) Son similares a las PROM, pero el
proceso de grabación no es destructivo. Los datos se almacenan induciendo
cargas en electrodos de silicio poli cristalino completamente aislados en el seno
de una capa de óxido de silicio. La grabación se realiza mediante un
programador de EPROM y a partir de ese momento los datos permanecen
inalterables. Cuando se requiera borrar los datos, la devolvemos a su estado
original mediante la acción de rayos ultravioletas a través de una ventana
dispuesta a tal fin. El número de ciclos de borrado-grabado es limitado ya que el
proceso produce una cierta degradación de los datos.
• EEPROM (ROM, borrables eléctricamente). Son las memorias que logran el
ideal de alcanzar una memoria de lectura-escritura que no pierde su contenido
al cortar la alimentación. Estas memorias pueden alterar su contenido sobre el
montaje definitivo sin necesidad de extraer el chip y sin utilizar una
instrumentación específica.

Tener en cuenta los siguientes términos: EAROM (ROM (alterable


eléctricamente) y EEPROM ((ROM borrable eléctricamente)

Resumen de las características DRAM.


• La capacidad de almacenamiento de los chips de memoria DRAM es, a
igualdad de tamaño, superior a la de los chips de memoria SRAM.
• El consumo de las memorias DRAM es considerablemente superior al de las
RAM.
• La adaptación de las memorias DRAM a los sistemas basados en
microprocesadores es más complicada que la adaptación de memorias SRAM,
dado que las primeras obligan a la incorporación de la adecuada lógica de
refresco.

Evolución de las memorias DRAM.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 183


SISTEMAS DIGITALES

• Memoria FPM RAM (Fast Page Mode RAM) Memoria DRAM diseñada para
trabajar en modo página, es decir, para accesos a bloques de memoria
consecutivo.
• Memorias EDO RAM (Extended Data Out RAM) Son una variante de las
anteriores que mediante la utilización de un búfer en su salida le permite estar
finalizando la lectura de un dato de la matriz y simultáneamente, decodificar la
dirección del siguiente dato que se va a leer.
• Memorias SDRAM (Synchronous DRAM). Su estructura consta de dos o más
matrices, cuyo funcionamiento se organiza de forma que mientras se está
realizando el acceso a una matriz, otra se está preparando el siguiente acceso.
• Memorias DDR SDRAM (Double Date Rate SDRAM). La más moderna de la
familia de memorias DRAM soporta dos operaciones de memoria por ciclo de
reloj, así que proporciona el doble de velocidad.

Módulos de memorias.

Módulos SIMM (Single In- Line Memory Module) hoy en desuso.


• SIMM de 30 contactos (4 MB y 16 MB).
• SIMM de 72 contactos (16 MB y 32 MB).
• SIMM de 168 contactos (16 MB, 32 MB y 64 MB).

Módulos DIMM de memoria DRAM (Dual In-Line Memory Module). Este tipo
está prácticamente en desuso. Consta como los anteriores de un conjunto de
zócalo y tarjeta de circuito impreso que contiene los chips de memoria,
actualmente del tipo SDRAM o DDRAM, pero en éstos los conectores están en
ambas caras y contienen información diferente. Estos módulos trabajan con
palabras de 64 bits.

• DIMM de 72 contactos. Fueron los primeros en aparecer en el mercado.


• DIMM de 144 contactos. Con memoria DDRAM t capacidad de 1024 MB por
módulo.
• DIMM de 168 contactos.
• DIMM de 184 contactos con memoria SDRAM y capacidad de 512 MB por
módulo.
• DIMM de 200 contactos, para portátiles con memoria DDRAM y capacidad de
1024 MB por módulo.
• DIMM de 240 contactos, con memoria DDRAM2 y DDRAM3 y capacidad de
2048 MB por módulo.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 184


SISTEMAS DIGITALES

Modo de acceso.
Se entiende por modo de acceso, el método que la memoria emplea para acceder
a una información almacena en ella.

• Acceso aleatorio. Se puede ir a cualquier posición directamente. El sistema


asigna a cada posición de memoria un código y por él la identifica. El tiempo de
acceso es independiente de la posición de la memoria. Un ejemplo de este tipo
de memorias son las integradas RAM y ROM.
• Acceso secuencial. Las memorias de este tipo de acceso no se utilizan hoy
día. Para acceder a una determinada posición era necesario recorrer
previamente todas las posiciones anteriores.

Formaban parte de las memorias masas ya que formaban parte de algunos


periféricos. El dispositivo más característico de este tipo de memoria es la cinta
magnética.

• Acceso cíclico. Este modo de acceso es una combinación de los dos


anteriores. Los dispositivos de memorias que emplean este tipo de acceso son
los discos duros, los disquetes los CDROM y DVD. En todos los casos el disco
está dividido en pistas concéntricas y en y en un número par de divisiones. La
información está almacenada en un sector. Para leer la cabeza accede de
forma aleatoria para localizar la pista y después de manera secuencial para
acceder al sector.
- Acceso por Pila o LIFO (Last in, first out), último en entrar primero en salir.
- Acceso por Pila o FIFO (First in, first out) primero en entrar, primero en salir

INTRODUCCIÓN A LOS MICROCONTROLADORES.

Arquitectura Harvard La arquitectura tradicional:


La arquitectura tradicional de computadoras y microprocesadores se basa en el
esquema propuesto por John Von Neumann, en el cual la unidad central de
proceso, o CPU, está conectada a una memoria única que contiene las
instrucciones del programa y los datos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 185


SISTEMAS DIGITALES

El tamaño de la unidad de datos o instrucciones está fijado por el ancho del bus de
la memoria. Es decir que un microprocesador de 8 bits, que tiene además un bus
de 8 bits que lo conecta con la memoria, deberá manejar datos e instrucciones de
una o más unidades de 8 bits (bytes) de longitud. Cuando deba acceder a una
instrucción o dato de más de un byte de longitud, deberá realizar más de un
acceso a la memoria. Por otro lado este bus único limita la velocidad de operación
del microprocesador, ya que no se puede buscar de memoria una nueva
instrucción, antes de que finalicen las transferencias de datos que pudieran
resultar de la instrucción anterior. Es decir que las dos principales limitaciones de
esta arquitectura tradicional son:

a) La longitud de las instrucciones está limitada por la unidad de longitud de los


datos, por lo tanto el microprocesador debe hacer varios accesos a memoria
para buscar instrucciones complejas,
b) La velocidad de operación (o ancho de banda de operación) está limitada por
el efecto de cuello de botella que significa un bus único para datos e
instrucciones que impide superponer ambos tiempos de acceso.

La arquitectura von Neumann permite el diseño de programas con código


automodificable, práctica bastante usada en las antiguas computadoras que solo
tenían acumulador y pocos modos de direccionamiento, pero innecesaria, en las
computadoras modernas.

La arquitectura Harvard y sus ventajas:


La arquitectura conocida como Harvard, consiste simplemente en un esquema en
el que el CPU está conectado a dos memorias por intermedio de dos buses
separados. Una de las memorias contiene solamente las instrucciones del
programa, y es llamada Memoria de Programa. La otra memoria solo almacena los
datos y es llamada Memoria de Datos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 186


SISTEMAS DIGITALES

Ambos buses son totalmente independientes y pueden ser de distintos anchos.


Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced
Instrucción Set Computer), el set de instrucciones y el bus de la memoria de
programa pueden diseñarse de manera tal que todas las instrucciones tengan una
sola posición de memoria de programa de longitud. Además, como los buses son
independientes, el CPU puede estar accediendo a los datos para completar la
ejecución de una instrucción, y al mismo tiempo estar leyendo la próxima
instrucción a ejecutar. Se puede observar claramente que las principales ventajas
de esta arquitectura son:

a) El tamaño de las instrucciones no está relacionado con el de los datos, y por lo


tanto puede ser optimizado para que cualquier instrucción ocupe una sola
posición de memoria de programa, logrando así mayor velocidad y menor
longitud de programa.
b) El tiempo de acceso a las instrucciones puede superponerse con el de los
datos, logrando una mayor velocidad de operación.
c) Una pequeña desventaja de los procesadores con arquitectura Harvard, es que
deben poseer instrucciones especiales para acceder a tablas de valores
constantes que pueda ser necesario incluir en los programas, ya que estas
tablas se encontraran físicamente en la memoria de programa (por ejemplo en
la EPROM de un microprocesador)

Los micro controladores PIC 16C5X, 16CXX y 17CXX poseen arquitectura


Harvard, con una memoria de datos de 8 bits, y una memoria de programa que,
según el modelo, puede ser de 12 bits para los 16C5X, 14 bits para los 16CXX y
16 bits para los 17CXX.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 187


SISTEMAS DIGITALES

Diagrama de bloques.

Mapas de memoria (Memoria Interna (RAM)).

Organización
La memoria interna de datos, también llamada archivo de registros (register file),
está dividida en dos grupos: los registros especiales, y los registros de propósito
generales. Los primeros ocupan las 11 posiciones primeras que van desde la 00 a
la 0B, y los segundos las posiciones que siguen, o sea de la 08 a la 4F.

Los registros especiales contienen la palabra de estado (STATUS), los registros


de datos de los tres puertos de entrada salida (Puerto A, Puerto B, Puerto C), los 8
bits menos significativos del program counter (PC), el contador del Real Time
Clock/Counter (RTCC) y un registro puntero llamado File Select Register (FSR).
La posición 00 no contiene ningún registro en especial y es utilizada en el
mecanismo de direccionamiento indirecto.

Los registros de propósito general se dividen en dos grupos: los registros de


posición fija y los bancos de registros. Los primeros ocupan las 8 posiciones que
van de la 08 a la 0F.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 188


SISTEMAS DIGITALES

Los bancos de registros consisten en hasta cuatro grupos o bancos de 16


registros cada uno, que se encuentran superpuestos en las direcciones que van
de la 10 a la 1F. Se puede operar con un solo banco a la vez, el cual se selecciona
mediante los bits 5 y 6 del File Select Register (FSR).

Memoria de Programa.

Organización.
La memoria de programa, que en los PIC16C5X puede ser de 512 a 2K
instrucciones, debe ser considerada a los efectos de la programación, como
compuesta por secciones o páginas de 512 posiciones. A su vez cada página
debe considerarse dividida en dos mitades de 128 posiciones cada una. Esto se
debe, como se verá, a las limitaciones de direccionamiento de las instrucciones de
salto.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 189


SISTEMAS DIGITALES

Registros de funciones especiales Camino de los datos y registro W.


La figura representa un diagrama simplificado de la arquitectura interna del camino
de los datos en el CPU de los microcontroladores PIC. Este diagrama puede no
representar con exactitud el circuito interno de estos microcontroladores, pero es
exacto y claro desde la óptica del programador. La otra figura representa el mismo
diagrama para un microprocesador ficticio de arquitectura tradicional. Se puede
observar que la principal diferencia entre ambos radica en la ubicación del registro
de trabajo, que para los PIC’s se denomina W (Working Register), y para los
tradicionales es el Acumulador (A).

En los microcontroladores tradicionales todas las operaciones se realizan sobre el


acumulador. La salida del acumulador está conectada a una de las entradas de la
Unidad Aritmética y Lógica (ALU), y por lo tanto éste es siempre uno de los dos
operandos de cualquier instrucción. Por convención, las instrucciones de simple
operando (borrar, incrementar, decrementar, complementar), actúan sobre el
acumulador. La salida de la ALU va solamente a la entrada del acumulador, por lo
tanto el resultado de cualquier operación siempre quedara en este registro. Para
operar sobre un dato de memoria, luego realizar la operación siempre hay que
mover el acumulador a la memoria con una instrucción adicional.

En los microcontroladores PIC, la salida de la ALU va al registro W y también a la


memoria de datos, por lo tanto el resultado puede guardarse en cualquiera de los

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 190


SISTEMAS DIGITALES

dos destinos. En las instrucciones de doble operando, uno de los dos datos
siempre debe estar en el registro W, como ocurría en el modelo tradicional con el
acumulador. En las instrucciones de simple operando el dato en este caso se toma
de la memoria (también por convención). La gran ventaja de esta arquitectura es
que permite un gran ahorro de instrucciones ya que el resultado de cualquier
instrucción que opere con la memoria, ya sea de simple o doble operando, puede
dejarse en la misma posición de memoria o en el registro W, según se seleccione
con un bit de la misma instrucción. Las operaciones con constantes provenientes
de la memoria de programa (literales) se realizan solo sobre el registro W.

En la memoria de datos de los PIC’s se encuentran ubicados casi todos los


registros de control del microprocesador y sus periféricos autocontenidos, y
también las posiciones de memoria de usos generales. En el caso de los 16C5X,
algunos registros especiales de solo escritura (TRIS y OPTION) no están
accesibles dentro del bloque de memoria de datos, sino que solo se pueden
cargar desde el registro W por medio de instrucciones especiales.

Contador de Programa.
Este registro, normalmente denominado PC, es totalmente equivalente al de todos
los microprocesadores y contiene la dirección de la próxima instrucción a ejecutar.
Se incrementa automáticamente al ejecutar cada instrucción, de manera que la
secuencia natural de ejecución del programa es lineal, una instrucción después de
la otra. Algunas instrucciones que llamaremos de control, cambian el contenido del
PC alterando la secuencia lineal de ejecución. Dentro de estas instrucciones se
encuentran el GOTO y el CALL que permiten cargar en forma directa un valor
constante en el PC haciendo que el programa salte a cualquier posición de la
memoria. Otras instrucciones de control son los SKIP o “salteos” condicionales,
que producen un incremento adicional del PC si se cumple una condición
específica, haciendo que el programa saltee, sin ejecutar, la instrucción siguiente.

El PC es un registro de 9 bits en los 16C54/55, 10 bits en el 16C56, y 11 bits en el


16C57, lo que permite direccionar respectivamente 512, 1024 o 2048 posiciones
de memoria de programa.

Al resetearse el microprocesador, todos los bits del PC toman valor 1, de manera


que la dirección de arranque del programa es siempre la última posición de
memoria de programa. En esta posición se deberá poner una instrucción de salto
al punto donde verdaderamente se inicia el programa.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 191


SISTEMAS DIGITALES

A diferencia de la mayoría de los microprocesadores convencionales, el PC es


también accesible al programador como registro de memoria interna de datos, en
la posición de 02. Es decir que cualquier instrucción común que opere sobre
registros puede ser utilizada para alterar el PC y desviar la ejecución del
programa. El uso indiscriminado de este tipo de instrucciones complica el
programa y puede ser muy peligroso, ya que puede producir comportamientos
difíciles de predecir. Sin embargo, algunas de estas instrucciones utilizadas con
cierto método, pueden ser muy útiles para implementar poderosas estructuras de
control tales como el goto computado. Como el microprocesador opera con datos
de 8 bits, y la memoria de datos es también de 8 bits, estas instrucciones solo
pueden leer o modificar los bits 0 a 7 del PC.

Stack.
En los microcontroladores PIC el stack es una memoria interna dedicada, de
tamaño limitado, separada de las memorias de datos y de programa, inaccesible al
programador, y organizada en forma de pila, que es utilizada solamente, y en
forma automática, para guardar las direcciones de retorno de subrutinas e
interrupciones. Cada posición es de 11 bits y permite guardar una copia completa
del PC. Como en toda memoria tipo pila, los datos son accedidos de manera tal
que el primero que entra es el último que sale.

En los 16C5X el stack es de solo dos posiciones, mientras que en los 16CXX es
de 8 posiciones y en los 17CXX es de 16 posiciones. Esto representa, en cierta
medida, una limitación de estos microcontroladores, ya que no permite hacer uso
intensivo del anidamiento de subrutinas. En los 16C5X, solo se pueden anidar dos
niveles de subrutinas, es decir que una subrutina que es llamada desde el
programa principal, puede a su vez llamar a otra subrutina, pero esta última no
puede llamar a una tercera, porque se desborda la capacidad del stack, que solo
puede almacenar dos direcciones de retorno.

Esto de hecho representa una traba para el programador y además parece impedir
o dificultar la programación estructurada, sin embargo es una buena solución de
compromiso ya que estos microcontroladores están diseñados para aplicaciones
de alta velocidad en tiempo real, en las que el overhead (demoras adicionales)
que ocasiona un excesivo anidamiento de subrutinas es inaceptable. Por otra
parte existen técnicas de organización del programa que permiten mantener la
claridad de la programación estructurada, sin necesidad de utilizar tantas
subrutinas anidadas.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 192


SISTEMAS DIGITALES

Como ya se mencionó anteriormente, el stack y el puntero interno que lo


direcciona, son invisibles para el programador, solo se los accede
automáticamente para guardar o rescatar las direcciones de programa cuando se
ejecutan las instrucciones de llamada o retorno de subrutinas, o cuando se
produce una interrupción o se ejecuta una instrucción de retorno de ella.

Palabra de Estado del Procesador.


La palabra de estado del procesador contiene los tres bits de estado de la ALU (C,
DC y Z), y otros bits que por comodidad se incluyeron en este registro.

76543210 Registro STATUS

El bit Z indica que el resultado de la última operación fue CERO. El bit C indica
acarreo del bit más significativo (bit 7) del resultado de la última operación de
suma. En el caso de la resta se comporta a la inversa, C resulta 1 si no hubo
pedido de préstamo. El bit DC (digit carry) indica acarreo del cuarto bit (bit 3) del
resultado de la última operación de suma o resta, con un comportamiento análogo
al del bit C, y es útil para operar en BCD (para sumar o restar números en código
BCD empaquetado). El bit C es usado además en las operaciones de rotación
derecha o izquierda como un paso intermedio entre el bit 0 y el bit 7.

El bit PD (POWER DOWN) sirve para detectar si la alimentación fue apagada y


encendida nuevamente, tiene que ver con la secuencia de inicialización, el watch
dog timer y la instrucción sleep, y su uso se detallara en la sección referida al
modo POWER DOWN. El bit TO (TIME-OUT) sirve para detectar si una condición
de reset fue producida por el watch dog timer, está relacionado con los mismos
elementos que el bit anterior y su uso se detallara en la sección referida al
WATCH DOG TIMER. Los bits de selección de página PA0/PA1/PA2 se utilizan en
las instrucciones de salto GOTO y CALL, y se explicaran con detalle en la sección
referida a las instrucciones de control, y a la organización de la memoria de
programa. En realidad en el 16C54 estos bits no se usan y sirven para propósitos
generales. En el 16C57 el PA0 si se usa pero los otros dos no. En el 16C55 se
utilizan PA0 y PA1. PA2 está reservado para uso futuro y en cualquiera de los PIC
16C5X sirve para propósitos generales.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 193


SISTEMAS DIGITALES

OTROS REGISTROS ESPECIALES.


Las ocho primeras posiciones del área de datos están reservadas para alojar
registros de propósito especial, quedando las restantes libres para contener los
datos u operandos que se desee (registros de propósito general).

El registro INDF que ocupa la posición 0 no está implementando físicamente y,


como se ha explicado, se le referencia en el direccionamiento indirecto de datos
aunque se utiliza el contenido de FSR.

En la dirección está el registro TAR0 (Temporizador) que puede ser leído y escrito
como cualquier otro registro. Puede incrementar su valor con una señal externa
aplicada al pin T0CKI o mediante el oscilador interno.
El PC ocupa la posición 2 del área de datos en donde se halla el registro PCL al
que se añaden 3 bits auxiliares y se conectan con los dos niveles de la Pila en las
instrucciones CALL y RETLW.

El registro de Estado ocupa la posición 3 y entre sus bits se encuentran los


señalizadores C, DC y Z y los bits PA1 y PA0 que seleccionan la página en la
memoria de programa. El bit 7 (PA2) no está implementando en los PIC de la
gama baja.

FRS se ubica en la dirección 4 y puede usarse para contener la dirección del dato
en las instrucciones con direccionamiento indirecto y también para guardar
operandos en sus 5 bits de menos peso.

Los registros que ocupan las posiciones 5 ,6 y 7 soportan los Puertos A, B y C de


E/S.

Pueden ser leídos y escritos como cualquier otro registro y manejan los valores de
los bits que entran y salen por los pines de E/S del microcontrolador.

Puertos de entrada / salida Los microprocesadores PIC16C5X tienen dos o tres


puertos de entrada/salida paralelo de usos generales llamados Puerto A, Puerto B
y Puerto C. El Puerto A es de cuatro bits y los demás son de 8 bits cada uno. El
Puerto C solamente está disponible en el 16C55 y el 16C57.

Circuito equivalente.
El circuito equivalente de un bit cualquiera de un puerto de entrada salida es el
siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 194


SISTEMAS DIGITALES

El latch L1 corresponde a un bit del registro de datos del puerto, mientras que L2
es un bit del registro de control de tristate del mismo. B1 es el buffer tristate de
salida que tiene capacidad de entregar 20 mA y drenar 25 mA. B1 es controlado
por L2. Si L2 tiene cargado un “1”, B1 se encuentra en tri-state, es decir con la
salida desconectada (en alta impedancia), y el puerto puede ser usado como
entrada. Si L2 tiene cargado un “0”, la salida de B1 está conectada (baja
impedancia) y el puerto está en modo de salida. B2 es el buffer de entrada, es
decir el que pone los datos en el bus interno del microcontrolador cuando se lee el
registro de datos del puerto. Puede verse que el dato leído es directamente el
estado del pin de entrada.

Diagrama lógico.

Diagrama lógico para los microcontroladores PIC16C54/56.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 195


SISTEMAS DIGITALES

Temporizador/Contador (RTCC) Este dispositivo, llamado Real Time Clock /


Counter, es básicamente un contador de 8 bits, constituido por el registro
operacional RTCC que se encuentra en la posición 01 de la memoria de datos.
Este registro puede usarse para contar eventos externos por medio de un pin de
entrada especial (modo contador) o para contar pulsos internos de reloj de
frecuencia constante (modo timer).

Además, en cualquiera de los dos modos, se puede insertar un prescaler, es decir


un divisor de frecuencia programable que puede dividir por 2, 4, 8, 16, 32, 64, 128
o 256.

Este divisor puede ser utilizado alternativamente como prescaler del RTCC o
como postscaler del Watch Dog Timer, según se lo programe.

Para su programación se dispone de dos registros: el RTCC ya mencionado y el


registro OPTION. Este último no es accesible como memoria de datos, no se lo
puede leer de ninguna manera, y solo se lo puede escribir con la instrucción
especial OPTION (familia PIC16C5X). Este registro contiene los bits necesarios
para seleccionar modo contador o modo timer, flanco de conteo en modo
contador, prescaler para RTCC o para WDT y constante de división del prescaler,
según el siguiente esquema:

A continuación se muestra un circuito equivalente del RTCC (TMR0) y el


prescaler.
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 196
SISTEMAS DIGITALES

En el esquema se puede observar claramente cómo operan los bits de


configuración T0SE, T0CS y PSA, en cualquiera de sus combinaciones. Se
observa además que en la entrada del contador RTCC hay un circuito de
sincronización que introduce una demora de dos ciclos del clock de instrucciones
(Fosc. / 4). Al escribir sobre el RTCC automáticamente se resetea este circuito,
por lo tanto solo se incrementara dos ciclos después.

El prescaler es un contador asincrónico de 8 bits más un multiplexor 8 a 1


comandado por los bits PS0 a PS2, que permite seleccionar como salida a
cualquiera de los bits del contador. Al escribir sobre el RTCC, si este está
programado para operar con prescaler (PSA=0), se borra automáticamente el
prescaler. Las instrucciones CLRWDT y SLEEP borran el prescaler, si este está
programado para operar como postscaler del watch dog timer (PSA=1).

Interrupciones Los 16CXX agregan la posibilidad de contar con sistema de


interrupciones. Este sistema consiste en un mecanismo por el cual un evento
interno o externo, asincrónico respecto del programa, puede interrumpir la
ejecución de éste produciendo automáticamente un salto a una subrutina de
atención, de manera que pueda atender inmediatamente el evento, y retomar
luego la ejecución del programa exactamente en donde estaba al momento de ser
interrumpido. Este mecanismo es muy útil por ejemplo para el manejo de timers o
rutinas que deben repetirse periódicamente (refresh de display, antirebote de
teclado, etc.), detección de pulsos externos, recepción de datos, etc.

Existen de tres a doce eventos que pueden generar interrupciones en los


PIC16CXX existentes hasta el momento, pero nada impide que puedan agregarse
más en versiones futuras.

Funcionamiento.
En los 16CXX las interrupciones se comportan casi exactamente igual que las
subrutinas.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 197


SISTEMAS DIGITALES

Desde el punto de vista del control del programa, al producirse una interrupción se
produce el mismo efecto que ocurriría si el programa tuviese un CALL 0004h en el
punto en que se produjo la interrupción. En uno de los registros de control del
sistema de interrupciones existe un bit de habilitación general de interrupciones
GIE, que debe ser programado en 1 para que las interrupciones puedan actuar. Al
producirse una interrupción, este bit se borra automáticamente para evitar nuevas
interrupciones. La instrucción RETFIE que se utiliza al final de la rutina de
interrupción, es idéntica a un retorno de subrutina, salvo que además coloca en
uno automáticamente el bit GIE volviendo a habilitar las interrupciones. Dentro de
la rutina de interrupción, el programa deberá probar el estado de los flags de
interrupción de cada una de las fuentes habilitadas, para detectar cual fue la que
causo la interrupción y así decidir qué acción tomar.

Fuentes.
La señal que produce la interrupción es en realidad una sola, que resulta de la
combinación de todas las fuentes posibles y de los bits de habilitación. Existen dos
grupos de fuentes, unas que se habilitan con solo colocar en uno el bit GIE, y otras
que además necesitan que este puesto a uno el bit PEIE. En algunas versiones de
los 16CXX solo existe el primer grupo. Además, cada fuente de interrupciones
tiene su respectivo bit de habilitación individual.

Las fuentes de interrupción varían con cada versión, y pueden ser por ejemplo:

• Interrupción externa por pin RB0/INT.


• Desborde del Timer 0 o RTCC.
• Cambio en el estado de los bits 4 a 7 del puerto B.
• Desborde del timer 1.
• Desborde del timer 2.
• Interrupción del capture/compare 1.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 198


SISTEMAS DIGITALES

• Interrupción del capture/compare 2.


• Transmisión o recepción de un carácter por la interface serie sincrónica.
• Transmisión o recepción de un carácter por la interface serie asincrónica.
• Fin de conversión A/D.
• Lectura/escritura del puerto paralelo de comunicación con otros
microprocesadores.
• Escritura de EEPROM finalizada.

Programa fuente:
El programa fuente está compuesto por una sucesión de líneas de programa.
Cada línea de programa está compuesta por 4 campos separados por uno o más
espacios o tabulaciones. Estos campos son:

[Etiqueta] Comando [Operando(s)] [; Comentario]

La etiqueta es opcional. El comando puede ser un mnemónico del conjunto de


instrucciones. El operando está asociado al comando, si no hay comando no hay
operando, e inclusive algunos comandos no llevan operando. El comentario es
opcional para el compilador aunque es buena práctica considerarlo obligatorio
para el programador.

La etiqueta, es el campo que empieza en la primera posición de la línea. No se


pueden insertar espacios o tabulaciones antes de la etiqueta sino será
considerado comando.

Identifica la línea de programa haciendo que el compilador le asigne un valor


automáticamente. Si se trata de una línea cuyo comando es una instrucción de
programa del microcontrolador, se le asigna el valor de la dirección de memoria
correspondiente a dicha instrucción (location counter). En otros casos se le asigna
un valor de una constante, o la dirección de una variable, o será el nombre de una
macroinstrucción, etc.

El comando puede ser un código mnemónico de instrucción del microcontrolador,


o una directiva o pseudoinstrucción para el compilador. En el primer caso será
directamente traducido a código de máquina, en el segundo caso será interpretado
por el compilador y realizara alguna acción en tiempo de compilación como ser
asignar un valor a una etiqueta, etc.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 199


SISTEMAS DIGITALES

El campo de parámetros puede contener uno o más parámetros separados por


comas. Los parámetros dependen de la instrucción o directiva. Pueden ser
números o literales que representen constantes o direcciones.

El campo de comentario debe comenzar con un carácter punto y coma. No


necesita tener espacios o tabulaciones separándolo del campo anterior, e incluso
puede empezar en la primera posición de la línea. El compilador ignora todo el
texto que contenga la línea después de un carácter punto y coma. De esta manera
pueden incluirse líneas que contengan solo comentarios, y es muy buena práctica
hacer uso y abuso de esta posibilidad para que los programas resulten
autodocumentados.
Conjunto de instrucciones El conjunto de instrucciones de los
microprocesadores PIC 16C5X consiste en un pequeño repertorio de solo 33
instrucciones de 12 bits, que pueden ser agrupadas para su estudio en tres a
cinco grupos. En este curso se ha optado por clasificarlas, desde el punto de vista
del programador, en cinco categorías bien definidas de acuerdo con la función y el
tipo de operandos involucrados. En primer lugar se agrupan las instrucciones que
operan con bytes y que involucran algún registro de la memoria interna. En
segundo lugar se analizaran las instrucciones que operan solo sobre el registro W
y que permiten cargarle una constante implícita o incluida literalmente en la
instrucción (literales). En tercer lugar se agrupan las instrucciones que operan
sobre bits individuales de los registros de la memoria interna. En cuarto lugar se
clasifican las instrucciones de control de flujo del programa, es decir las que
permiten alterar la secuencia lineal de ejecución de las instrucciones. Por último se
agrupan unas pocas instrucciones que llamaremos especiales, cuyas funciones o
tipos de operandos son muy específicos y no encajan en ninguna de las
clasificaciones anteriores.

Instrucciones de Byte que operan con Registros.


Estas instrucciones pueden ser de simple o doble operando de origen. El primer
operando de origen será siempre el registro seleccionado en la instrucción, el
segundo, en caso de existir, será el registro W. El destino, es decir donde se
guardara el resultado, será el registro seleccionado o el W, según se seleccione
con un bit de la instrucción.

El formato genérico de estas instrucciones es el siguiente:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 200


SISTEMAS DIGITALES

Los bits 0 a 4 (5 bits), denominados “f” permiten seleccionar uno de 32 registros de


la memoria interna. El bit 5, denominado “d”, permite especificar el destino del
resultado. Si d = 1 el resultado se guardara en el registro seleccionado. Si d = 0 el
resultado se guardara en W. Los bits 6 a 11 identifican la instrucción específica a
realizar.

Las instrucciones siguientes son las tres operaciones lógicas de doble operando:

ANDWF f,d ;operación AND lógica, destino = W _ f


IORWF f,d ;operación OR lógica, destino = W _ f
XORWF f,d ;operación XOR lógica, destino = W _ f
Los nombres mnemónicos de estas instrucciones provienen de: AND W con F,
Inclusive OR W con F y XOR W con F.

Las que siguen son las cuatro operaciones aritméticas y lógicas sencillas de
simple operando:

MOVF f,d ;movimiento de datos, destino = f


COMF f,d ;complemento lógico, destino = NOT f
INCF f,d ;incremento aritmético, destino = f + 1
DECF f,d ;decremento aritmético, destino = f - 1

Los mnemónicos de estas instrucciones provienen de: MOVe File, COMplement


File, INCrement File y DECrement File.

En las siete instrucciones anteriores el único bit afectado de la palabra de estado


del procesador es el Z, que se pone en 1 si el resultado de la operación es
00000000, y se pone en 0 si el resultado tiene cualquier otro valor.

A continuación siguen las dos instrucciones de rotación de bits a través del


CARRY:

RLF f,d ;rotación a la izquierda, destino = f ROT _


RRF f,d ;rotación a la derecha, destino = f ROT _

En estas operaciones (Rotate Left File y Rotate Right File) los bits son
desplazados de cada posición a la siguiente, en sentido derecho o izquierdo. El
desplazamiento es cerrado, formando un anillo, con el bit C (CARRY) de la
palabra de estado.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 201


SISTEMAS DIGITALES

En estas dos instrucciones, el único bit afectado de la palabra de estado del


procesador es el bit C, que tomará el valor que tenía el bit 7 o el bit 0, según sea el
sentido del desplazamiento.

Estas instrucciones son muy útiles para la manipulación de bits, y además para
realizar operaciones aritméticas, ya que en numeración binaria, desplazar un
número a la izquierda es equivalente a multiplicarlo por 2, y hacia la derecha, a
dividirlo por 2.

La instrucción siguiente realiza el intercambio de posiciones entre los cuatro bits


menos significativos y los cuatro más significativos (nibble bajo y nibble alto).

SWAPF f,d ;intercambia nibbles, destino = SWAP f


Esta instrucción (SWAP File) no afecta ninguno de los bits de la palabra de estado
del procesador.

Esta instrucción es muy útil para el manipuleo de números BCD empaquetados,


en los que en un solo byte se guardan dos dígitos BCD (uno en cada nibble).

Las dos operaciones que siguen son la suma y la resta aritméticas:

ADDWF f,d ;suma aritmética, destino = f + W


SUBWF f,d ;resta aritmética, destino = f - W

Estas operaciones (ADD W a F y SUBstract W de F) afectan a los tres bits de


estado C, DC y Z.

El bit Z se pone en 1 si el resultado de la operación es 00000000, y se pone en 0


si el resultado tiene cualquier otro valor.

La suma se realiza en aritmética binaria pura sin signo. Si hay un acarreo del bit 7,
es decir que el resultado es mayor que 255, el bit C (carry) resulta 1, en caso
contrario resulta 0. Si hay un acarreo del bit 3, es decir que la suma de las dos
mitades (nibbles) menos significativas (bits 0 a 3) resulta mayor que 15, se pone
en 1 el bit DC (digit carry), en caso contrario se pone en 0.

Ejemplos:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 202


SISTEMAS DIGITALES

La resta se realiza sumando, en binario puro sin signo, el registro f más el


complemento a dos de W (el complemento a 1, o complemento lógico, más 1).

Ejemplos:

Equivalente a:
Los bits de estado C y DC toman el valor normal correspondiente a la suma de f
con el complemento a 2 de W. De esta manera el significado para la operación de
resta resulta invertido, es decir que C (carry) es 1 si no hubo desborde en la resta,
o dicho de otra manera, si el contenido de W es menor que el de f. El bit DC se
comporta de manera similar, es decir que DC es 1 si no hubo desborde en la mitad
menos significativa, lo que equivale a decir que el nibble bajo del contenido de W
es menor que el del registro f.

Las instrucciones que siguen son de simple operando, pero son casos especiales
ya que el destino es siempre el registro seleccionado:

CLRF f ;borrado de contenido, f = 0


MOVWF f ;copia contenido W _ f, f = W

La instrucción CLRF (CLeaR File) afecta solo al bit Z que resulta siempre 0.

La instrucción MOVWF (MOVe W a F) no afecta ningún bit de la palabra de


estado.

Instrucciones de Byte que operan sobre W y Literales.


Estas instrucciones se refieren todas al registro W, es decir que uno de los
operandos de origen y el operando de destino son siempre el registro W. En las
instrucciones de este grupo que tienen un segundo operando de origen, este es

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 203


SISTEMAS DIGITALES

siempre una constante de programa literalmente incluida en la instrucción, llamada


constante literal o simplemente literal.

El formato genérico de estas instrucciones es el siguiente:

Los bits 0 a 7 especifican la constante literal de 8 bits que se utilizara en la


operación.

Las tres instrucciones que siguen son las operaciones lógicas tradicionales,
similares a las que ya vimos anteriormente, pero realizadas entre una constante
de programa y el registro W:

IORLW k ; operación OR lógica, W = W _ k


ANDLW k ; operación AND lógica, W = W _ k
XORLW k ; operación XOR lógica, W = W _ k

En estas tres instrucciones (Inclusive OR Literal W, AND Literal W y XOR Literal


W) el único bit afectado de la palabra de estado del procesador es el Z, que se
pone en 1 si el resultado de la operación es 00000000, y se pone en 0 si el
resultado tiene cualquier otro valor.

La instrucción que sigue sirve para cargar una constante de programa en el


registro W:

MOVLW k ;carga constante en W, W = K

Esta (MOVe Literal W) instrucción no afecta ninguno de los bits de estado del
procesador.

La instrucción que sigue (CLeaR W) no correspondería incluirla en este grupo, y


pertenece en realidad al primero, el de las instrucciones que operan sobre
registros, ya que se trata de un caso especial de la instrucción CLRF, con destino
W, y f = 0.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 204


SISTEMAS DIGITALES

La incluimos aquí porque como se le ha asignado un mnemónico particular


referido específicamente al registro W, creemos que, desde el punto de vista del
programador, es más útil verla dentro del grupo de instrucciones referidas a W.

CLRW; borra el contenido de W, W = 0

Al igual que en la instrucción CLRF, el único bit de estado afectado es el Z que


resulta 1.

Instrucciones de Bit.
El formato genérico de estas instrucciones es el siguiente:

Los bits 0 a 4 (5 bits), denominados “f”, permiten seleccionar uno de 32 registros


de la memoria interna. Los bits 5 a 7, denominados “b”, permiten especificar el
número de bit (0 a 7) sobre el que se operara. Estas instrucciones operan
solamente sobre el bit especificado, el resto de los bits del registro no son
alterados. Estas instrucciones no tienen especificación de destino, ya que el
mismo es siempre el registro seleccionado.

BCF f,b ;borra el bit b de f ;bit f(b) = 0


BSF f,b ;coloca en uno el bit b de f ;bit f(b) = 1

Estas instrucciones (Bit Clear File y Bit Set File) no afectan ningún bit de la palabra
de estado del procesador.

Instrucciones de Control:

GOTO k ;salto a la posición k (9 bits) del programa.

Esta es la típica instrucción de salto incondicional a cualquier posición de la


memoria de programa (que en la mayoría de los microprocesadores
convencionales se llama JUMP). La constante literal k es la dirección de destino
del salto, es decir la nueva dirección de memoria de programa a partir de la cual
comenzarán a leerse las instrucciones después de ejecutar la instrucción GOTO.
Esta instrucción simplemente carga la constante k en el registro PC (contador de
programa). La única complicación de esta instrucción es que la constante k es de

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 205


SISTEMAS DIGITALES

solo 9 bits, mientras que el registro PC es de 11 bits, ya que en el 16C57 debe


permitir direccionar una memoria de programa de 2 K. Los dos bits faltantes, bit 9
y 10 del PC, son tomados respectivamente de los bits de selección de página PA0
y PA1 de la palabra de estado. Este comportamiento particular hace que la
memoria de programa aparezca como dividida en páginas de 512 posiciones
como se verá más adelante. El programador debe tener en cuenta que antes de
ejecutar una instrucción GOTO es posible que haya que programar los bits PA0 y
PA1.

La que sigue es la instrucción de llamado a subrutina:

CALL k ;salto a la subrutina en la posición k (8 bits)

Su comportamiento es muy similar al de la instrucción GOTO, salvo que además


de saltar guarda en el stack la dirección de retorno de la subrutina (para la
instrucción RETLW).

Esto lo hace simplemente guardando en el stack una copia del PC incrementado,


antes de que el mismo sea cargado con la nueva dirección k. La única diferencia
con la instrucción GOTO respecto de la forma en la que se realiza el salto, es que
en la instrucción CALL la constante k tiene solo 8 bits en vez de 9. En este caso
también se utilizan PA0 y PA1 para cargar los bits 9 y 10 del PC, pero además el
bit 8 del PC es cargado siempre con 0. Esto hace que los saltos a subrutina solo
puedan realizarse a posiciones que estén en las primeras mitades de las páginas
mencionadas. El programador debe tener en cuenta este comportamiento y
asegurarse de ubicar las posiciones de inicio de las subrutinas en las primeras
mitades de las páginas.

La instrucción que aparece a continuación es la de retorno de subrutina:

RETLW k ;retorno de subrutina con constante k, W = k

Esta (RETurn con Literal in W) instrucción produce el retorno de subrutina con una
constante literal k en el registro W. La operación que realiza consiste simplemente
en sacar del stack un valor y cargarlo en el PC. Ese valor es el PC incrementado
antes de realizar el salto, de la última instrucción CALL ejecutada, por lo tanto es
la dirección de la instrucción siguiente a dicho CALL... Dado que el stack es de 11
bits, el valor cargado en el PC es una dirección completa, y por lo tanto se puede
retornar a cualquier posición de la memoria de programa, sin importar como estén

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 206


SISTEMAS DIGITALES

los bits de selección de página. Esta instrucción además carga siempre una
constante literal en el registro W. Ya que esta es la única instrucción de retorno de
subrutina de los PIC16C5X, no hay en estos microprocesadores forma de retornar
de una subrutina sin alterar el registro W. Por otro lado, y con una metodología
especial de programación, un conjunto de sucesivas instrucciones RETLW puede
ser usado como una tabla de valores constantes incluida en el programa (Ej.:
tablas BCD/7 seg., hexa/ASCII, etc.).

A continuación se presentan las dos únicas instrucciones de “salteo” (skip)


condicional.

Estas instrucciones son los únicos medios para implementar bifurcaciones


condicionales en un programa. Son muy generales y muy poderosas ya que
permiten al programa tomar decisiones en función de cualquier bit de cualquier
posición de la memoria interna de datos, y eso incluye a los registros de
periféricos, los puertos de entrada/salida e incluso la palabra de estado del
procesador. Estas dos instrucciones reemplazan y superan a todo el conjunto de
instrucciones de salto condicional que poseen los microprocesadores sencillos
convencionales (salto por cero, por no cero, por carry, etc.).

BTFSC f,b ;salteo si bit = 0, bit = f(0) _ saltea


BTFSS f,b ;salteo si bit = 1, bit = f(1) _ saltea

BTFSC (Bit Test File and Skip if Clear) saltea la próxima instrucción si el bit b del
registro f es cero. La instrucción BTFSS (Bit Test File and Skip if Set) saltea si el
bit es 1. Estas instrucciones pueden usarse para realizar o no una acción según
sea el estado de un bit, o, en combinación con GOTO, para realizar una
bifurcación condicional.

Ejemplo 1:

Ejemplo 2:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 207


SISTEMAS DIGITALES

Las instrucciones que siguen son casos especiales de las de incremento y


decremento vistas anteriormente. Estas instrucciones podrían categorizarse dentro
del grupo de instrucciones orientadas a byte sobre registros (primer grupo), ya que
efectivamente operan sobre los mismos, y el formato del código de la instrucción
responde al de ese grupo, pero, a diferencia de las otras, pueden además alterar
el flujo lineal del programa y por eso se les incluyó en este grupo.

DECFSZ f,d ;decrementa y saltea sí 0, destino= f - 1, = 0 _ saltea


INCFSZ f,d ;incrementa y saltea sí 0, destino= f + 1, = 0 _ saltea

Estas dos instrucciones (DECrement File and Skip if Zero, e INCrement File and
Skip if Zero) se comportan de manera similar a DECF e INCF, salvo que no
afectan a ningún bit de la palabra de estado. Una vez realizado el incremento o
decremento, si el resultado es 00000000, el microprocesador salteara la próxima
instrucción del programa. Estas instrucciones se utilizan generalmente en
combinación con una instrucción de salto (GOTO), para el diseño de ciclos o lazos
(loops) de instrucciones que deben repetirse una cantidad determinada de veces.

Ejemplo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 208


SISTEMAS DIGITALES

Instrucciones Especiales.
En este grupo se reunieron las instrucciones que controlan funciones específicas
del microprocesador o que actúan sobre registros especiales no direccionados
como memoria interna normal.

La instrucción que sigue es la típica NO OPERATION, existente en casi todos los


microprocesadores.

NOP ;no hace nada, consume tiempo

Esta instrucción solo sirve para introducir una demora en el programa, equivalente
al tiempo de ejecución de una instrucción. No afecta ningún bit de la palabra de
estado.

La siguiente es una instrucción específica de control de los puertos de


entrada/salida.

TRIS f ;carga el tristate control, TRISf = W

Esta instrucción (TRIState) carga el registro de control de los buffers tristate de un


puerto de entrada salida (data dirección register), con el valor contenido en W. El
parámetro f debe ser la dirección de memoria interna del puerto, aunque el valor
W no será cargado en el puerto sino en el registro de tristate del mismo. Los
valores válidos para f son 4 y 5 en los 16C54/56 y 4, 5 y 6 en los 16C55/57. Esta
instrucción no afecta ningún bit de la palabra de estado.

La siguiente instrucción sirve para programar el registro OPTION que controla el


RTCC y prescaler

OPTION ;carga el registro OPTION, OPTION = W

El registro OPTION no es accesible como memoria interna y solo se lo puede


programar con esta instrucción. Esta instrucción no afecta ningún bit de la palabra
de estado.

La instrucción que sigue borra el contador del watch dog timer. Este registro
tampoco está accesible como memoria, y esta es la única instrucción que lo
modifica.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 209


SISTEMAS DIGITALES

CLRWDT ;borra el watch dog timer, WDT = 0

Esta instrucción, además, coloca en uno los bits PD (power down) y TO (time-out)
de la palabra de estado.

La siguiente es una instrucción especial de control del microcontrolador que lo


pone en el modo power down. En este modo el microprocesador se detiene, el
oscilador se apaga, los registros y puertos conservan su estado, y el consumo se
reduce al mínimo. La única forma de salir de este estado es por medio de un reset
o por time-out del watch dog timer.

SLEEP ;coloca el μC en modo sleep, WDT = 0

Esta instrucción, además, borra el bit PD (power down) y setea el bit TO (time-out)
de la palabra de estado.

Resumen de instrucciones (clasificación según el fabricante en tres grupos):

En esta tabla de resumen del conjunto de instrucciones se pueden observar los


mnemónicos, la explicación, el número de ciclos, el código de máquina y los bits
afectados del registro STATUS para cada una de las instrucciones.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 210


SISTEMAS DIGITALES

Modos de direccionamiento.

Direccionamiento de la memoria de datos (RAM).


La memoria interna se direcciona en forma directa por medio de los 5 bits “f”
contenidos en las instrucciones que operan sobre registros. De esta manera se
puede direccionar cualquier posición desde la 00 a la 1F. Como se vio en el
capítulo correspondiente a los mapas de memoria, las direcciones 10 a 1F
corresponden a los bancos de registros, por lo tanto, en los microcontroladores
que tengan más de un banco, antes de acceder a alguna variable que se
encuentre en esta zona, el programador deberá asegurarse de haber programado
los bits de selección de banco en el registro FSR. Los registros especiales y de
uso general de la posición 00 a la 0f están presentes en todos los PIC16C5X, al
igual que el banco 0 de registros. Los bancos 1, 2 y 3 de registros están presentes
solo en el 16C57.

El registro FSR, además de servir para seleccionar el banco activo, sirve como
puntero para direccionamiento indirecto. La posición 00 del mapa de RAM es la
llamada dirección indirecta. Sí en cualquier instrucción se opera con la dirección
00, en realidad se estará operando con la dirección a donde apunte el contenido
del FSR. Por ejemplo si el FSR contiene el valor 14, una instrucción que opere
sobre la dirección 0, operara en realidad sobre la dirección 14. Se puede decir en
este ejemplo que la posición 14 de memoria fue direccionada en forma indirecta a
través del puntero FSR.

Ejemplo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 211


SISTEMAS DIGITALES

El direccionamiento indirecto es muy útil para el procesamiento de posiciones


consecutivas de memoria, como en el ejemplo, o para el direccionamiento de
datos en subrutinas.

Direccionamiento de la memoria de programa (EPROM, OTP).


La instrucción GOTO dispone solo de 9 bits en el código de operación para
especificar la dirección de destino del salto. Al ejecutar una instrucción GOTO el
microprocesador toma los dos bits que restan para completar la dirección de 11
bits, de los bits 5 y 6 de la palabra de estado. Estos últimos son llamados bits de
selección de página (PA0 y PA1). El programador deberá asegurarse de que estos
dos bits tengan el valor correcto antes de toda instrucción GOTO. Ver figura.

Deberá tenerse en cuenta además que es posible avanzar de una página a otra en
forma automática cuando el PC se incrementa. Esto ocurre si el programa
empieza en una página y sigue en la siguiente. Sin embargo, al incrementarse el
PC desde la última posición de una página a la primera de la siguiente, los bits
PA0 y PA1 no se modifican, y por lo tanto sí se ejecuta una instrucción GOTO,
CALL o alguna que actúe sobre el PC, esta producirá un salto a la página anterior,
a menos que el programador tenga la precaución de actualizar el valor de dichos
bits. Por este motivo es conveniente dividir el programa en módulos o rutinas que
estén confinados a una página.

En el caso de la instrucción CALL, el direccionamiento se complica un poco más,


ya que la misma solo dispone de 8 bits para especificar la dirección de destino
salto. En este caso también se utilizan los mismos bits de selección de página
para completar los bits décimo y decimoprimero de la dirección, pero falta el
noveno bit. En estas instrucciones este bit se carga siempre con 0, lo que implica
que solo se pueden realizar saltos a subrutina a las mitades inferiores de cada
página. En este caso también el programador deberá asegurarse que el estado de
los bits PA0 y PA1 sea el correcto al momento de ejecutarse la instrucción. Ver
figura.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 212


SISTEMAS DIGITALES

Las instrucciones que operan sobre el PC como registro y alteran su contenido


provocando un salto, responden a un mecanismo muy similar al de las
instrucciones CALL para la formación de la dirección de destino. En este caso los
bits 0 a 7 son el resultado de la instrucción, el bit 8 es 0 y los bits restantes se
toman de PA0 y PA1.

Este mecanismo se llama paginado, y a pesar de que representa una


complicación bastante molesta para el programador, resulta muy útil ya que
permite ampliar la capacidad de direccionamiento de memoria de programa para
las instrucciones de salto.

HERRAMIENTAS DE DESARROLLO.

UNA MIRADA RÁPIDA AL MPLAB.

¿Qué es el MPLAB?
EL MPLAB es un “Entorno de Desarrollo Integrado “(Integrated Development
Environment, IDE) que corre en “Windows “, mediante el cual Usted puede
desarrollar aplicaciones para los microcontroladores de las familias PIC 16/17.

EL MPLAB le permite a Usted escribir, depurar y optimizar los programas


(firmware) de sus diseños con PIC 16/17. EL MPLAB incluye un editor de texto, un
simulador y un organizador de proyectos. Además, el MPLAB soporta el emulador
PICMASTER y a otras herramientas de desarrollo de Microchip como el
PICSTART - Plus.

¿De qué forma le ayuda el MPLAB?

Con el MPLAB Usted puede:


• Depurar sus programas fuente.
• Detectar errores automáticamente en sus programas fuente para editarlos.
• Depurar los programas utilizando puntos de corte (breakpoints) mediante
valores de los registros internos.
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 213
SISTEMAS DIGITALES

• Observar el flujo del programa con el simulador MPLAB -SIM, o seguirlo en


tiempo real utilizando el emulador PICMASTER.
• Realizar medidas de tiempo utilizando un cronómetro.
• Mirar variables en las ventanas de observación.
• Encontrar respuestas rápidas a sus preguntas, utilizando la Ayuda en línea del
MPLAB.

LAS HERRAMIENTAS DEL MPLAB.


El Organizador de Proyectos (Proyect Manager).

El organizador de proyectos (Proyect Manager) es parte fundamental de MPLAB.


Sin crear un proyecto Usted no puede realizar depuración simbólica. Con el
Organizador de Proyectos (Proyect manager) puede utilizar las siguientes
operaciones:

• Crear un proyecto.
• Agregar un archivo de programa fuente de proyecto.
• Ensamblar o compilar programas fuente.
• Editar programas fuente.
• Reconstruir todos los archivos fuente, o compilar un solo archivo.
• Depurar su programa fuente.

Software ensamblador:
El software ensamblador que presenta Microchip viene en dos presentaciones,
una, para entorno DOS llamado MPASM.EXE y la otra, para entorno Windows
llamado
MPASMWIN.EXE

Las dos presentaciones soportan a TODOS los microcontroladores de la familia


PIC de Microchip.

El conjunto de instrucciones de los microcontroladores PIC es en esencia la base


del lenguaje ensamblador soportado por este software.

Directivas de uso frecuente:


Son instrucciones para el compilador.

#DEFINE
ej. #define <nombre> [<valor a remplazar>]
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 214
SISTEMAS DIGITALES

explicación: declara una cadena de texto como substituto de otra

END
ej. end
explicación: indica fin de programa

EQU
ej. status equ 05
explicación: define una constante de ensamble

INCLUDE
ej. include <PIC16F84.h>
explicación: incluye en el programa un archivo con código fuente

ORG
ej. org 0x100
explicación: ensambla a partir de la dirección especificada

Para información más completa referirse a la guía rápida del MPASM.

Una vez instalado adecuadamente el MPLAB, para realizar la simulación de un


programa deben seguirse los siguientes pasos:

Edite en un archivo de texto el siguiente programa:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 215


SISTEMAS DIGITALES

Vista típica del entorno MPLAB.


Como en la mayoría de las aplicaciones Windows la pantalla se divide en varias
secciones:

1. Barra de título: Se observa el nombre del proyecto.


2. Barra de menús: Acceso a las diferentes opciones del entorno.
3. Barra de herramientas: Cada ícono ejecuta las acciones correspondientes.
4. Barra de estados: Indica el estado del entorno y sus ventanas

Simulación:
1. Resetear el procesador (menú Debug...Run...Reset) o con F6 o con el ícono
correspondiente en la barra de herramientas.
2. Crear una nueva ventana donde se incluyan las variables que queremos tener
en cuenta (Window...New Watch Window).
3. Empezar a correr paso a paso el programa haciendo el seguimiento detallado
de todos y cada uno de los pasos (menú Debug...Run...Step) o con la tecla F7 o
con el ícono correspondiente en la barra de herramientas.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 216


SISTEMAS DIGITALES

El proceso de simulación nos permite detectar y corregir problemas de lógica,


problemas de situaciones que no hayamos tenido en cuenta que son errores que
no pueden ser detectados en el momento del ensamble del programa.

Nota: El programa MPLAB puede obtenerse en forma gratuita de la dirección:


http://www.microchip.com/10/Tools/mTools/MPLAB/index.htm

Subrutinas y llamadas.

IMPORTANCIA DE LAS RUTINAS (*)


La mayoría de los microcontroladores incluyen en su repertorio de instrucciones
algunas que permiten saltar a una rutina y, cuando se complementa su ejecución,
retornar al programa principal.

El empleo de subrutinas aporta muchas ventajas entre las que se destacan las
siguientes:

1. Se pueden escribir como subrutinas secciones de código y ser empleadas en


muchos programas (por ejemplo, la subrutina de exploración de un teclado).
2. Dan a los programas un carácter modular, es decir, se pueden codificar
diferentes módulos para usarlos en cualquier programa.
3. Se reduce notablemente el tiempo de programación, la detección de errores,
usando repetidamente una subrutina.
4. El código es más fácil de interpretar, dado que las instrucciones de las
subrutinas no aparecen en el programa principal. Solo figuran las llamadas
CALLs.

LAS INSTRUCCIONES CALL Y RETURN (*).


La instrucción CALL (llamada la subrutina) consigue que la ejecución del programa
continúe en la dirección donde se encuentra la subrutina a la que hace referencia.
Es similar a GOTO pero coloca en la pila la dirección de la siguiente instrucción
que se debe ejecutar después de la CALL.

La subrutina finaliza con la instrucción RETURN (Retorno de la subrutina) que


retoma la dirección guardada en le pila y la coloca en el contador del programa PC
continuando el flujo de control con la instrucción que sigue a la CALL.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 217


SISTEMAS DIGITALES

En la familia PIC de gama media la pila tiene ocho niveles de memoria del tipo
FIFO
(Primero en entrar, último en salir). Si se produce la llamada a una subrutina
durante la ejecución de otra subrutina, la dirección de retorno de esta segunda es
colocada en la cima de la pila sobre la dirección anterior. Esta segunda dirección
es la primera en salir de la pila mediante la instrucción RETURN.

Con la pila de ocho niveles, una subrutina puede llamar a otra y ésta, a su vez,
llamar a otra hasta un máximo de ocho. La gama baja sólo puede realizar dos
llamadas de este tipo al poseer una pila de sólo dos niveles.

Las subrutinas deben colocarse al comienzo de las páginas debido a que el bit 8
del contador del programa es puesto a 0 por la instrucción CALL (o por cualquier
instrucción que modifica el PC). Las subrutinas deben colocarse en la mitad inicial
de las páginas (las 256 palabras).

Consulta a tablas En muchas ocasiones es necesario para un programador


efectuar una coincidencia entre alguna cantidad de valores conocidos y un número
desconocido que se tiene como índice, por ejemplo, basados en el contenido de
una posición de memoria RAM (índice) se puede obtener de una serie consecutiva
de datos almacenados en memoria de programa (a estos datos "conocidos"
almacenados se le denomina tabla), el dato desplazado n posiciones adelante del
comienzo de esta tabla, este número n corresponde al contenido de la posición de
memoria RAM o índice.

Programa ejemplo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 218


SISTEMAS DIGITALES

Finalmente y luego de observar el ejemplo anterior, podemos anotar que antes de


hacer el llamado a la subrutina tabla, se debe cargar en el registro de trabajo W el
valor del índice y una vez se retorne de dicha subrutina, es en este mismo registro
de trabajo en donde se obtiene el resultado de la consulta a la tabla (vemos que la
sucesión de instrucciones retlw k se encuentra en memoria de programa).

Conversión a ASCII.
El conjunto de caracteres ASCII (American Standard Code for Information
Interchange) es el código de representación en hexadecimal del alfabeto, los
números del 0 al 9 y los principales símbolos de puntuación y algunos caracteres
de control. Ver Tabla.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 219


SISTEMAS DIGITALES

Como se observa en la tabla, podemos dividir a cada carácter representado en


hexadecimal como una parte alta de 3 bits (Most significant character) y una
parte baja de 4 bits (Least significant character), o sea, la representación total
se hace con solo 7 bits.

De los problemas usuales en la programación está el convertir un número


hexadecimal representado en 8 bits a dos caracteres ASCII los cuales sean la
representación de dicho número para permitir la visualización en terminales de
datos tales como Monitores de video o Impresoras entre otras.

Ejemplo:
Se quiere representar el número hexadecimal 70h cuya representación en binario
es 01110000b como los dos caracteres ASCII "7" y "0", gráficamente:

Transportándolo a un programa:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 220


SISTEMAS DIGITALES

Se debe tener en cuenta que el ejemplo anterior funciona en forma correcta


siempre y cuando lo nibbles del número hxadecimal a convertir, estén en el rango
de 0 a 9, debe realizarse un tratamiento adicional a estos si se encuentran en el
rango de Ah a Fh. Realice en un programa esta condición.

Ramificación múltiple.
Cuando se tiene que solucionar un diagrama de flujo como el de la figura en el
cual tenemos tres posibles respuestas a una pregunta, se plantean las soluciones
aquí presentadas.

Una de las formas de solucionar en un programa este problema es:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 221


SISTEMAS DIGITALES

Determinando para la opción 1, la opción 2 y la opción 3 un valor consecutivo


como:

Uno de estos posibles valores llevarlos a W y en una parte del programa tratarlos
así:

Solución #2
Otra forma posible es comparando una por una los valores de las diferentes
opciones almacenadas en memoria RAM en una variable llamada OPCIÓN.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 222


SISTEMAS DIGITALES

Aunque este último método es más largo que el anterior, permite que los valores
de las diferentes opciones no sean consecutivos entre sí.

Aritmética.
Dentro de los microcontroladores PIC se cuenta con instrucciones aritméticas tales
como ADDWF y ADDLW, SUBWF y SUBWF, para efectuar operaciones de suma
y resta respectivamente e instrucciones tales como RLF y RRF para realizar
operaciones de rotación a través del carry con las cuales se pueden realizar
divisiones entre 2 y multiplicaciones por 2 respectivamente, hasta este punto

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 223


SISTEMAS DIGITALES

podríamos ver el conjunto de instrucciones un poco limitado, sin embargo,


utilizando técnicas avanzadas de programación podemos obtener operaciones
más complejas.

Temporización Existen momentos dentro de la programación en los que se


necesita realizar un retardo de tiempo. Los retardos de tiempo se pueden obtener
mediante hardware o por medio de ciclos repetitivos basados en software. La
precisión de los retardos generados por software depende en esencia del tipo de
oscilador que se utilice como base de tiempo en el microcontrolador, la mayor
precisión se obtiene de los cristales de cuarzo.

La velocidad a la que se ejecuta el código (instrucciones) depende de la velocidad


del oscilador y del número de ciclos de máquina ejecutados. Las instrucciones
necesitan 1 o 2 ciclos de máquina para ser ejecutadas. Un ciclo de máquina es un
tiempo utilizado por el microcontrolador para realizar sus operaciones internas y
equivale a cuatro ciclos del oscilador. Por tanto: Tciclo máq.= 4 * Tosc ___ Tciclo
máq = 4 / fosc El número de ciclos de máquina utilizados por una instrucción para
ser ejecutada depende de la misma. Las instrucciones que modifican el contador
de programa necesitan dos (2) ciclos de máquina, mientras que todas las demás
necesitan tan solo uno (1).

El hecho de generar ciclos repetitivos por medio del programa y calcular el tiempo
total de ejecución nos puede ayudar a generar tiempos precisos.

El ciclo repetitivo de retardo de la figura se tomará un número de ciclos así:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 224


SISTEMAS DIGITALES

Por cada instrucción agregada debe incluirse en la cuenta total el número de ciclos
correspondiente a dicha instrucción.

Trabajando a 4 Mhz y asumiendo que k se remplaza por el valor 15d en el ejemplo


tendríamos un tiempo igual a:

Número de ciclos = (3*15) +1 = 46 ciclos de máquina, Tciclo máq.= 4 / 4 Mhz = 1 μ


segundo, el tiempo total del ejemplo entonces será 46 μsegundos.

Operaciones Entrada / Salida Objetivos:


• Verificar el modo en el que se debe programar el sentido de los puertos.
• Realizar la entradas por puerto mediante la lectura de interruptores "dip-switch"
• Escribir sobre un puerto de salida visualizando sobre LEDs

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 225


SISTEMAS DIGITALES

En el proceso de utilización de un puerto debe tenerse en cuenta como primera


instancia la programación del sentido en que dicho puerto va a utilizarse. Una vez
energizado el microcontrolador todos y cada uno de los puertos quedan
programados como entrada, entonces, tan solo deben programarse los que se
quieren utilizar como salida.

En el hardware de la figura se observa que se han colocado 4 dip switch al puerto


B y estos no poseen resistencia de pull up lo cual nos obliga a habilitar las
resistencias internas con las que cuenta el microcontrolador PIC16F84, el
programa debe entonces en un repetitivo infinito leer el nivel lógico que colocan
los switch y pasar este resultado al puerto A complementando el estado de la
información puesto que de acuerdo a la disposición de los LEDs un estado bajo en
el puerto enciende el LED correspondiente y por ende un estado alto en el puerto,
apaga el LED.

Programa:

En un proceso de lectura de interruptores, casi siempre cuando se detecta un


cambio en el estado, es aconsejable amortiguar la lectura de estos con un retardo
de software.

Dependiendo de la calidad del interruptor el tiempo del retardo puede estar


alrededor de 50 ms. En el caso de este ejercicio en particular no es requerido
puesto que un cambio en el interruptor debe reflejarse inmediatamente en el

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 226


SISTEMAS DIGITALES

puerto de salida. Se debe tener en cuenta que nunca una entrada debe quedar al
aire puesto que los microcontroladores PIC son hechos con tecnología CMOS. Es
por este motivo que en el programa se programó la parte alta del puerto B como
salida.

Visualización 7 segmentos Objetivos:


• Realizar la decodificación de BCD a 7 segmentos por software.
• Multiplexar en el tiempo la información para 2 dígitos 7 segmentos.

Procedimiento:
El hecho de visualizar datos en display de 7 segmentos de la forma en que se
muestra en la figura obliga a interconectar entre si los pines correspondientes a los
segmentos del dígito 1 (d1) con los pines de los segmentos del dígito 2 (d2), de
esta manera se ahorran líneas de conexión.

El método utilizado para la visualización dinámica consiste en visualizar cada


dígito durante un instante de tiempo y a una velocidad tal que gracias a la
persistencia del ojo el efecto final es que todos los dígitos están encendidos al
tiempo.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 227


SISTEMAS DIGITALES

Diagrama de flujo para visualización dinámica en display 7 segmentos de


dos dígitos.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 228


SISTEMAS DIGITALES

Listado del programa del display en assembler.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 229


SISTEMAS DIGITALES

El listado anterior debe colocarse en un archivo llamado display.asm, en el


programa que se va a utilizar incluirlo con una línea del tipo: #include
<display.asm> y llamarlo desde el programa con una línea: call display sin olvidar
cargar previamente las variables dato1 y dato2 con los valores hexadecimales
que se desea visualizar.

Servicio de interrupción Objetivos:


• Encender y apagar un LED como respuesta a un estímulo de interrupción.
• Determinar la forma en que debe colocarse el código en el programa fuente
para aceptar y atender una rutina de interrupción.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 230


SISTEMAS DIGITALES

Procedimiento:
Para ejemplificar el uso de un servicio de interrupción se ha dispuesto el hardware
de la figura 4.3.1 en el cual se decide utilizar la interrupción externa INT (RB0) en
un PIC16F84, esta interrupción está vectorizada a la dirección de memoria de
programa 004h, dentro de la atención a esta interrupción se opta por
complementar el estado del LED colocado al puerto RA0 cada vez que esta sea
atendida.

Diagrama electrónico:

Diagrama de flujo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 231


SISTEMAS DIGITALES

Listado del programa en assembler:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 232


SISTEMAS DIGITALES

El símbolo $ significa la dirección de memoria de programa en donde se encuentra


éste (ciclo infinito de espera).

Debe notarse la ubicación de la rutina de interrupción a partir de la posición de


memoria de programa 004h.

Conversión A/D Objetivos:


• Realizar la observación práctica de la utilización del conversor A/D en un
PIC16C71.
• Configurar uno de los canales de entrada al conversor A/D (canal 0)

Procedimiento:
Para realizar la observación práctica mencionada en los objetivos, se realiza el
montaje de un voltímetro digital AC el cual utiliza el canal análogo 0 como entrada
de la muestra DC tomada de un divisor de voltaje. De acuerdo a la relación del
divisor de tensión conformado con el reóstato Ajuste y de las resistencias, debe
obtenerse un voltaje máximo de 5 voltios en el pin RA0, correspondiente a la
máxima entrada de voltaje alterno colocado en VAC in.

Diagrama eléctrico:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 233


SISTEMAS DIGITALES

Listado del programa en assembler.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 234


SISTEMAS DIGITALES

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 235


SISTEMAS DIGITALES

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 236


SISTEMAS DIGITALES

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 237


SISTEMAS DIGITALES

El programa presentado hace uso de los recursos que posee el PIC16C71 el cual
posee 4 canales análogos y un conversor A/D de 8 bits; para mayor información
ver las especificaciones técnicas de este dispositivo.
Comunicación serial.

Objetivos:
• Verificar la comunicación serial síncrona y asíncrona.
• Comprobar los algoritmos de comunicación serial.

En vista de que algunos de los elementos de la familia PIC16CXXX no poseen


periféricos de comunicación serial, este capítulo hará referencia al desarrollo del
algoritmo como tal simulando los pines de comunicación serial con puertos del
microcontrolador.

Comunicación serial síncrona:


La comunicación síncrona se caracteriza porque los pulsos de sincronización
deben ser transmitidos a lo largo de la línea de comunicación entre el transmisor y
el receptor.

Dentro de los varios tipos de comunicación serial síncrona vamos a notar el


protocolo I2C o de dos hilos y el protocolo SPI o de tres hilos.

Nomenclatura de los pines de comunicación (síncronos).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 238


SISTEMAS DIGITALES

El bus I2C es un bus diseñado para que sobre éste puedan colocarse varios
dispositivos dentro de la misma tarjeta electrónica (comunicación multipunto), cada
dispositivo tendrá una dirección lógica asignada físicamente mediante los pines
A0, A1 y A2 de acuerdo al nivel lógico al que estos sean alambrados. Ver estos
pines en la figura a.

Bits de START y STOP del protocolo I2C.


En la figura anterior se observa la forma en que las señales SCL y SDA deben ser
manejadas. Para iniciar la comunicación sobre un dispositivo I2C debe realizarse
la secuencia denominada bit de START que consiste en pasar la línea de datos
SDA de nivel alto a bajo mientras que la línea SCL permanece en alto. Para la
culminar la comunicación con el dispositivo I2C debe ejecutarse la secuencia
denominada bit de STOP la cual consiste en pasar la línea de datos SDA de nivel
bajo a alto mientras que la línea de reloj SCL permanece en alto. Un bit de datos
es aceptado por el dispositivo mientras que sobre la línea de datos SDA
permanece el nivel adecuado al bit en cuestión, y sobre la línea de reloj SCL se
lleva a cabo un pulso, es decir, el paso de nivel de bajo a alto y luego de alto a
bajo. Los tiempos implicados en esta secuencia dependen básicamente del
fabricante del dispositivo.

Temporización en el bus I2C SPI.


El bus SPI es un bus diseñado para que sobre éste se coloque un dispositivo
maestro y un dispositivo esclavo (comunicación punto a punto) ver figura b. Con

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 239


SISTEMAS DIGITALES

relación al bus I2C podemos notar que éste soporta mayor velocidad de
comunicación.

El dispositivo SPI posee como observamos la figura, una línea de selección CS la


cual debe pasar al nivel lógico activo (en este caso bajo) para poder realizar la
comunicación con el dispositivo. Desde este punto de vista podríamos colocar
sobre un bus de este tipo varios dispositivos, pero utilizando un dispositivo
decodificador adicional.

Otra línea podemos observar es la línea HOLD la cual permite al procesador


detener momentáneamente la comunicación, ver figura.

Utilización de la línea HOLD

Comunicación serial asíncrona:


En este tipo de comunicación tanto el transmisor como el receptor tienen incluido
el reloj de sincronización de tal forma que no se transmite a lo largo de la línea de
comunicación.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 240


SISTEMAS DIGITALES

Nomenclatura de los pines básicos (asíncronos)

Exploración de teclado.

Hardware correspondiente al experimento de exploración de teclado

Para la lectura del teclado debemos tener en cuenta la disposición de las filas y las
columnas como se observa en la figura con la cual realizando la operación allí
descrita se debe obtener un número consecutivo de las teclas en la organización
aquí mostrada. Luego, mediante el acceso a una tabla se decodifica la tecla leída
para obtener el patrón final observado en el diagrama del hardware.

Ej. Sí se oprimiese la tecla C del teclado, el código de exploración correspondiente


a esta es el 13d que debe ser representado como el 1100b en las salidas DCBA.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 241


SISTEMAS DIGITALES

Distribución del teclado, numeración en filas y columnas y la fórmula para


hallar la tecla oprimida.
En este experimento se realiza la emulación del integrado decodificador de teclado
74C922 en cuanto a su funcionamiento, pero de acuerdo a la configuración de
hardware de la figura anterior.

Listado del programa para exploración de teclado:


list p=16f84
#include <p16f84.inc> ;archivo de encabezado por Microchip®
;
;ESTE PROGRAMA EMULA UN 74C922 DECODIFICADOR DE TECLADO
;
CONTFIL EQU 0x12 ;Contador de Filas
CONTCOL EQU 0x13 ;Contador de Columnas
COLKBD EQU 0x14 ;DATO EN COLUMNAS
Temp EQU 0x15
R1 EQU 0x16 ;Variable para Retardo
R2 EQU 0x17 ;Variable para Retardo
R3 EQU 0x18 ;Variable para Retardo
R4 EQU 0x19 ;Variable para Retardo
COUNT EQU 0x1A
CHAR EQU 0x1B ;Almacenamiento temporal SCAN
AUX EQU 0x1C ;Variable Auxiliar
#define _z STATUS,2
#define _c STATUS,0
#define OE PORTA,4
#define BANK0 bcf STATUS,RP0
#define BANK1 bsf STATUS,RP0
;
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 242


SISTEMAS DIGITALES

ORG 0x00
MAIN
BANK1
CLRF TRISA
BANK0
CLRF PORTA
NOP
NOP
Muestre
BCF OE
RUSCAN
CALL SCAN
XORLW 0x00 ;espera una Tecla
BTFSC _z
GOTO Muestre
MOVWF PORTA
MOVLW .50
MOVWF COUNT
LOOPSCAN
CALL DEL5MS
DECFSZ COUNT,1
GOTO LOOPSCAN
GOTO RUSCAN
;************************************************************************
***
DEL5MS
MOVLW .12
MOVWF R1
MOVLW 7
MOVWF R2
MOVLW 1
MOVWF R3
MOVLW 1
MOVWF R4
LOOPDEL5
DECFSZ R1,F
GOTO LOOPDEL5
DECFSZ R2,F
GOTO LOOPDEL5
DECFSZ R3,F
GOTO LOOPDEL5

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 243


SISTEMAS DIGITALES

DECFSZ R4,F
GOTO LOOPDEL5
NOP
RETURN
;***************************************************************
;RETORNA W=00 NO HAY TECLA OPRIMIDA,
;RETORNA W=COD SI TECLA OPRIMIDA.
;**************************************************************
SCAN
BANK1
MOVLW 0x0F ;el puerto que lee teclado <0:3> filas (in)
MOVWF TRISB
BANK0
MOVLW 0x01
MOVWF CONTCOL
MOVLW 0x7F
MOVWF COLKBD
RSTFIL
CLRF CONTFIL ;RESET CONT FILAS
MOVF COLKBD,W
MOVWF PORTB ;COLOCAR UN CERO EN COLUMNAS
nop
nop
nop
MOVF PORTB,W ;LEER FILAS DE TECLADO
MOVWF AUX
RLF AUX,F
RLF AUX,F
RLF AUX,F
RLF AUX,F
TESTFIL
RLF AUX,F
BTFSS _c
GOTO ACERTADO
INCF CONTFIL,F
MOVF CONTFIL,W
XORLW 0x04
BTFSS _z
GOTO TESTFIL
BSF _c
RRF COLKBD,F ;rotacion del cero a colocar

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 244


SISTEMAS DIGITALES

INCF CONTCOL,F
MOVF CONTCOL,W
XORLW 0x05
BTFSS _z
GOTO RSTFIL
RETLW 0x00
ACERTADO
MOVF CONTFIL,W
XORLW 0x00
BTFSC _z
GOTO ESCERO
MOVLW 0x00
MUL
ADDLW 0x04
DECFSZ CONTFIL
GOTO MUL
SUMACOL
ADDWF CONTCOL,W
CALL TABKBD
RETURN
TABKBD
addwf PCL,F
retlw 0 ;inválido
retlw 0x10
retlw 0x11
retlw 0x12
retlw 0x13
retlw 0x14
retlw 0x15
retlw 0x16
retlw 0x17
retlw 0x18
retlw 0x19
retlw 0x1A
retlw 0x1B
retlw 0x1C
retlw 0x1D
retlw 0x1E
retlw 0x1F
ESCERO
MOVLW 0x00

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 245


SISTEMAS DIGITALES

GOTO SUMACOL
end

Regulación de velocidad de motor D.C.


Por medio de la presente práctica se pretende hacer la variación de la velocidad a
un motor DC aplicando un voltaje variable a este por medio del método de
modulación por ancho de pulso o PWM.

Onda rectangular y sus características.


El método de modulación por ancho de pulso está basado en la obtención de un
voltaje DC variable a partir de una onda rectangular de frecuencia constante y
ciclo útil variable, de tal manera que:
Vdc = (Ciclo útil) * Vm ó Vdc = (ton/T) * Vm

Siendo:
ton: el tiempo en alto de la onda cuadrada
T: el periodo de la onda rectangular (T = ton + toff)
Vm: el voltaje máximo de la onda

Se puede concluir a partir de esta simple ecuación que sí hacemos variar el ciclo
útil de la onda rectangular obtendremos una variación en el voltaje promedio y sí
este es aplicado como alimentación del motor DC, el efecto será el de la variación
de la velocidad.

Para la aplicación de este principio nos basamos en el siguiente circuito:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 246


SISTEMAS DIGITALES

El programa que comanda sobre este Hardware funciona basado en el pulsador


S1 como control de 10 pasos discretos de velocidad los cuales son indicados
sobre el display 7 segmentos (0 a 9) y cuyo efecto final se observa directamente
en la velocidad del motor M1.
Listado del programa
LIST P= 16F84
#INCLUDE<P16F84.INC>
DIG EQU 0CH
VROFF EQU 0DH
VRON EQU 0EH
CONT1 EQU 0FH
CONT2 EQU 10H
X EQU .250
Y EQU .12
;**************************************************************
***********
INICIO
BSF STATUS,RP0 ; PROGRAMACIÓN DEL SENTIDO DE PUERTOS
CLRF TRISB
MOVLW B'11100001'
MOVWF TRISA
BCF STATUS,RP0

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 247


SISTEMAS DIGITALES

MOVLW 00H
MOVWF DIG
BCF PORTA,4
DIS_LOOP:
CALL DISPLAY ; VISUALIZACIÓN DE DIGITO
BTFSC PORTA,0 ; LA TECLA ESTA OPRIMIDA?
GOTO RMOTOR
CALL RETAR ; TIEMPOS DE ANTIREBOTE
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
CALL RETAR
INCF DIG,1
MOVLW .11
XORWF DIG,0
BNZ RMOTOR
CLRF DIG
RMOTOR
CALL MOTOR
GOTO DIS_LOOP
;**************************************************************
***********
DISPLAY
MOVF DIG,0
CALL TABLA
MOVWF PORTB
RETURN
;**************************************************************
***********
TABLA: ; TABLA DE DATOS PARA DECODIFICACIÓN A SIETE SEGMENTOS
ADDWF PCL,1
RETLW 0x3F
RETLW 0x06
RETLW 0x5B
RETLW 0x4F
RETLW 0x66
RETLW 0x6D

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 248


SISTEMAS DIGITALES

RETLW 0x7D
RETLW 0x07
RETLW 0x7F
RETLW 0x6F
RETLW 0x77
;**************************************************************
************
MOTOR: ; ACTIVA MOTOR CON TIEMPOS: Ton Y Toff
MOVF DIG,0
SUBLW .10
MOVWF VROFF
CLRW
XORWF DIG,0
BZ OFFMOTOR
MOVF DIG,0
MOVWF VRON
BSF PORTA,4 ; ENCIENDE EL MOTOR
MOTOR1:
CALL RETAR
DECFSZ VRON,1
GOTO MOTOR1
OFFMOTOR
BCF PORTA,4 ; APAGA MOTOR
MOVF DIG,0
XORLW .10
BZ MOTOR3
MOTOR2
CALL RETAR
DECFSZ VROFF,1
GOTO MOTOR2
MOTOR3
RETURN
;**************************************************************
*************
RETAR
MOVLW X
MOVWF CONT1
CICLO1
MOVLW Y
MOVWF CONT2
CICLO2
DECFSZ CONT2,1
GOTO CICLO2

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 249


SISTEMAS DIGITALES

DECFSZ CONT1,1
GOTO CICLO1
RETURN
;**************************************************************
**************
END

Periféricos Inteligentes: Módulo LCD


Los módulos LCD están compuestos básicamente por una pantalla de cristal
líquido y un circuito microcontrolador especializado el cual posee los circuitos y
memorias de control necesarias para desplegar el conjunto de caracteres ASCII,
un conjunto básico de caracteres japoneses, griegos y algunos símbolos
matemáticos por medio de un circuito denominado generador de caracteres. La
lógica de control se encarga de mantener la información en la pantalla hasta que
ella sea sobre escrita o borrada en la memoria RAM de datos.

La pantalla de cristal líquido está conformada por una o dos líneas de 8, 16, 20, 24
ó 40 caracteres de 5x7 pixels c/u.

El microcontrolador especializado puede ser el modelo HITACHI 44780, o el


modelo
HITACHI 44100. También existen módulos LCD con IC's implantados
directamente sobre el PCB (POWERTIP®).

Estos módulos poseen a través de estos CI's una interface paralela para ser
comandada desde un microcontrolador, microprocesador o inclusive se puede
realizar el control de este desde el puerto paralelo de un PC.

El microcontrolador y la pantalla de cristal líquido están colocados sobre un


circuito impreso (PCB) y se interconectan con el mundo exterior (μC, μP o PP del
PC) a través de un conector de 14 pines, el cual puede obtenerse en dos
presentaciones: una línea y dos líneas teniendo la siguiente distribución:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 250


SISTEMAS DIGITALES

Descripción de pines de los módulos LCD

CÓMO HACER CIRCUITOS IMPRESOS.


Se hará referencia al método manual, de los calcos y el marcador dado que para
aprender es el más simple.

Tal como se puede ver en la foto un circuito impreso no es más que una placa
plástica (que puede ser de fenólico o pertinax) sobre la cual se dibujan "pistas" e
"islas" de cobre las cuales formaran el trazado de dicho circuito, partiendo de un
dibujo en papel o de la imaginación.

Para empezar se tiene que decidir qué material se va a utilizar. Si se trata de un


circuito donde haya señales de radio o de muy alta frecuencia tendremos que
comprar placa virgen de pertinax, que es un material poco alterable por la
humedad. De lo contrario, para la mayoría de las aplicaciones, con placa de
fenólico es suficiente.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 251


SISTEMAS DIGITALES

Cada trazo o línea se denomina pista, la cual puede ser vista como un cable que
une dos o más puntos del circuito. Cada círculo o cuadrado con un orificio central
donde el terminal de un componente será insertado y soldado se denomina isla.

Cuando uno compra la placa de circuito impreso virgen ésta se encuentra


recubierta completamente con una lámina de cobre, por lo que, para formar las
pistas e islas del circuito habrá que eliminar las partes de cobre sobrantes.

Además de pistas e islas sobre un circuito impreso se pueden escribir leyendas o


hacer dibujos. Esto es útil, por ejemplo, para señalar que terminal es positivo,
hacia donde se inserta un determinado componente o incluso como marca de
referencia del fabricante.

Para que las partes de cobre sobrantes sean eliminadas de la superficie de la


placa se utiliza un ácido, el Percloruro de Hierro o Percloruro Férrico. Este ácido
produce una rápida oxidación sobre metal haciéndolo desaparecer pero no
produce efecto alguno sobre plástico. Utilizando un marcador de tinta permanente
o plantillas logotyp podemos dibujar sobre la cara de cobre virgen el circuito tal
como queremos que quede y luego de pasarlo por el ácido obtendremos una placa
de circuito impreso con el dibujo que queramos.

PROCEDIMIENTO:

1. Crear el original sobre papel: Lo primero que hay que


hacer es, sobre un papel, dibujar el diseño original del
circuito impreso tal como queremos que quede
terminado. Para ello podemos utilizar o bien una regla y
lápiz (y mucha paciencia) o bien un programa de diseño
de circuitos impresos. Ya sea a lápiz o por computadora
siempre hay que tener a mano los componentes
electrónicos a montar sobre el circuito para poder ver el
espacio físico que requieren así como la distancia entre
cada uno de sus terminales. Para guiarnos vamos a
realizar un simple circuito impreso para montar sobre él
ocho diodos LED con sus respectivas resistencias
limitadoras de corriente.

Este es el circuito esquemático del que hablamos, recibe cero o cinco voltios
por cada uno de los pines del puerto paralelo del PC y, a través de cada

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 252


SISTEMAS DIGITALES

resistencia limitadora de corriente iluminan ocho diodos LED. Observemos el


diagrama. Tenemos ocho entradas, cada una de ellas conectada a una
resistencia. Cada resistencia se conecta al cátodo (+) de cada diodo LED. Y
todos los ánodos (-) de los diodos LED se conectan juntos al terminal de Masa.
Vamos a utilizar diodos LED redondos de 5mm de diámetro, que son los más
comunes en el mercado.

Lo primero que haremos es colocar las islas. Para los que usan programas de
diseño de circuitos impresos por computadora las islas aparecen como "Pads".

Como se observa, no es más que una simple representación del circuito de


arriba con círculos. Luego uniremos las islas con pistas, que en los programas
suelen aparecer como "Tracks".

Algo a tener en cuenta: cuando una pista tiene que virar lo correcto es hacerlo
con un ángulo oblicuo y no a secas (90º). Si bien eléctricamente es lo mismo,
conviene hacerlo así porque al momento de atacar el cobre con el ácido es más
probable que una pista se corte si su ángulo es abrupto que si lo es suave.

Nuevamente podemos apreciar que no es más que una copia del circuito
eléctrico anterior. Imprimimos el circuito sobre un papel y paso 1 concluido.

2. Corte del trozo de circuito impreso: Esto no es más que marcar sobre la
placa virgen un par de líneas por donde con una sierra de 24 dientes por
pulgada cortaremos.

Es conveniente hacerlo sobre un banco inclinado de corte para que sea más
fácil mantener la rectitud de la línea.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 253


SISTEMAS DIGITALES

Una vez cortado el trozo a utilizar lijar


los bordes tanto de la cara de cobre
como de la otra a fin de quitar las
rebabas producidas por el corte. Con la
ayuda de un taco de madera es más
fácil de aplicar la lija.

3. Preparar la superficie del cobre: Consiste


en pulir la superficie de cobre virgen con un
bollito de lana de acero para remover
cualquier mancha, partículas de grasa o
cualquier otra cosa que pueda afectar el
funcionamiento del ácido. Recordemos que el
ácido solo ataca metal, no haciéndolo con
pintura, plástico o manchas de grasa. Por lo
que donde este sucio el cobre resistirá y
quedará sin atacar.

Como se ve en la foto es conveniente utilizar guantes de latex, del tipo utilizado


para inspección bucal, para evitar que la grasitud de los dedos tome contacto
con el cobre. La lana de acero debe ser frotada sobre la cara de cobre y
preferentemente dando círculos, para facilitar la adherencia tanto de los Pads
como de la tinta del marcador.

4. Pasar el dibujo al cobre: Consiste en hacer


que el dibujo del impreso que tenemos sobre el
papel quede sobre la cara de cobre y de alguna
forma indeleble. Adicionalmente tendremos que
tener cuidado de no tocar con nuestros dedos el
cobre para evitar engrasarlo. Es por ello que en
este paso también utilizaremos guantes de
latex, pero cuidando que no queden en ellos
restos de viruta de acero que puedan dañar el
dibujo sobre el cobre.

Para este paso requeriremos un marcador fino indeleble, uno grueso, un lápiz
blando (mina B), una o varias plantillas logotyp de islas (esto depende de la
cantidad de contactos del circuito así como del tipo de islas requeridas). Ambos

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 254


SISTEMAS DIGITALES

marcadores deben ser de tinta permanente al solvente. Hasta ahora el mejor


que hemos usado es el edding 3000.

Es conveniente, antes de usar las plantillas logotyp, probarlas sobre otra


superficie para constatar que no esté vencidas. Suele pasar que no peguen
sobre el cobre y tuvimos que hacer todos los trazos rectos con marcador y
regla. Lo mismo sucede con el marcador. Antes de aplicarlo sobre la placa
hacer un par de trazos sobre un cartón (preferentemente brilloso) a fin de
ablandar la tinta en la punta.

Para aplicar los dibujos de las plantillas colocar la misma sobre la lámina de
cobre y, con el lápiz frotar cada uno suavemente hasta que queden estampados
sobre el circuito impreso.

Para afirmarlos colocar el papel de cera que trae cada plantilla y colocarlo sobre
el dibujo recién aplicado. Pasar el dedo una o dos veces manteniendo el papel
quieto y listo, dibujo afirmado.

Si por error se aplicó un dibujo que no debía estar se lo puede quitar fácilmente
raspándolo con un cortante filoso. No hay que preocuparse porque donde se
pasó el cortante quede raspado, puesto que el cobre no quedará en esa zona
no nos interesa entonces como este antes de ser atacado.

En las islas, sobre todo en las aplicadas por plantilla, es conveniente no tapar el
punto central. Esto quedará como un pequeño orificio en el cobre que luego
servirá como guía cuando hagamos el perforado de la placa.

Para hacer los trazos con marcador se pueden utilizar reglas y regletas
plásticas caladas. Prestar cuidado cuando se apoya la regla sobre la placa para
no dañar el dibujo.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 255


SISTEMAS DIGITALES

Una vez terminado el trabajo de pasar el dibujo al cobre será conveniente


revisar el mismo a comparación con el dibujo sobre papel, para cerciorarse de
que todo está en orden.

5. Preparar el ácido: Antes de sumergir la placa en el ácido hay que tomar


algunos recaudos y precauciones. También hay que seguir algunos pasos para
que el ataque sea efectivo. Como dijimos arriba, el ácido empleado es
Percloruro de Hierro, el cual se puede comprar en cualquier comercio del rubro.

Para que el ácido funcione correctamente y pueda actuar sobre el cobre debe
estar a una temperatura comprendida entre 20 y 50 grados centígrados. Para
mantenerlo en ese rango usaremos un calefactor eléctrico a resistencia, como
el que se ve en la figura.

Cabe aclarar que al ser una resistencia de alambre esta se encuentra "viva" con
tensión de red en su recorrido, lo que obliga a separar al calefactor de la fuente
al menos un centímetro. Para ello utilizamos dos ladrillos acostados los que se
ven en la foto.

Sobre esto se coloca la fuente de aluminio, dentro del cual se colocará la batea
plástica donde verteremos el ácido. En la fuente colocar agua previamente
calentada para que el ácido se caliente por el efecto "Baño María". Entre la
fuente y la batea es conveniente colocar dos separadores para que el metal
caliente no entre en contacto directo con la batea plástica.

En la foto se observa cómo queda todo en su sitio listo para utilizar.

Es muy importante respetar el rango de temperatura de trabajo. De ser inferior a


20ºC es posible que el ácido tarde mucho o que incluso no ataque el cobre. De
estar a más de 50ºC el ácido puede entrar en hervor provocando que moléculas
de cloruro se desprendan del compuesto. De ser respiradas pueden causar
fuertes afecciones respiratorias e incluso dejar internado al que lo inhale. El sitio
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 256
SISTEMAS DIGITALES

donde se vaya a usar el compuesto deberá estar completamente ventilado, de


ser posible con aire forzado constante. Aclaraciones pertinentes: Si el ácido
toma contacto con la ropa la mancha es permanente. No se quita con nada. Si
entra en contacto con la piel, lavar con abundante agua y jabón. Si entra en
contacto con la vista lavar con solución ocular y acudir de inmediato a un
servicio de urgencia ocular. De no tratarse adecuadamente una herida por este
ácido puede causar ulceraciones en el globo ocular. Ante ingesta concurrir de
inmediato a un gastroenterólogo. En ambos casos explicar detalladamente al
profesional de que se trata el ácido para que éste pueda actuar como
corresponda.

6. Ataque químico: Una vez que el ácido está


en temperatura colocamos la placa de
circuito impreso flotando, con la cara de
cobre hacia abajo y lo dejamos así durante
15 minutos.

Ahí lo dejamos tranquilo y de no ser


estrictamente necesario nos vamos a otra
parte para evitar respirar tan feo bao tóxico. Al cabo de los 15 minutos, con un
guante de latex, levantamos la placa de circuito impreso y observamos cómo va
todo. Si es necesario sumergir la placa en agua para observar en detalle es
posible hacerlo, pero no frotar ni tocar con los dedos el dibujo para evitar
dañarlo. Si el cobre que debía irse aún permanece colocar la placa al ácido
otros 10 minutos más y repetir inmersiones de 10 minutos hasta que el circuito
impreso quede completo.

Si en alguna de las observaciones se nota que una pista corre peligro de


cortarse secar cuidadosamente solo en esa zona y aplicar marcador para
protegerla de la acción oxidante del ácido.

Una forma práctica de ver si el ácido


comenzó a "comer" el cobre es iluminando la
batea desde arriba con un potente reflector.
Si se ve la silueta de las pistas marcada es
clara señal de buen funcionamiento. Si se ve
todo opaco quiere decir que aún no comenzó
el ataque químico.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 257


SISTEMAS DIGITALES

Una vez que el ácido atacó todas las partes no deseadas del cobre sacar de la
batea, colocarla en un recipiente lleno de agua, llevarla hasta la pileta de lavar
más próxima y dejarla bajo agua corriente durante 10 minutos. Luego, secar
con papel para cocina y quitar el marcador con solvente. De ser necesario pulir
suavemente con viruta de acero.

Una vez hecho esto tendremos las pistas ya definidas sobre el impreso.

7. Prueba de continuidad: Con un probador de continuidad verificar que todas


las pistas lleguen enteras de una isla a otra. En caso de haber una pista cortada
estañarla desde donde se interrumpe hasta el otro lado y colocar sobre ella un
fino alambre telefónico. De ser una pista ancha de potencia colocar alambre
más grueso o varios uno junto a otro. Si no se tiene un probador de continuidad
una batería de 9V con un zumbador auto-oscilado en serie y un juego de puntas
para tester pueden ser de gran ayuda. Colocar todo en serie de manera que, al
juntar las puntas, se accione el zumbador. Comprobado el correcto
funcionamiento eléctrico de la plaqueta es hora de pasar al perforado.

8. Perforado: Para que los componentes puedan ser soldados se deben hacer
orificios en las islas por donde el terminal de componente pasará.

Un taladro de banco es de gran ayuda sobre todo para cuando son varios
agujeros. Para los orificios de resistencias comunes, capacitores y
semiconductores de baja potencia se debe usar una mecha (broca) de 0.75mm
de espesor. Para orificios de bornes o donde se suelden espadines o pines una
de 1mm es adecuada. Aquí será de suma utilidad atinarle al orificio central de la
isla para que quede la hilera de perforaciones lo más pareja que sea posible.

Quizás sea necesario comprar un adaptador dado que la mayoría de los


taladros de banco tienen un mandril que toma mechas desde 1.5mm en
adelante. Y luego vendrá el dolor de cabeza porque centrar el adaptador y el

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 258


SISTEMAS DIGITALES

mandril no es tarea simple. Hay que prestar atención a que este bien centrado,
porque de no estarlo el agujero saldrá de cualquier forma, si es que sale.

9. Acabado final: Con el mismo bollito de viruta de acero que veníamos


trabajando hay que quitar las rebabas de todas las perforaciones para que
quede bien lisa la superficie de soldado y la cara de componentes. Luego de
esto comprobar por última vez la continuidad eléctrica de las pistas y reparar lo
que sea necesario.

Hasta aquí hemos llegado y tenemos ahora si la plaqueta lista para soldarle los
componentes.

Siempre hay que seguir la regla de oro,


montar primero los componentes de menor
espesor, comenzando si los hay por los
puentes de alambre. Luego le siguen los
diodos, resistencias, pequeños capacitores,
transistores, pines de conexión y zócalos de
circuitos integrados. Siempre es bien visto
montar zócalos para los circuitos integrados
puesto que luego, cuando sea necesario reemplazarlos en futuras reparaciones
será un simple quitar uno y colocar otro sin siquiera usar soldador. Además, el
desoldar y soldar una plaqueta hace que la pista vaya perdiendo adherencia al
plástico y al cabo de varias reparaciones la isla sede al igual que las pistas que
de ella salen.

En la foto se observan puentes de alambre, resistencias, capacitores, zócalos


para circuitos integrados, algunos diodos LED y un cristal.
CONSTRUCCIÓN DE CIRCUITOS ÚTILES:

1) Probador de controles remotos infrarrojos: Este sencillo dispositivo permite


comprobar rápidamente si un control remoto (mando a distancia) emite la señal
infrarroja (IR).

Puede usarse cualquier fototransistor y se le puede agregar un transistor en la


salida para amplificar más la señal. Se puede armar en una caja de un remoto
viejo (conviene que sea de pocas teclas o botones, por cuidar un poco la
estética) y poner el receptor donde originalmente lleva el LED transmisor, en
lugar de alguna de sus teclas se puede poner el LED indicador de encendido

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 259


SISTEMAS DIGITALES

(D1) y en otra tecla poner el LED indicador de pulsos (D2). Debido a que el
probador puede ser afectado si tiene incidencia directa de luz, el fototransistor
(Q1) debe usar un filtro para atenuar la luz ambiente. El plástico utilizado en la
parte frontal de algunos controles puede ser apropiado.

Se coloca el remoto cerca del probador (4 o 5 Cm) y se presionan una a una las
teclas del mismo, D2 destellara mostrando la presencia de los pulsos IR. Con el
uso te familiarizas con cada tipo de remoto y su emisión normal. Tiene una
salida (AUX) para osciloscopio que te permite ver la forma de onda, porque hay
veces que emiten infrarrojo, pero están corridos de frecuencia o la señal esta
deformada.

Componentes:
Q1 - Fototransistor MRD3056 o similar
D1 - LED Verde
D2 - LED Rojo de alto brillo
C1 - Condensador 0.1uF 50V
R1 - Resistencia 330 ohms 0.25W
R2 - Resistencia 150 ohms 0.25W
SW1 - Interruptor
9V - Batería de 9V

2) Detector de fugas en condensadores: Quienes se dedican a la reparación de


equipos electrónicos, muchas veces se ven en la necesidad de verificar el
estado de la aislación de condensadores, en especial, los usados en circuitos
críticos, como fuente y salida horizontal de TV y Monitores; ya que en esos
circuitos, la más mínima "fuga" de corriente a través del dieléctrico del
condensador, puede ocasionar todo tipo de problemas. Por lo general la

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 260


SISTEMAS DIGITALES

mayoría de los óhmetros y multímetros de uso corriente, no son capaces de


medir o detectar ese tipo de "fugas" que pueden llegar a ser de unas decenas
de Megaohms (millones de ohms). En esos casos el técnico se ve obligado a
reemplazar todos los condensadores al no poder determinar cuál es el
causante.

Este sencillo instrumento puede ser construido usando el transformador de


algún viejo equipo, como algún viejo receptor de radio o tocadiscos por
ejemplo. De esos que a veces están olvidados en un rincón del taller.

El circuito es sencillo y no necesita mayor explicación. Los cables para conectar


el condensador deben ser cortos. Los condensadores deben desmontarse
totalmente del circuito para ser probados, y no deben tocarlos con la mano
durante la prueba, ya que esto puede producir una indicación errónea.

Al momento de conectarlos, se produce en la lámpara (o bombillo) de Neón un


destello de luz, durante la carga del condensador (a mayor capacidad, mayor es
el destello), para luego si el condensador está en buen estado, quedar
totalmente apagada. Si permanece encendida, el condensador tiene "fugas".

Este probador puede detectar fugas de más de 100 Megohms (100 millones de
ohm).

Atención: Cortocircuitar siempre los condensadores, después de realizar la


prueba. Pues quedan cargados con una tensión elevada, y pueden producir una
desagradable descarga al manipularlos, en especial si se trata de componentes
de cierta capacidad.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 261


SISTEMAS DIGITALES

Lista de componentes:
T1 - Transformador con primario de acuerdo a la red (120 o 220V) y secundario
de 230 a 250V x 2 (también puede usarse uno con un solo secundario de 230 a
250V, en ese caso, lógicamente, se debe usar un puente de cuatro diodos para
la rectificación).
D1 y D2 - Diodos de 1000V 1A (1N4007 o similar).
R1 - Resistencia de 470 ohm 1/2W.
R2 - Resistencia de 220 k ohm 1/2W.
C1 y C2 - Condensadores electrolíticos de 4.7mF 350V
Neón - Lámpara o bombilla de Neón

Este sencillo pero eficaz probador también sirve para detectar fugas entre
primarios y secundarios de transformadores y entre los bobinados de los
Flyback.

3) Probador de Transistores, Diodos y SCR en circuito:


Descripción General. Este instrumento permite probar transistores de NPN y
PNP, diodos y SCRs "in-situ" (en equipos desconectados por supuesto) y
también por conexión directa del componente fuera del circuito. Realiza una
prueba simple (OK, corto o abierto) del estado de diodos y transistores e indica
la polaridad del diodo o tipo del transistor PNP/NPN, si es desconocido.

Diagrama del circuito:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 262


SISTEMAS DIGITALES

Funcionamiento del probador de transistores, diodos y SCRs.


Las compuertas ICa e ICb del IC CMOS CD4093 forman un oscilador de onda
cuadrada de aproximadamente 2Hz. IC1c e IC1b invierten la polaridad de esos
2Hz. Esos dos voltajes de onda cuadrada, complementarios, son aplicados al
D.E.P. (Dispositivo En Prueba).

Para transistores la polarización de base se realiza a través de una resistencia


de 1000 ohm. Dos LEDs rojos en contra fase quedan conectados al Colector. El
flujo de corriente a través del dispositivo está limitado por la resistencia R4 de
470 Ohm. Sin D.E.P. conectado al probador, al oprimir el pulsador TEST,
ambos LEDs encenderán alternadamente.

Por consiguiente, es evidente que si el D.E.P. está:


En Corto, ambos LEDs permanecerán apagados y Abierto, ambos LEDs
encenderán.

El propósito de los dos grupos de diodos, conectados en serie con el D.E.P.


puede requerir una explicación:
Su función es permitir que el D.E.P. alcance la saturación (conducción total) en
un solo sentido, y evitar que ambos LED
permanezcan apagados cuando eso ocurre.

Recuerde este diseño prueba "en-circuito" (no


necesita desoldar ninguna conexión, para aislar
un semiconductor sospechoso).

Para probar SCRs (tiristores) y diodos, se coloca


S1 en la posición apropiada (D/SCT), en la cual
se elimina uno de los dos diodos de cada serie.
Esto es necesario porque: la caída de voltaje en
sentido directo de un diodo o SCR en buen
estado, es aproximadamente 0.7 Voltio, entonces
tres junturas en serie presentarían aproximadamente 2.1V, por lo cual ambos
LED podrían encender.

Lista de componentes electrónicos:


R1 - resistencia 1 Mohm (1.000.000 ohm).
R2 - resistencia 1 Kohm (1000 ohm).
R3 - resistencia 150 ohm.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 263


SISTEMAS DIGITALES

R4 - resistencia 470 ohm.


R5 - resistencia 100 ohm (todas las resistencias de 1/4 o 1/2W).
C1 - condensador electrolítico 2.2 uF - 16V.
D1 y D2 - LEDs rojos.
C1 - Circuito integrado CD4093 o equivalente (BU4093, NTE4093B,
ECG4093B...).
SW1 - interruptor tipo pulsador normalmente abierto.
SW2 - interruptor doble polo de dos posiciones (DPDT).
D3,..., D6 - diodos 1N4148 o similares (ECG/NTE519).
BAT - Batería 9V.

4) Probador de Teléfonos: Para el técnico electrónico que repara aparatos


telefónicos (normales o inalámbricos, contestadoras, etc.) resulta de gran
utilidad, contar con un instrumento que permita probar estos equipos sin
necesidad de estar realizando llamadas y ocupando la línea telefónica del taller
para comprobar su funcionamiento. Es decir, un instrumento que permita
alimentar el aparato en prueba como si estuviera conectado a la línea
telefónica, y realizar las comprobaciones básicas de funcionamiento: entrada de
llamada, entrada y salida de señal, etc.
Para ello existen en el mercado, instrumentos llamados: "Simuladores de línea";
diseñados específicamente para realizar la comprobación y servicio técnico de
equipos telefónicos. Sin embargo, esos instrumentos, son por lo general muy
costosos, y su adquisición no resulta rentable para muchos técnicos o talleres,
que solo reparan algún que otro teléfono o contestadora, de vez en cuando.

He aquí, como construir un sencillo probador de teléfonos, que no pretende


competir con "simuladores de línea" de uso profesional, pero sin duda puede
ser de gran ayuda en el taller.

Su diseño es muy sencillo, utiliza componentes comunes y de fácil obtención.

Con él se pueden realizar las pruebas básicas de funcionamiento de teléfonos


(normales o inalámbricos), contestadoras automáticas e incluso (parcialmente)
equipos de Fax.

Con un poco de ingenio, el técnico podrá, si lo desea, implementarle mejoras,


para aumentar su utilidad.

Por ejemplo:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 264


SISTEMAS DIGITALES

• Agregar al circuito, un instrumento que permita medir el consumo del teléfono


en prueba, para verificar que el mismo está dentro de los valores normales,
tanto "colgado", como "descolgado".
• Remplazar SW1 por un circuito que genere automáticamente los pulsos de
llamada.
• También se podría incorporar un teclado con el circuito correspondiente para
general los tonos DTMF, para las pruebas de control remoto de
contestadoras y otros equipos.

En fin, la imaginación es el límite.

Funcionamiento.
Se conecta el aparato a probar en los terminales: "A"

Con SW2 colocado en la posición 1, al presionar SW1 se envía el pulso de


llamada, para la prueba de los circuitos detectores de llamada, o "campanilla".
IMPORTANTE: solamente pulsar SW1, en forma breve y alternada, para
simular el pulso de llamada y hacerlo siempre con el auricular "colgado", pues
de otro modo, el pulso de llamada podría llegar a dañar algún circuito del
aparato en prueba.
Con SW2 colocado en la posición 2, el circuito oscilador formado por Q1, R2,
R3, R4 C3 y T2, genera un tono para la prueba de recepción de señal del
teléfono o contestadora.

Cambiando el valor de R3 se puede cambiar la frecuencia del tono generado.

En la posición 3 se prueba la salida de señal desde el teléfono o contestadora,


para lo cual se puede colocar un pequeño altavoz o un audífono entre los
terminales "B", también se puede conectar un amplificador o un osciloscopio.

NOTA: Los terminales "B" también pueden usarse como entrada de señal, si se
desea aplicar una señal de audio externa, al aparato en prueba.

T2, es el transformador modulador. Para esto se utiliza un transformador normal


de alimentación, con primario para 120V y secundario de 9 a 15V (12V
sugerido) y 250 o 300mA. Si es difícil encontrar transformadores de 120V,
puede utilizar uno de 220V con secundario de unos 18 a 24V, de 300 a 500mA,
para que mantenga, aproximadamente la misma relación de espiras entre sus
bobinas y una impedancia similar.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 265


SISTEMAS DIGITALES

Las especificaciones para el transformador no son muy críticas, pero si dispone


de varios de ellos de características similares, puede hacer pruebas para ver
cuál presenta mejor rendimiento.

Componentes electrónicos del probador de teléfonos.


D1 al 4 - Diodos 1N4006 o similares (1N4007, ECG116, ECG125, etc.).
D5 - Diodo 1N5405 o similar (BY156, 1N5406/7/8, ECG156, ECG5806, etc.).
T1 - Transformador con primario 120 o 220V (según la red eléctrica) y
secundario e 12+12V 500mA.
T2 - Ver detalles en el texto.
Q1 - Transistor unijuntura 2N2646 o similar (ECG6401).
R1 - Resistencia de 330 ohms.
R2 - Resistencia de 470 ohms.
R3 - Resistencia de 27.000 ohms.
R4 - Resistencia de 560 ohms (todas las resistencias pueden ser de 1/4 o
1/2W).
C1 - Condensador de 470uF 25V.
C2 - Condensador de 1000uF 100V.
C3 - Condensador de 0.1uF 50V.
SW1 - Interruptor del tipo pulsador.
SW2 - Interruptor de un polo tres posiciones.
Varios - Conectores, cables, interruptor para la línea de CA, etc.

5) Proyecto: Alarma. Antes de los circuitos vamos a mostrar los bloques de lo


que puede ser nuestra alarma.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 266


SISTEMAS DIGITALES

Esta es la disposición de una alarma sencilla para casas. Aunque el control de


"encendido / apagado" que se ve en el dibujo es un teclado.

Unidad de control simple para alarma:


Primero veremos la lógica de la unidad de control simple.

Este diseño lo realizo con 2 transistores y la salida con relevador (relé o relay),
tratando que no quede muy sensible a las interferencias externas. En esencia
es un "flip-flop ", que al accionarse se queda activado y con un "reset" que lo
desactiva.

Q1 es un transistor NPN de 600mA 2N2222A, Q2 es un transistor PNP de baja


potencia 2N3906, es el encargado que el sistema se quede activado hasta que
se apague o se oprima el reset.

Los diodos D1, D2 y D3 pueden ser 1N4148, o diodos rectificadores similares al


1N4001.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 267


SISTEMAS DIGITALES

C2 es de 0,1 microfaradio (104), su función es muy importante para evitar que


el circuito se active "solo" al conectarse.

C1 y C4 son para filtrar las entradas contra interferencias que pueden entrar por
el cableado a las puertas y sensores de la casa.

Utilizamos 3 tipos de entrada:

(NC) normalmente cerrado: generalmente para interruptores magnéticos (reed


switch), conectados en serie.

(NO) normalmente abierto: para interruptores que dán paso de corriente al


presionarse, o sensores inteligentes que aplican más de 8 voltios en la salida.

3.3V PIR: En esta entrada se conectarán los dispositivos que entregan poco
voltaje de salida como los Sensores de movimiento PIR que mostramos en esta
página. El led junto con R6 es opcional.

Lista de piezas:
R1 10K
R2 10K
R3 47K
R4 22K
R5 22K
R6 1K
R7 15K
R8 3.3K
C1 1 microfaradio 25V.(electrolítico)
C2 0,1 microfaradio, 10V en adelante
C3 100 microfaradios o más, 16 o 25V.
C1 1 microfaradio 25V.(electrolítico)
Q1 2N2222A (NPN)
Q2 2N3906 (PNP)
RlY Relé mediano, bobina de 12 voltios.
Led cualquier led convencional

Estos diseños de electrónica son muy flexibles y se pueden realizar muchas


variantes, por ejemplo puede utilizarse un MosFet en la salida:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 268


SISTEMAS DIGITALES

Manteniendo los valores de las resistencias funciona, pero pueden reducirse ya


que este mosfet puede utilizar hasta 30 voltios en la entrada (gate).

En la entrada para PIR se redujo la resistencia R8 a 100 ohmios, por el bajo


voltaje que entregan esos dispositivos.

Este MosFet es ideal, ya que puede manejar hasta 9 amperios, es bastante


común en monitores antiguos y algunos no tan antiguos pero de tubo (TRC).

Estos diseños funcionan, y puede ser un buen inicio para estudiar y entender
los sistemas de alarma y sus componentes, pero debemos estar claros que hay
muchos elementos a tomar en cuenta en un sistema de alarma comercial.

Esta alarma se pone en funcionamiento unos segundos después de conectada


y el reset es desconectándola. Al activarse dura unos segundos para accionar
el relé.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 269


SISTEMAS DIGITALES

Para que una alarma de casa sea segura debe utilizar batería y es mejor la
utilizada en UPS de 12 Voltios, también en motocicletas, ya que guarda
suficiente energía y no es tan grande como la batería de un automóvil.

El circuito integrado CD4093 puede dañarse con la electricidad estática de


nuestros dedos o con el soldador (cautín), tan solo con tocarle las patillas.
Con este y todos los circuitos integrados CMOS hay que trabajar con cuidado.

Si no está seguro de estar libre de estática es preferible armar todo con un


porta integrado y colocarlo de último.

6) Proyecto: Sirena para alarma. Podemos generar múltiples tonos para nuestra
alarma, todos los mostrados aquí pueden funcionar tanto en nuestra casa,
como en el automóvil, ya que son proyectos hechos en 12 voltios. Para que una
alarma de casa sea segura debe utilizar batería y que mejor que una batería de
las utilizadas en UPS de 12 Voltios. Para probar nuestra alarma podemos
utilizar cualquier altavoz (parlante o bocina), pero para alarmas verdaderamente
ruidosas veremos más adelante como debe implementarse. La mayoría de
sonidos de alarma utilizan por lo menos 2 osciladores para generar el efecto
deseado, ya que un solo oscilador puede generar solo un tono o pitido continuo.

Diagrama de sirena con NE555:

El circuito integrado IC2 es el que genera el sonido, en este diagrama es de


2.6Khz, y el primero (IC1) es el que lo modula, causando variaciones en el tono
4 veces por segundo (4.3Hz).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 270


SISTEMAS DIGITALES

Cuando probamos este proyecto podemos colocar una resistencia en serie de


300 ohmios al altavoz (parlante o bocina), esto para no escuchar muy fuerte ese
sonido que es realmente molesto.

Podemos utilizar para nuestra sirena electrónica también un "Tweeter", incluso


subir el tono del proyecto para hacer el sonido más molesto o llamativo. Para
utilizar un "Tweeter" de los que no tienen imán (Tweeter Piezoeléctrico) hay que
usar dos transistores en la salida para que suenen.

Conectar Tweeter Piezoeléctrico a NE555:

Hay proyectos donde se conecta el tweeter acoplado solamente con un


capacitor a la salida del NE555, no se recomienda, ya que aunque lo soporte la
idea es producir el mayor ruido posible y sin sobrecargar al circuito integrado
que según el fabricante: se puede utilizar de 5 a 15 voltios con una carga en la
salida de hasta 200 miliamperios.

Hay muchos transistores que se pueden utilizar en este proyecto, lo único


necesario es que sean de audio o propósito general, preferiblemente que
resistan varios amperios y tengan buena disipación de calor.

Para un proyecto de poca potencia se pueden utilizar transistores como el


2N2222 pero es mejor más grandes.

Dibujo de la sirena con NE555:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 271


SISTEMAS DIGITALES

Para usarlo con bocinas, tweeters y "drivers " de buena potencia, generalmente
de 4 ohmios o menos, o inclusive varios altavoces en paralelo se pueden utilizar
transistores de potencia como el TIP41 o TIP42.

Hay que verificar las patillas del transistor que utilizaremos para asegurar que la
base, el colector y el emisor se conectan adecuadamente.

Para menor carga a los circuitos y mejor aprovechamiento de la potencia


podemos usar 2 transistores conectados como "Darlington":

Además podemos usar un transistor darlington como el TIP120 que es


equivalente al circuito anterior.

La mejor opción es utilizar Mosfets de Potencia como el IRF630A, que soportan


mucha carga con un desperdicio de calor insignificante.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 272


SISTEMAS DIGITALES

Calcular la frecuencia:

Hay que tomar en cuenta que esta fórmula usa valores en Hertz, Ohmios y
Faradios.
En el ejemplo anterior es:

(4700 ohmios sumado a (47000 por 2)) por 0.000 000 0056 Faradios =
0.00055272
1.443 dividido entre 0.00055272 nos da: 2610 Hz.

7) Sirena con 4011 (astables). Con compuertas NAND podemos hacer un circuito
similar al anterior, formamos 2 osciladores astables con un circuito integrado
CD4011 o equivalente.

Diagrama de sirena con compuertas NAND:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 273


SISTEMAS DIGITALES

En este proyecto el audio no se modula sino que se interrumpe rápidamente,


como 4 interrupciones por segundo (4.4Hz) produciendo un sonido que se
propaga bastante y muy difícil de ignorar.

Dibujo de conexiones de la sirena con 4011:

En este diseño se utilizan darlington pero podemos utilizar mosfets como en la


sirena anterior.

Calculo de frecuencia utilizando compuertas NAND del 4011:

Al igual que en el cálculo de la frecuencia del oscilador con NE555 los valores
son en Hertz, Ohmios y Farads.

La resistencia de 100K no se toma en cuenta para determinar la frecuencia.

2.2 por (33000 por 0.000 000 0056) = 0.00040656


1 dividido entre 0.00040656 nos da: 2459 Hz

Con los circuitos integrados CMOS como el 4011 hay que trabajar con cuidado,
ya que pueden dañarse con la electricidad estática de nuestros dedos o con el
soldador (cautín), tan solo con tocarle las patillas. Si no está seguro de estar
ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 274
SISTEMAS DIGITALES

libre de estática es preferible armar todo con un porta integrado y colocarlo de


último.

8) Proyecto: Hacer sirena para alarma 1/6. Este proyecto utiliza circuitos
integrados prediseñados para alarmas o sirenas.

Simplifica el trabajo bastante y utiliza los tonos que generalmente emiten las
alarmas de automóvil.

El único inconveniente es que no son componentes comunes y puede ser difícil


comprarlos en las ventas de repuestos tradicionales.

Los circuitos integrados que se indican a continuación son iguales: LC9806,


LC9801, GE6061, GE6063, GE6065A, GE6065B y el H0263A, este último se
encuentran en muchas sirenas de fabricación china pero no hay muchos a la
venta ni en internet.

El SC1006 tiene conexiones similares aunque con algunas diferencias solo


cambian la función 2 pines sin mucha relevancia

LC9806, LC9801, GE6061, GE6063, GE6065A, GE6065B y H0263A

Utilizan la tecnología CMOS por lo que consumen muy poco, se recomienda


alimentarlo de 3 a 4.5 voltios y no soporta más de 5.5 voltios.

Es usual regularlo con un diodo zene de 4.3 voltios y algunas veces de 3.9
voltios.

El diseño más simple es este:

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 275


SISTEMAS DIGITALES

Este es el diseño de ejemplo que utiliza el fabricante.

Para los que aún tienen problema con los diagramas se agrega un dibujo con
las partes:

Se puede utilizar varios transistores de tal forma que la potencia del sonido sea
mucho mayor, funciona tanto para estos circuitos integrados como para el
SC1006, más abajo muestro el diagrama.

SC1006
Las diferencias principales entre el SC1006 y los circuitos anteriores es que ya
tiene incluido un diodo zener, con un valor cerca de 4.3 voltios en la entrada de
alimentación y no necesita el capacitor de "ini".

Además la entrada "ini" se cambia por "test" la cual no utilizamos y la entrada


"soft" ahora cambia entre modo 6 tonos (pin libre) y un tono (pin a VDD).

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 276


SISTEMAS DIGITALES

Sirena con etapa de mayor potencia.


Esta es la forma más empleada en las sirenas comerciales, ya que es necesario
más ruido. Funciona para todos los circuitos integrados mencionados
anteriormente.

Los transistores de potencia NPN y PNP puede cambiar incluso con relación a la
calidad de cada sirena. Hay sirenas baratas que utilizan SS8050 como NPN y
SS8550 para PNP que son transistores pequeños, pero con la bobina de la bocina
de 8 ohmios.

Las de mayores potencias utilizan bocinas con bobinas de 4 ohmios o menos y en


ese caso hay que emplear transistores más potentes, preferiblemente TIP41 para
NPN y TIP42 para PNP y puede ser necesario cambiar las resistencias de 220
ohmios por 100 ohmios.
Son iguales: LC9806, LC9801, GE6065B y el H0263A. (También GE6061,
GE6063, GE6065A que se están descontinuando).

El SC1006 tiene algunas diferencias pero es casi igual.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 277


SISTEMAS DIGITALES

EJERCICIOS Y PREGUNTAS DE REPASO E INVESTIGACIÓN

1. Indicar las diferencias entre sistemas basados en microcontrolador y en


microprocesador.
2. Indicar dispositivos de tu entorno que utilicen microcontroladores.
3. Busca dos fabricantes de microcontroladores y detalla las características de
uno de sus micros que integre puertos USB o que pueda transmitir datos vía
radiofrecuencia (RF)
4. Describe las características del entorno de desarrollo MPLAB IDE de
Microchip. ¿Para qué sirve?
5. ¿Qué es la arquitectura Harvard?
6. En un microcontrolador, ¿para qué sirve el registro Watchdog?
7. ¿Qué es un ciclo de máquina?
8. ¿Qué ventajas puede tener programar en Ensamblador? Cuando diseñas una
aplicación para un microcontrolador ¿Es mejor programar en alto nivel o en
Ensamblador?
9. Obtener la tabla de verdad de un circuito secuencial síncrono que funcione
como un contador binario "up-down", (arriba_abajo), pero con las siguientes
características:
• Su máximo valor de salida es 10.
• Su mínimo valor es 1.
• Se incremente de 1 en 1.
10. Obtener la tabla de verdad de un circuito secuencial síncrono que funcione
como un contador binario "up-down", (arriba_abajo), pero con las siguientes
características:
• Su máximo valor de salida es 9.
• Su mínimo valor es 0.
• Se incremente de 1 en 1.
11. Un sistema tiene dos entradas E1 y E2, y dos salidas S1 y S2, debiendo
cumplir las siguientes especificaciones:
• En estado de reposo las salidas deben ser 1, 1.
• Si se suceden al menos dos combinaciones de entradas 1,1 las salidas
deben ser 0,0.
• Si después de estas dos entradas se sucede la combinación 0,0, las
salidas deben ser 0,1.
• Dos variables no pueden cambiar de estado simultáneamente.
Diseñe un circuito síncrono que cumpla estas características.

ESCUELA DE TECNOLOGÍAS DE LA INFORMACIÓN 278

Você também pode gostar