A. Compuertas Lógicas
A. Compuertas Lógicas
generators, logic gates, comparators (such as 74ls85), decoders (such as 74ls139), encoders , counters (such as
74ls193), low pass filter, multiplexers; as well as its application through the use of LEDs, displays, pushbuttons,
switches and optocouplers; All this in order to know the practical operation of each of them and to simplify solutions
and reduce costs.
Key Words- Proteus, logic gate, comparator, decoder, encoder, counter, multiplexing, optocoupler.
Resumen- El presente informe previo presenta explicaciones teóricas, diseño, simulaciones en Proteus,
tablas de verdad y funciones reducidas de circuitos donde se hace uso de generadores de señales cuadradas,
compuertas lógicas, comparadores (como el 74ls85), decodificadores (como el 74ls139), codificadores, contadores
(como el 74ls193), filtro pasa bajos, multiplexores; así como, su aplicación mediante el uso de leds, displays,
pulsadores, interruptores y optoacopladores; todo esto con el objetivo de conocer el funcionamiento práctico de
cada uno de ellos y poder simplificar soluciones y reducir costos.
I. INTRODUCCIÓN
A. Compuertas Lógicas
Las compuertas lógicas son circuitos electrónicos integrados en un chip, diseñados con el objetivo
de implementar funciones booleanas. Se pueden clasificar según su fabricación en hechos de Silicio o de
Arseniuro de Galio, a su vez, de los elaborados con Silicio, los que normalmente encontramos en el mercado
pueden ser TTL (lógica transistor transistor) o CMOS (transistores MOS complementarios), del mismo
modo, normalmente encontramos dispositivos de subfamilias LS y HC, los primeros que son tecnología
TTL y los segundos se tecnología CMOS; los de la familia TTL están diseñados para operar a altas
velocidades y los de la familia CMOS para operar a bajo consumo, dependiendo de la aplicación que
queremos, seleccionaremos cual de estos debemos usar [1].
Las principales compuertas que usaremos son:
NOT.- esta compuerta lógica, también llamada inversor, se utiliza para negar las entradas, es decir,
bota como salida la “inversa” de la entrada. Esta compuerta lleva como código 74LS04.
AND.- esta compuerta lógica se utiliza en el caso de dos o más entradas, cuya función es
multiplicar las entradas (las cuales pueden ser 1 o 0), donde la salida es dicha multiplicación.
Como dijimos antes, esta compuerta posee dos o más entradas, por lo cual tiene un código para
cada cantidad de entradas.
OR .- esta compuerta lógica se utiliza en el caso de dos o más entradas, cuya función es sumar las
entradas (las cuales pueden ser 1 o 0), donde la salida es dicha adición. Como dijimos antes, esta
compuerta posee dos o más entradas, por lo cual tiene un código para cada cantidad de entradas.
XOR.- esta compuerta lógica se utiliza en el caso donde se evalúa dos entradas que posee y
compara si son iguales o no; si fuera el caso en que son iguales, entonces la salida sería 0; de caso
contrario, la salida sería un 1. Esta compuerta lógica tiene como código 74LS86.
B. Codificadores
Los codificadores nos permiten “compactar” la información, generando un código de salida a partir
de la información de entrada [2].
Existen codificadores de 4 a 2, que poseen 4 bits de entrada y 2 de salida (Fig. 1).
Fig. 1. Codificador de 4 a 2.
Las ecuaciones las obtenemos siguiendo el mismo método de siempre: primero obtendremos la
tabla de verdad completa y aplicaremos el método de Karnaugh. Con ello obtendremos las ecuaciones
más simplificadas para las salidas C1 y C0. Al hacer la tabla de verdad (Fig. 2), hay que tener en cuenta
que muchas de las entradas NO SE PUEDEN PRODUCIR. En las entradas de un decodificador, una y
sólo una de las entradas estará activa en cada momento. Utilizaremos esto para simplificar las ecuaciones.
Se ha utilizado una X para indicar que esa salida nunca se producirá:
C. Decodificadores
Un decodificador es un circuito integrado por el que se introduce un número y se activa una y
sólo una de las salidas, permaneciendo el resto desactivadas [2].
Comenzaremos por el decodificador más sencillo, uno que tiene 2 entradas y 4 salidas, como se
muestra en la Fig. 3.
Fig. 3. Decoder de 2 a 4.
D. Contadores
Contador digital: Es todo circuito o dispositivo que genera una serie de combinaciones a sus salidas
sincronizadas por una señal de reloj externa.
Clasificaciones:
Según el comportamiento con la señal de reloj:
Contadores asincrónicos.
Contadores sincrónicos.
Según el formato de salida del conteo:
Binario.
BCD (Decimal Codificado en Binario)
Arbitrario.
Según sentido de conteo:
Conteo ascendente ó progresivo.
Conteo descendente ó regresivo.
Contador asincrónico: Formado en principio por Flip-Flops y lógica combinatoria adicional. Se
llaman así ya que la señal externa de reloj en general se conecta a la entrada de un solo Flip-flop y se
propaga luego internamente. La ventaja es su sencillez. Su principal desventaja es su limitada velocidad de
respuesta que depende fuertemente de la cantidad de bits que maneje.
Contador sincrónico: Formado en principio por Flip-Flops y lógica combinatoria adicional. Se llaman así
ya que la señal externa de reloj en general se conecta a las entradas de reloj de todos los Flip-flop
simultáneamente. La ventaja es su mayor velocidad de respuesta respecto al asincrónico. Su relativa
desventaja es su mayor complejidad circuital y consumo de energía.
En diseño lógico, salvo algunas excepciones, se utilizan los contadores sincrónicos ya que esto permite
además de la velocidad un mejor control en la propagación de retardos a otros dispositivos [3].
E. Optoacoplador
Es un interruptor que es activado mediante una luz infrarroja emitida por un diodo led hacia un
fototransistor o cualquier otro dispositivo capaz de detectar los infrarrojos. Cuando esta luz es interrumpida
o bloqueada por algún objeto el circuito se abre actuando como un interruptor abierto (Fig. 5) [4].
Fig. 5. Se aprecian 2 tipos de optoacopladores, el primero que sirve como relé y el segundo que se usará como contador de
interrupciones.
III. CUESTIONARIO
Si vemos las señales de salida y entrada del 74HC14 (Fig. 7) de color amarillo y azul,
respectivamente, notamos que la salida oscila tomando 2 valores (5 y 0 voltios), esto es debido a que
inicialmente el condensador C1 está descargado y la entrada del 74HC14 es 0 por lo que la salida es
5 V esto hace que el condensador se cargue y la tensión de entrada del 74HC14 aumente hasta
superar Vt+ (Fig. 8), donde según la curva de transferencia la salida cambia a 0 V, al suceder esto, el
condensador empieza a descargarse y la tensión de entrada del 74HC14 a disminuir hasta llegar a Vt-
donde la salida cambia a 5 V, esto hace que el condensador se vuelva a cargar y se repite el mismo
proceso una y otra vez.
Se hace uso de su capacidad que al superar cierta tensión umbral Vt+ la tensión de salida va de 0
a 5 V, y que al disminuir la tensión de entrada hasta llegar a Vt- la tensión de salida cambia de 0 a 5
V, tal como se puede ver en la curva característica de transferencia.
También se hace uso de la rapidez de conmutación que tienen las compuertas TTL.
El periodo sería (8 + 3/4)*100 us = 875 us, por lo que la frecuencia es de 1142.86 Hz aprox.
Sí, debido a que la curva de carga y descarga del condensador variaría haciendo que llegué a Vt+
y Vt- en tiempos distintos. Por ejemplo, en la Fig. 9 tenemos la respuesta del circuito al poner R1 a
500 Ohm donde la frecuencia aumenta evidentemente a aproximadamente 2352.94 Hz.
Fig. 9. Señal de salida (amarillo) y entrada (azul) del 74HC14 al tener R1 = 500 Ohm.
Configurar el circuito para obtener una señal de 1kHz.
Para tener una frecuencia de 1kHz se necesita un periodo de 1 ms, por lo que si ponemos la
resistencia a 1240 Ohm aprox. (Fig. 10) podremos ver una onda de 1 kHz aprox. (Fig. 11).
Fig. 11. La escala del periodo es de 0.5 ms por cuadrado, en acá notamos que en la parte izquierda en cada periodo
se ocupan 3 cuadrados, por lo que el periodo es 1 ms.
Podemos ver en la Fig. 13 la oscilación del circuito, esto es debido a que al tener un valor (0 o 5
V) la entrada, esta se invierte sucesivamente y luego de pasar por los 5 7414 sale con el valor inicial
invertido; luego, este valor se invierte nuevamente y así sucesivamente. El tiempo que se demora el
circuito en invertir el valor de entrada depende del tiempo de respuesta de la compuerta y del número
que se tengan en serie.
De la Fig. 13 podemos ver que el periodo es 1.75 us, por lo que la frecuencia es de 0.571 MHz.
No oscila, como se puede ver en la Fig. 14, esto debido a que al haber un número par de compuertas
7414 en serie, el valor que entra en la primera compuerta no cambia cuando sale de la última compuerta.
Fig. 14. Circuito inicial modificado al aumentar una compuerta 7414 más.
3. Diseñar y simular en Proteus un circuito comparador (Fig. 15), al cual ingresen dos números A y B (de
dos bits cada uno) y que tenga tres salidas, cada una de ellas conectadas a un led. Cada salida indicará si
A=B, A<B o A>B.
Debe elaborar en excel:
Tabla de verdad. (Excel adjunto)
Función reducida. (Excel adjunto)
Emplear compuertas AND, OR, NOT, XOR (Simulacion Adjunta)
Tabla I
FUNCIONES REDUCIDAS DE CADA SALIDA PARA IMPLEMENTAR EL COMPARADOR DE 2 NÚMEROS DE 2 BITS
CADA UNO.
La simulación en Proteus lo vemos en las siguientes imágenes: cuando A = B (Fig. 16), A < B
(Fig. 17), A>B (Fig. 18) y el circuito completo en la Fig. 19.
4. Diseñar y simular en Proteus un circuito comparador, al cual ingresen dos números A y B (de cuatro
bits cada uno) y que tenga tres salidas, cada una de ellas conectadas a un led. Cada salida indicará si
A=B, A<B o A>B. Debe elaborar en Excel:
Tabla de verdad. (Excel Adjunto)
Función reducida. (Excel Adjunto)
Emplear compuertas AND, OR, NOT, XOR. (Simulacion Adjunta)
La simulación de las entradas y salidas del circuito lo podemos observar en las siguientes figuras:
cuando A = B (Fig. 20), A < B (Fig. 21), A>B (Fig. 22)
5. Diseñar y simular en Proteus un circuito comparador de 8 bits empleando compuertas AND, OR, NOT,
XOR (Fig. 23)
Como podemos observar en la Fig. 24, las entradas A y B, son iguales, por lo cual se prende el
LED del medio indicando que son iguales.
Fig. 24. Ejercicio 5 – A y B iguales
Como podemos observar en la Fig. 25, las entradas A y B, son diferentes, A es mayor que B, por
lo cual se prende el LED de la izquierda indicando que A es mayor que B.
Como podemos observar en la Fig. 26, las entradas A y B, son diferentes, A es menor que B, por
lo cual se prende el LED de la derecha indicando que A es menor que B.
Para poder formar un decoder de 3 entradas y 8 salidas, tendremos que utilizar un thumbswitch para
las entradas, como salidas utilizaremos un led para cada combinación. Por ello, tendremos que utilizar las
compuertas NOT y AND, para poder formar el decoder, utilizaremos compuertas lógicas de AND de 3
entradas, cuyo código es 74LS11. Las entradas y salidas de la simulación la podemos ver en la Fig. 27.
7. Diseñar y simular en Proteus un circuito decodificador de 4x16 empleando compuertas AND, OR,
NOT, XOR. La salida activa debe ser “1”. Para una mejor visualización de las salidas, a cada una de
ellas conecte un led. Debe elaborar en Excel:
* Tabla de verdad.
* Función reducida
Una observación que debemos tener en claro, el codificador de 8-3 que diseñamos las entradas y
salidas se habilitan con unos lo contrario al codificador existente en proteus 74LS148 (las entradas se
habilitan con 0 y las salidas salen negadas). El diseño lo podemos ver en la Fig. 29.
Fig. 29. Corriendo el codificador de 8 a 3 con prioridad en Proteus.
Tabla IV: Tabla de verdad.
Tabla IV
I0 I1 I2 I3 I4 I5 I6 I7 A2 A1 A0
1 0 0 0 0 0 0 0 0 0 0
X 1 0 0 0 0 0 0 0 0 1
X X 1 0 0 0 0 0 0 1 0
X X X 1 0 0 0 0 0 1 1
X X X X 1 0 0 0 1 0 0
X X X X X 1 0 0 1 0 1
X X X X X X 1 0 1 1 0
X X X X X X X 1 1 1 1
Tabla V: Como se puede observar en el siguiente cuadro los Hs definidos sirven para poder
codificar las salidas A2-A0 que son similares a un codificador binario simple.
Lo que se implementó en proteus fue las equivalencias de los As con las entradas (I0-I7)
mostradas en la segunda parte de la tabla anterior
Tabla V
A2 = H4+H5+H6+H7 = I4+I5+I6+I7
A1 = H2+H3+H6+H7 = I5’.I4’.I2+I5’.I4’.I3+I6+I7
A0 = H1+H3+H5+H7 = I6’.I4’.I2’.I1+I6’.I4’.I3+I6’.I5+I7
9. Diseñar, simular en Proteus e implementar un circuito que realice la siguiente secuencia (Fig. 30)
haciendo uso de 8 leds. Para el diseño en Proteus puede usar:
Para las resistencias se recomienda: RX8 o RES16DIPIS
Para los leds se recomienda emplear: LED-BARGRAPH-GRN
11. Diseñar, simular en Proteus e implementar mediante un decoder 74139 un circuito que en función a la
combinación de dos entradas, visualice en un SOLO display de 7 segmentos cátodo común la primera letra
del primer nombre de los integrantes del grupo (empezar desde el integrante más joven). Si son más de 4
integrantes, el resto no se considera. Los formatos de las letras deben ser de acuerdo al siguiente gráfico
(Fig. 33):
12. Diseñar, simular en Proteus e implementar mediante un decoder 74LS154 un circuito que visualice un
mensaje en un SOLO display de 7 segmentos cátodo común. El mensaje debe ser el código del curso seguido
de la sección y el grupo. Ejemplo:
Tabla de verdad.
Función reducida de cada segmento del display.
Circuito en Proteus.
Empelar el formato de las letras de la pregunta anterior.
Pin Descripción
UP El pin UP recibe una señal ya sea de un generador de funciones, un Arduíno,
una entrada digital, etc., para iniciar el conteo ascendente, se activa a través de
un “0” lógico.
DN El pin DN cumple análogamente la misma función que el UP, pero para iniciar
el conteo descendente, se activa de igual manera con un “0” lógico.
PL Es el pin encargado de reiniciar el conteo al recibir la señal que lo estimula, se
activa con un “0” lógico, se usa la compuerta NAND como compuerta previa
a su activación.
TCU Se utiliza para llevar la información al siguiente contador en los conteos
ascendentes, sólo se utiliza cuando el conteo es hasta 15.
TCD Se utiliza para llevar la información del anterior contador pero en los conteos
descendentes.
MR Es el pin encargado de llevar el contador a cero cuando recibe la señal de
activación. Se activa con “1” lógico.
D0,D1,D2 y D3 Son entradas que indican desde que punto empezara el conteo, puede ser el
conteo ascendente o descendente. A medida que aumenta el número, tiene
mayor peso, D1 es mayor que D0.
Configurando el generador de funciones a una frecuencia de 1Khz, y haciendo uso de un
osciloscopio, grafique las formas de onda de UP, Q0, Q1 y Q2.
Pin Frecuencia
UP 1KHz
Q0 500Hz
Q1 250Hz
Q2 125Hz
Q3 62.5Hz
¿Qué ocurre si la salida del generador de funciones lo conectamos a la entrada DN del contador?
Concluimos que el conteo seria de forma inversa, es decir de forma descendente desde 15 hasta
0, y luego repetirse.
14.
Implementar en Proteus el siguiente circuito (Fig. 36).
Aplique a la entrada UP una señal cuadrada de 1Hz de frecuencia (puede emplear el Arduino
para generar esta onda) (Fig. 37):
Fig. 36.
Fig. 37.
Pregunta Respuesta
Es una cuenta binaria? No
Entre que números cuenta? 0 – 15(0000-1111)
Es un contador decimal o hexadecimal? Hexadecimal
Observe que el condensador de 4.7uF está para eliminar el rebote que se produce en el pulsador
cuando lo presionamos. ¿Cuenta bien el contador?
Si, la cuenta aumenta una vez que se suelta el pulsador.
En el circuito anterior, cambiar el contador 74LS193 por un contador 74LS192 y conecte a sus
salidas:
Conectar a la salida del contador, un decoder 74LS48 si va emplear un display cátodo común.
Conectar a la salida del contador, un decoder 74LS47 si va emplear un display ánodo común.
Indicar para que sirve los siguientes pines del contador 74LS191:
Pin Descripción
E Habilita al circuito integrado (se conecta a tierra porque se habilita con 0)
D/U Entrada de contaje descendente o ascendente
PL Entrada de carga paralela asincrónica es decir capaz de reiniciar el contaje, pero este
funciona si a través de este pin ingresamos un 1
Funcionamiento: todo lo que hace el circuito se puede mostrar en la figura ya que viene
referenciada es decir los mandos de operación, lo que hay que rescatar es que los leds muestran el contaje
de las veces de pulsaciones limitada(hasta 2^8=256 pulsaciones) en código binario donde cada led
encendido es un 1 y lo contrario un 0, también tiene la opción de poder incrementar o decrementa en
operación cambiando simplemente el pin 5 de tierra a fuente o al contrario.
16. Diseñar en Proteus (empleando decoder) un circuito digital que permita visualizar en una matriz de 8
display de cátodo común (16SEG-MPX8-CC-GRN) la palabra ELECTRON.
Los caracteres deben ser codificados de acuerdo a la siguiente tabla:
Tabla:Funciones de salida
Simulación:
17. Diseñar, simular en Proteus e implementar un circuito que muestre en una matriz de 4 display de
cátodo común el siguiente mensaje: Su sección y su número de grupo. Ejemplo: N2-1 (sección N2 y grupo
1). El mensaje debe verse sin parpadeo.
Para poder resolver este ejercicio, usamos compuertas AND de 2 y 3 entradas los cuales ya dimos
una breve teoría anteriormente, además, tendremos que utilizar los siguientes componentes:
Generador de señales .- este artefacto se utiliza para poder generar señales, para este caso
utilizamos una señal cuadrada de amplitud 5 V, el cual graduaremos su frecuencia para poder
visualizar todos los segmentos.
Contador Binario .- cuyo código es 74LS193, el cual es un circuito secuencial construido a partir
de puertas lógicas capaces de almacenar y contar los impulsos (como señales de un reloj).
Decoder de 2x4 .- cuyo código es 74LS139, este consta de 2 entradas (A y B) y de salidas, este
utilizaremos las salidas para configurar los segmentos del display.
Resistencia Integrada x8 .- el cual consta de 8 resistencias de 100 Ω de valor, este lo utilizaremos
para conectarlo en serie con el display.
Display de 7 Segmentos X4 .- es muy parecido al display de 2 dígitos, pero en este caso
utilizaremos uno de 4 dígitos, en este problema utilizaremos el de cátodo común, para conectarlo
a tierra directamente.
Al graduar la frecuencia del generador de señales a 1000 Hz, podremos apreciar lo 4 dígitos del
display, el cual nos dará como resultado la sección del curso, seguido del número de nuestro grupo.
18. Diseñar, simular en Proteus e implementar un circuito contador BCD (74LS192) que cuente desde un
número inicial hasta un número final, luego de lo cual se detiene.
Los dos números son como máximo de dos cifras (puede ser 07, 24, etc) y siempre el número
inicial es menor o igual al número final.
Los números inicial y final deben ser ingresados en BCD y deben ser simulados en Proteus
mediante thumbswitch. En la implementación esos números deben ser ingresados mediante
DIPSwitch.
19. Diseñar, simular en Proteus e implementar haciendo uso de una matriz de 4 display de cátodo común,
un reloj digital que muestre los minutos y segundos (MM:SS).
Se utilizó el componente 74LS153 que tiene 2 Multiplexores de 4x1, en total 4 de estos para
obtener las 7 salidas que corresponden a los segmentos de cada display que contiene la matriz (7 SEG-
MPX4-CC-BLUE). Además del uso de contadores 74LS192 (Contador síncrono BCD) y decodificadores
74LS48 que convierte el código binario de entrada en formato BCD a niveles lógicos que permiten activar
un display de 7 segmentos de cátodo común que se encuentran en la Matriz.
La señal de entrada a los contadores será cuadrada de 5V de amplitud y de 1Hz de frecuencia (esto
para que se asegure que el periodo sea de 1s, que es el necesario para echar a andar un reloj).
Se necesita además una señal de frecuencia alta (1kHz) para echar a andar la matriz de 4 display
(que también funciona como un multiplexor) y que ésta muestre una visualización aparentemente constante
de todos los displays.
20. Diseñar, simular en Proteus e implementar haciendo uso de una matriz de 4 display de cátodo común,
un contador de eventos BCD. Los eventos serán sensados mediante un optoacoplador, cada vez que algo
interrumpa el haz de luz, el contador se incrementará en uno.
Fig. Circuito pero con el optoacoplador ( circuito a implementar)
Fig. Prueba del mismo circuito, pero con un pulsador
Nota: El circuito anterior solo se utilizo para probar su funcionamiento en proteus, por lo tanto
adjuntaremos el archivo en ISIS con el pulsador para que se pueda calificar su operación.
IV. BIBLIOGRAFÍA
[1] “Familias lógicas”, notas de clase de EE635-N2, Escuela Profesional de Ingeniería Electrónica,
Universidad Nacional de Ingeniería, Invierno 2019.
[2] González Gómez, J., Capítulo 6: Codificadores, decodificadores y comparadores… [Online].
Available: http://www.edudevices.com.ar/download/articulos/digitales/Cur_dig_14.pdf.
[3] Noriega S. (2009), Contadores [Online]. Available:
https://catedra.ing.unlp.edu.ar/electrotecnia/islyd/apuntes/Tema%205%20Contadores%202010.pdf.
[4] Ingeniería Mecafenix (2019), ¿Qué es un optoacoplador y cómo funciona? [Online]. Available:
https://www.ingmecafenix.com/electronica/optoacoplador/.