Está en la página 1de 203

Problemas de

electrónica digital
2ª edición
Luis Gil Sánchez | Javier Ibáñez Civera
Eduardo García Breijo
Luis Gil Sánchez
Javier Ibáñez Civera
Eduardo García Breijo

Problemas de electrónica digital


Colección Académica

Para referenciar esta publicación utilice la siguiente cita: Gil Sánchez, L.; Ibáñez Civera, J.;
García Breijo, E. (2019). Problemas de electrónica digital. 2ª ed. Valencia: Editorial Universitat
Politècnica de València

© Luis Gil Sánchez


Javier Ibáñez Civera
Eduardo García Breijo

© 2019, Editorial Universitat Politècnica de València


Venta: www.lalibreria.upv.es / Ref.: 6422_02_01_01

ISBN: 978-84-9048-781-5 (versión impresa)


ISBN: 978-84-9048-782-2 (versión electrónica)

La Editorial UPV autoriza la reproducción, traducción y difusión parcial de la presente publicación


con fines científicos, educativos y de investigación que no sean comerciales ni de lucro,
siempre que se identifique y se reconozca debidamente a la Editorial UPV, la publicación y los
autores. La autorización para reproducir, difundir o traducir el presente estudio, o compilar o
crear obras derivadas del mismo en cualquier forma, con fines comerciales/lucrativos o sin
ánimo de lucro, deberá solicitarse por escrito al correo edicion@editorial.upv.es
AUTORES

LUIS GIL SÁNCHEZ


Ingeniero Técnico Industrial en la Universitat Politècnica de València (UPV),
Ingeniero en Electrónica en la Universitat de València y doctor por la UPV (2007).
En la actualidad es profesor titular de universidad en la UPV adscrito al
Departamento de Ingeniería Electrónica. Lleva impartiendo docencia desde hace
más de 30 años en asignaturas relacionadas con la electrónica digital y de otras
especialidades de electrónica. Es autor de varios libros docentes sobre electrónica
digital y simulación de circuitos electrónicos en editoriales de la UPV y nacionales.
También es autor de numerosas participaciones en congresos docentes nacionales
e internacionales. Además, ha trabajado en proyectos de innovación docente en el
área de la electrónica digital. Su tarea de investigación se ha centrado en el
desarrollo de sensores, instrumentación y análisis de datos siendo autor de más de
múltiples artículos de divulgación científica y de comunicaciones en congresos
científicos internacionales.

JAVIER IBÁÑEZ CIVERA


Ingeniero Técnico Industrial en la Universitat Politècnica de València (UPV),
Ingeniero en Electrónica (Universitat de València) y doctor por la UPV (2009). En la
actualidad es profesor titular de universidad en la UPV adscrito al Departamento
de Ingeniería Electrónica. Lleva impartiendo docencia desde hace más de 30 años
en asignaturas relacionadas con la electrónica digital, así como de otras
especialidades de electrónica. Es autor de varios libros docentes sobre electrónica
digital y simulación de circuitos electrónicos en editoriales de la UPV y nacionales.
También es autor de múltiples participaciones en congresos docentes nacionales e
internacionales. Además, ha participado en proyectos de innovación docente en el
área de la electrónica digital.
Su tarea de investigación se ha centrado en el desarrollo de dispositivos
optoelectrónicos, sensores, instrumentación y análisis de datos siendo autor de
más de múltiples artículos de divulgación científica y de comunicaciones en
congresos científicos internacionales

III
EDUARDO GARCÍA BREIJO
Ingeniero Técnico Industrial en la Universitat Politècnica de València (UPV),
Ingeniero en Electrónica (Universitat de València) y doctor por la UPV (2004).
Catedrático de Universidad adscrito al Departamento de Ingeniería Electrónica de
la Universitat Politècnica de València. Lleva impartiendo docencia hace más de 25
años en asignaturas relacionadas con la electrónica digital. Es autor de varios libros
sobre electrónica digital, microcontroladores y simulación de circuitos digitales en
editoriales tanto de la UPV como nacionales e internacionales. Además, ha
participado en proyectos de innovación docente en el área de la electrónica digital.
También ha publicado artículos de divulgación científica y ha participado en
congresos de innovación docente en el área de la electrónica digital.

RESUMEN

Existen numerosas publicaciones docentes, tanto nacionales como internacionales,


que recogen los conceptos teóricos fundamentales de la electrónica digital, pero no
hay tantas publicaciones que estén centradas en problemas y menos en la
resolución de exámenes de tipo test. En cambio, la mayoría de los alumnos buscan
este tipo de publicaciones porque es el mejor método para aprender la teoría y
poder enfrentarse con éxito a los exámenes de esta materia.
Con este libro de problemas de electrónica digital los autores deseamos aportar
nuevo material docente a la especialidad, sobretodo en algunos conceptos que son
menos tratados por otros libros de problemas como son: ejercicios de conexión a la
entrada y a la salida de dispositivos digitales, diseño de máquinas de estados finitos,
programas en lenguaje VHDL para dispositivos lógicos programables, etc. La
publicación se ha dividido por temas siguiendo los bloques tradicionales de la
electrónica digital. En cada tema se presentan sus correspondientes problemas y
preguntas de tipo de test, así como una bibliografía básica para consultar el
contenido teórico del tema. Pero también se han introducido otros ejercicios más
largos y complejos que abarcan los contenidos de varios temas para que así el
alumno puede tener una visión más global de la especialidad.
Con el contenido de esta obra los autores esperamos que el lector avance en los
conocimientos de la electrónica digital y que pueda aplicarla a su vida académica y
profesional.

IV
Prólogo

Los autores del libro deseamos ofrecer a los estudiantes de electrónica digital una
amplia colección de problemas resueltos y de preguntas de tipo test sobre la ma-
teria. Este material surge como resultado de la amplia experiencia docente a lo
largo de varios años en la asignatura de Electrónica Digital en el Grado en Ingenie-
ría Electrónica Industrial y Automática de la Universitat Politècnica de València
(UPV), pero el libro se ha enfocado y redactado para que sea útil para estudiantes
de otras titulaciones y universidades donde se impartan conocimientos de elec-
trónica digital. Como esta publicación incluye únicamente problemas, al inicio de
cada tema se ha incorporado una amplia y detallada bibliografía donde el alumno
podrá aprender o ampliar los conocimientos teóricos necesarios para que pueda
entender y resolver los ejercicios y problemas desarrollados en esta publicación.
La publicación se divide en diversos temas, desde los conceptos generales de elec-
trónica digital utilizando circuitos integrados estándar hasta los dispositivos pro-
gramables por hardware (PLD) e introducción a los microcontroladores. Dentro de
los conceptos de electrónica digital se da un especial énfasis en resolución de
problemas de conexión de elementos de entrada y salida a dispositivos digitales,
al desarrollo de sistemas secuenciales síncronos y la programación en lenguaje
VHDL.
Para cada tema se ofrecen una serie de preguntas de tipo test con cuatro respues-
tas alternativas donde se indican las soluciones después de la última pregunta y
por otra parte se presentan problemas resueltos. Además, al final del libro se ha

V
Problemas de electrónica digital

incorporado un capítulo con problemas de sistemas digitales completos que inclu-


yen problemas de mayor complejidad y envergadura, donde se abarca los conte-
nidos de distintos temas anteriores. De esta forma se pretende que el alumno vea
una aplicación más real y completa de los contenidos que se van desgranando en
cada uno de los temas.
Esperamos que con esta publicación el alumno pueda lograr los conocimientos
necesarios para superar esta asignatura y que además le sea útil en el resto de los
estudios de la electrónica.

VI
Índice

Tema 1. Funciones lógicas ................................................................................. 1


Tema 2. Circuitos combinaciones .................................................................... 11
Tema 3. Circuitos integrados digitales ............................................................. 21
Tema 4. Astable y monoestable....................................................................... 55
Tema 5 Biestables ............................................................................................ 61
Tema 6. Contadores ......................................................................................... 71
Tema 7. Registros de desplazamiento ............................................................. 81
Tema 8. Máquinas de estado ........................................................................... 89
Tema 9. Memorias ......................................................................................... 117
Tema 10. Dispositivos lógicos programables ................................................. 123
Lenguaje VHDL ............................................................................... 127
Tema 11. Microcontroladores ....................................................................... 147
Tema 12. Sistemas digitales completos ......................................................... 151
Bibliografía ..................................................................................................... 191

VII
Capítulo 1
Funciones lógicas

En este tema se realiza una introducción a las bases de la electrónica digital, es decir los
sistemas de numeración binario decimal y hexadecimal, las funciones y puertas lógicas,
simplificación de funciones Para conocer y profundizar en los conceptos de este tema
existe una amplia bibliografía ya que esta parte es la más básica de la electrónica digital.
A continuación, se enumeran algunos libros de electrónica digital escritos en castellano,
indicando los temas en donde se desarrollan los aspectos referentes a funciones lógicas.
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson Edu-
cación. Temas: 2, 3 y 4.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson Educación. Temas: 2 y 3.
• Mandado, Enrique; Martín, José Luis. Sistemas Electrónicos Digitales”. 10º ed.
Marcombo. Temas: 1, 2 y 4.
• Mano, M. Morris (2016). Diseño Digital. 3ª ed. Pearson. Temas: 1, 2 y 3.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Temas: 1, 2, 3 y 4.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Temas: 1 y 2.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Temas: 1, 2 y 3.

1
Problemas de electrónica digital

PREGUNTAS TIPO TEST DE FUNCIONES LÓGICAS


1. El número decimal 16 corresponde al número hexadecimal:
a) 10 b) F c) 16 d) FF

2. El número hexadecimal B2 corresponde al número binario:


a) 101110 b) 10100010 c) 100010 d) 101110

3. El número escrito en BCD (Binary Code Decimal) 00101000 corresponde al deci-


mal:
a) 40 b) 28 c) 101000 d) 10

4. ¿Cuál es el valor del complemento a dos del número binario: 1101?


a) 1101 b) 0010 c) 0011 d) 0010

5. ¿Cuál es la expresión más simplificada de la función escrita en el siguiente cuadro


de Karnaugh?

DC 00 01 11 10 a)
BA
b) A+D
00 0 0 x x
c) ∙ + ̅∙
01 1 x 1 1
11 1 x 1 1 d) ∙ + ⋅ ̅∙
10 0 0 x x

6. ¿Qué función lógica corresponde a la siguiente tabla de verdad?


A B F a) NAND
0 0 1 b) NOR
0 1 0 c) OR exclusiva
1 0 0 d) NOR exclusiva
1 1 1

2
Funciones lógicas

7. La función = ∙ + ∙ se puede simplificar de la forma:


a) D·A
b) = +
c) A
d) No tiene simplificación

8. La función lógica: = ∙ es equivalente a:


a) = ∙
b) = ̅+
c) = +
d) = ∙

9. ¿Cuál es la función lógica en F del circuito de puertas de la figura?

a) F = ( A ⊕ B) ⋅ C

b) F = ( A ⋅ B) + C

c) F = ( A + B) ⋅ C

d) F = ( A ⊕ B) ⊕ C

10. La función lógica = + + ̅ puede quedar simplificada:


a) B b) 1 c) A+B d) A

11. ¿Cuál es la expresión más simplificada del siguiente cuadro de Karnaugh?

DC 00 01 11 10 a) ∙ ̅∙ + ∙ ∙
BA
b) + ̅
00 x 0 x x
c) ∙ ̅+ ∙
01 x 0 1 x
11 1 0 1 x d) ∙ ̅+
10 1 0 x x

3
Problemas de electrónica digital

12. ¿Cuál es la expresión más simplificada del siguiente cuadro de Karnaugh?


CB 00 01 11 10 a) ⨁ ⨁
A b)
0 x 1 x 1 c) ̅∙ ∙ + ̅∙ ∙ ̅+ ∙ ∙ + ∙ ∙ ̅
1 1 x 1 x
d) 1

13. ¿Qué función lógica cumple el encendido de la lámpara L1 en el siguiente circuito


de contactos eléctricos?

a) L1 = D·B + C·A
b) L1 = (D+B)·(C+A)
c) L1 = ((D·B) +C)·A
d) L1 = A·(D+B)·C

Soluciones
1. a) El número decimal 16 en binario es 10000. Para pasar de binario a hexadeci-
mal se agrupan cada cuatro bits empezando por el LSB.
2. b) B=1010 y 2=0010. Siempre en grupos de 4 bits binarios.
3. b) Se toman grupos de 4 bits: 0010=2 y 1000=8
4. c) Se intercambian unos por ceros y se suma uno: 1101 ↔ 0010 + 1= 0011
5. a) Las dos celdas centrales con x se toman como 1 y el resto de celdas con x se
toman como 0. De esta forma se obtiene un grupo de 8 celdas con 1.
6. d) = ⨁ = ∙ + ∙
7. = ∙ + ∙ = ∙( + )= ∙1=
8. a) Aplicación de la ley de Morgan e involución. = ̿+ = +
9. a) Combinación de puertas XOR, NOT y AND
10. b) + ̅ = 1, y 1+B=1

4
Funciones lógicas

11. b) En una función incompleta los valores indeterminados (X) se pueden sustituir
de forma independiente por 1 o por 0. En este caso vale la pena sustituirlos to-
dos por1 para así obtener la expresión final más sencilla y se obtiene dos gru-
pos de 8 celdas.
12. d) Todas las X se substituyen por 1
13. c) Contactos en serie corresponde a producto lógico. Contactos en paralelo co-
rresponde con suma lógica.

PROBLEMAS DE FUNCIONES LÓGICAS


Problema 1.1
De la siguiente tabla de verdad obtener:
a) La función canónica de F respecto a las entradas A, B y C.
b) La función simplificada (si se puede) de F respecto a las entradas A, B y C de forma
algebraica.
c) Ídem utilizando cuadros de Karnaugh.
A B C F
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

Solución
a) = ̅∙ ∙ + ̅∙ ∙ + ∙ ∙ + ∙ ∙ ̅+ ∙ ∙
b) = ̅∙( + )∙ + ∙( + )∙ + ∙ ∙ ̅ = ̅∙( + )∙ + ∙( + )∙
+ ∙ ∙ ̅
F= ( ̅ + ) ∙ + ∙ ∙ ̅= + ∙ ∙ ̅=( + ∙ )∙( ̅+ )= + ∙
En el penúltimo paso se ha aplicado la propiedad distributiva dual del algebra de Boole:
A·B+C=(A+C)·(B+C)

5
Problemas de electrónica digital

c)

AB 00 01 11 10 A·B
C
0 0 0 1 0
C
1 1 1 1 1
F = C+A·B

Problema 1.2
En el siguiente circuito, ¿Cuál es la función lógica de F?
En el mismo circuito ¿Cuál es el estado lógico de P cuando las entradas (A, B, C y D)
toman los valores que indica la figura?

Solución
a) =( + )∙( + )
b) = (0 ∙ 1) ∙= 1

6
Funciones lógicas

Problema 1.3
Diseñar el circuito lógico de un sistema de votación de un jurado de 3 miembros (A, B
y C). Cada miembro vota 0 ó 1. La salida del circuito es una lámpara (F), esta lámpara
estará encendida (1) cuando la mayoría de los miembros del jurado vote 1 y estará
apagada (0) cuando la mayoría vote 0.

Realizar:
a) Tabla de verdad y función lógica canónica.
b) Simplificar mediante cuadros de Karnaugh. Escribir la función lógica.
c) Dibujar el circuito lógico simplificado.

Solución
a)
A B C F Fijándose en las combinaciones en las que
0 0 0 0 F vale 1
0 0 1 0
0 1 0 0 = ̅∙ ∙ + ∙ ∙ + ∙ ∙ ̅+ ̅∙ ∙
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

7
Problemas de electrónica digital

b)
AB 00 01 11 10 Función simplificada (suma de los
grupos de la tabla)
C
0 0 0 1 0 A·B
= ∙ + ∙ + ∙
1 0 1 1 1
A·C
B·C

c)

Problema 1.4
Diseñar un circuito lógico para la selección de 2 alarmas (A y B) en una salida F me-
diante una entrada de selección (S), Si C=0 entonces F vale lo mismo que A y si C=1
entonces F vale lo mismo que B.

Alarma A
(0 ó 1) A Alarma A o B
Circuito F
Alarma B a
(0 ó 1) Diseñar Si C=0 → F = Alarma A
B Si C=1 → F = Alarma B

Selector
S

Realizar:
a) Tabla de verdad y función lógica canónica.
b) Simplificar mediante cuadros de Karnaugh. Escribir la función lógica.

8
Funciones lógicas

c) Obtener función lógica utilizando solo la función NAND de dos entradas.


d) Dibujar el circuito lógico simplificado con C.I. 7400 (puertas NAND de dos en-
tradas).

Solución
a)
S A B F Fijándose en las combinaciones en las que
0 0 0 0 F vale 1
0 0 1 0
0 1 0 1 = ̅∙ ∙ + ̅∙ ∙ + ∙ ̅∙ + ∙ ∙
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1

b)
AB 00 01 11 10 Realizando la suma lógica de la
expresión de cada grupo:
S
0 0 0 1 1
/S·A = ̅∙ + ∙
1 0 1 1 1
S·B

c) Negando dos veces y aplicando la ley de Morgan

= ̅∙ + ∙ = ̅∙ + ∙ = ̅∙ ∙ ∙

Con 4 puertas NAND de dos entradas solo se necesita un C.I. 7400.

9
Capítulo 2
Circuitos
combinacionales

Este tema se muestran diversas aplicaciones de los circuitos combinacionales (multi-


plexor, codificador, decodificador y circuitos aritmético-lógicos). Para ello se utilizan
dispositivos de integración media (LSI) de la serie 74.
A continuación, se enumeran algunos libros de electrónica digital escritos en caste-
llano, indicando los temas en donde se desarrollan los aspectos referentes a electró-
nica combinacional:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson Edu-
cación. Temas: 5 y 6.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson Educación. Temas: 4, 6 y 9.
• Mandado, Enrique; Martín, José Luis. Sistemas Electrónicos Digitales”. 10º ed.
Marcombo. Tema: 3.
• Mano, M. Morris (2016). Diseño Digital. 3ª ed. Pearson. Tema: 4.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Temas: 5 y 6.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Tema: 6.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Temas: 5 y 6.

11
Problemas de electrónica digital

PREGUNTAS TIPO TEST DE CIRCUITOS COMBINACIONALES


1. ¿Cuál de los siguientes circuitos digitales es de tipo secuencial?
a) Multiplexor
b) Codificador
c) Comparador
d) Ninguno de los anteriores

2. ¿Cuál de los siguientes circuitos digitales es de tipo combinacional?


a) Biestable
b) Multiplexor
c) Contador
d) Latch

3. ¿Cuántas entradas de control debe tener un multiplexor de 16 entradas de datos?


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

4. ¿Qué tarea realiza el siguiente circuito multiplexor (74157)?


a) Selección entre dos palabras de 4 bits cada una por
medio de una entrada de control.
b) Selección entre cuatro palabras de 2 bits cada una por
medio de dos entradas de control.
c) Selección entre ocho entradas de 1 bit por medio de
tres entradas de control.
d) Ninguna de los anteriores.

12
Circuitos combinacionales

5. En el multiplexor 74151 de la figura la entrada de control de mayor peso es C y la


de menor peso es A ¿Cuál es la función lógica que se obtiene en F?

a) ̅ ̅

b) ̅ ̅

c) ̅ ̅ ̅ ̅

d)

6. En el circuito integrado 74151 del esquema de la pregunta anterior, ¿qué patillas


sobran o faltan con respecto al circuito integrado real?
a) Sobra la patilla 6 ( ) porque un multiplexor no puede tener dos salidas.
b) Sobra la patilla 7 (E) porque no participa en la obtención de la función F.
c) Faltan las patillas de tensión alimentación y masa y todo C.I. lo necesita.
d) Es correcto, no sobra ni falta ninguna patilla, los C.I. digitales no necesitan
tensión alimentación.

7. ¿Qué aplicación podemos obtener con un multiplexor analógico?


a) Mostrar el valor de salida digital en un visualizador de 7 segmentos.
b) Conversión analógico-digital de una señal.
c) Trabajar con múltiples sensores para un único sistema de medida.
d) Realizar operaciones aritméticas analógicas.

13
Problemas de electrónica digital

8. ¿Para qué se utiliza la entrada Latch Enable / Strobe del decodificador BCD – 7
segmentos (74HC4511)?
a) Para activar todas las salidas y
encender todos los segmentos
del visualizador de 7 segmentos.
b) Para desactivar todas las salidas
y apagar todos los segmentos
del visualizador.
c) Para bloquear todas las salidas y
mantener la información del vi-
sualizador.
d) Para elegir un visualizador en
ánodo o cátodo común.

9. Un circuito de control de cadena musical posee cuatro fuentes de entrada: Radio,


CD, Cinta o Disco que se selecciona según el botón que haya pulsado el usuario
¿Qué dispositivo digital es el más adecuado para esta selección?
a) Codificador b) Decodificador c) Multiplexor d) Comparador

10. El circuito integrado comparador de dos números de 4 bits (7485) posee 3 entra-
das auxiliares. ¿Cuál es su misión?
a) Comparar más de dos números.
b) Comparar dos números de más de 4 bits.
c) Sumar el acarreo a los números a comparar.
d) Seccionar los números a comparar.

11. ¿Cuál es la diferencia entre un semisumador y un sumador completo de un bit?


a) El semisumador divide por la mitad el resultado de la suma.
b) El semisumador no tiene en cuenta el acarreo inicial de la anterior suma.
c) El semisumador no calcula el acarreo de salida.
d) El sumador puede sumar números positivos y negativos mientras que el semi-
sumador solo números positivos.

14
Circuitos combinacionales

12. El acarreo final de salida de la suma de dos números binarios:


a) Se desprecia.
b) Es el bit menos significativo del resultado de la suma.
c) Es el bit más significativo del resultado de la suma.
d) Es siempre cero.

Soluciones
1. d) Todos los circuitos son combinacionales.
2. b) El resto de circuitos son secuenciales.
3. b) 24=16
4. a) Dicho C.I. está formado por cuatro multiplexores de dos entradas de datos cada
uno con una entrada de selección común.
5. c) Entradas de datos de X0 y X1 conectadas a nivel alto (Vcc).
6. c) Aunque esas patillas no se dibujen en esquema en el circuito real no hay que
olvidar conectarlas.
7. c) El multiplexor selecciona una de varias entradas de datos, como es analógico
permite trabajar con sensores.
8. c) La entrada LE/STB: 1= Lath Enable; 0= Strobe (bloquea).
9. a) Un codificador realiza tarea de entrada de datos. La salida necesitará dos en-
tradas para obtener las cuatro combinaciones.
10. b) En este caso se utilizan dos C.I., uno para los cuatro bits de menor peso y el otro
para los de mayor peso.
11. b) Solo suma dos bits.
12. c) El acarreo final es bit más significativo del resultado.

15
Problemas de electrónica digital

PROBLEMAS DE CIRCUITOS COMBINACIONALES


Problema 2.1
Diseñar un circuito lógico que permita seleccionar 2 magnitudes: TEMPERATURA (A) y
HORA (B) de UN dígito (BCD) para mostrarlo en un visualizador de 7 segmentos (F) me-
diante una entrada de selección (S), de forma que si S=0 entonces F corresponde con A
y si S=1 entonces F corresponde con B. Además, existe una señal de bloqueo (E) de for-
ma que permita mantener el valor del visualizador, aunque se cambie las entradas.

Solución
Se puede utilizar un multiplexor de dos números de cuatro bits cada uno (74HC157).
Para la salida se utilizará un circuito decodificador de BCD a 7 segmentos
(74HC4511) y un visualizador de 7 segmentos con sus resistencias limitadoras de co-
rriente. Este decodificador posee una entrada LE/STB donde se conecta la entrada E
de forma que si E=0 habilita las entradas y si E=1 las bloquea.

16
Circuitos combinacionales

Problema 2.2
Diseñar un circuito lógico que permita seleccionar 2 magnitudes: Temperatura (A) y
Hora (B) de DOS dígitos (BCD) cada una para mostrarlo en dos visualizadores de 7
segmentos (F) mediante una entrada de selección (S), de forma que si S=0 entonces F
corresponde con A y si S=1 entonces F corresponde con B.

Solución
Es una extensión del problema anterior, simplemente hay que utilizar dos multiplexo-
res dobles de 4 bits (74HC157), pero con el control (S) común a ambos multiplexores.
En este caso no hay entrada de bloqueo por lo que no se ha incorporado un circuito
decodificador de BCD a 7 segmentos (74HC4511).

17
Problemas de electrónica digital

Problema 2.3
Diseñar el circuito lógico para el control de una máquina fotocopiadora. Esta máquina
tiene una selección del número de copias a realizar (Preset) de un máximo de 9 copias
y un contador del número de copias realizadas. El sistema determinará cuando la
máquina tiene que parar. Además, indicará el número de copias realizadas y las que
faltan por realizar, ambos datos se mostrarán en un visualizador de 7 segmentos.

Solución
Se realizará una comparación entre el número de selección de copias (preset) y el del
contador, para ello se utilizará un circuito comparador 7485, donde la salida A=B
servirá para indicar Stop.
Para saber el número de las copias que faltan por realizar es necesario un circuito
restador (resta el valor de la selección menos el valor del contador). Para lograr una
resta hay que sumar el minuendo con el complemento a dos del sustraendo. El com-
plemento a dos de un número se obtiene intercambiando unos por ceros y al resultado
se suma uno.
Para obtener el circuito restador se utiliza un circuito sumador (7483) y cuatro puertas
inversoras para invertir el valor de contador. La entrada de acarreo inicial se conecta a
tensión de alimentación (Vcc) para sumar uno. Se añaden dos visualizadores de 7 seg-
mentos para conocer el número de copias realizadas y las que faltan por realizar.

18
Circuitos combinacionales

Problema 2.4
Diseñar un circuito lógico para el control de la dirección del motor de un ascensor
(arriba, abajo o paro) de un edificio de 8 plantas (0 a 7).
• F0…F7 es el sensor de presencia del ascensor en una planta (final de carrera).
• B0...B7 es el botón de llamada al ascensor desde rellano.
• Deberá haber un visualizador de siete segmentos donde se indica la posición (plan-
ta) donde se encuentre el ascensor y otro del piso de llamada.
• Utilizar bloques de circuitos digitales combinacionales.

19
Problemas de electrónica digital

Solución
1ª opción. La entrada de cada pulsador y de cada posición del ascensor se codificará
a binario mediante codificador de 8 a 3. Posteriormente se realizará una compara-
ción entre ambos números y en función del resultado se sabe si el ascensor tiene
que subir, bajar o permanecer parado.

2ª opción. Comparar directamente los dos números de 8 bits. Para ello se utiliza dos
C.I. comparadores de 4 bits cada uno (7485) conectados en cascada.

20
Capítulo 3
Circuitos integrados
digitales

En este tema se profundiza en las características eléctricas de los circuitos integrados


digitales con especial dedicación a la conexión de dispositivos a las entradas y a las
salidas, estudiando los circuitos eléctricos de conexión y calculando los niveles de
tensión y corriente.
La bibliografía de este tema es amplía en lo referente a las características físicas y
eléctricas de los circuitos integrados digitales, pero es muy limitada la referente a
problemas con dispositivos de entrada y de salida.
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson Edu-
cación. Tema: 12.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson. Tema: 8.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed. Mar-
combo. Tema: 6.
• Mano, M. Morris (2016). Diseño Digital. 3ª ed. Pearson. Tema: 10.
• Roth, Charles H. (2004) Fundamentos de Diseño Lógico. 5ª ed. Paraninfo.
Temas: 1, 2, 3, 4, 5, 7, 8 y 9.
• Hermosa, Antonio (1997). Técnicas electrónicas digitales: tecnología y circuitería
en TTL y CMOS. Ed. Marcombo.

21
Problemas de electrónica digital

• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Tema: 3.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 4.

PREGUNTAS DE TIPO TEST DE CIRCUITOS INTEGRADOS DIGITALES


1. ¿Cuál es la cargabilidad a nivel bajo de las puertas lógicas que tienen los siguien-
tes datos de catálogo?
IIHmax = 0,4 mA; IOHmax = -50 mA; IILmax = -1 mA; IOLmax = 25 mA
a) -2
b) 50
c) 25
d) No hay ninguna cargabilidad porque sale un valor negativo.

2. La tensión de entrada a nivel bajo de una puerta lógica está comprendida entre:
a) 0 y VILmax
b) VILmax y VIHmin
c) VIHmin y Vcc
d) 0 y Vcc

3. ¿Cuál es margen de ruido a nivel alto de las puertas lógicas que tienen los si-
guientes datos de catálogo? VIHmin= 3V; VOHmin= 4V; VILmax= 0,6V; VOLmax= 0,2V
a) 1V b) 0,6V c) 0,4V d) 0,2V

4. La puerta lógica de la figura (74LS00) tiene salida en totem-pole, ¿Qué error se ha


cometido al montar el circuito?
a) Falta la resistencia de pull-up entre la
salida de la puerta y alimentación.
b) El transistor debe ser de tipo MOS.
c) La salida de la puerta lógica no puede
ser negada.
d) Falta la resistencia entre la salida de
la puerta y la base del transistor.

22
Circuitos integrados digitales

5. ¿Por qué se dice que la tecnología TTL es bipolar?


a) Porque los dispositivos tienen un polo positivo y otro negativo.
b) Porque está formada por transistores bipolares (BJT) en conmutación.
c) Porque es bidireccional, es decir las entradas y salidas de los dispositivos se
pueden intercambiar.
d) Porque se puede alimentar tanto con tensión positiva como tensión negativa.

6. A las puertas lógicas que poseen una salida en alta impedancia se denominan:
a) Colector abierto
b) Buffer
c) Histéresis
d) Triestado

7. ¿Cuál debe ser el valor máximo de R para asegurar un nivel bajo de tensión en la
entrada de la puerta TTL de la figura, cuando el interruptor esté abierto?
Datos de la puerta lógica:
VILmax = 1 V; VIHmin = 2,2 V; IIL = - 0,5 mA

a) 1,2 KΩ
b) 2 KΩ
c) 3 KΩ
d) 5 KΩ

8. En la pregunta anterior el valor de la IIL es un número negativo. ¿Cuál debe ser el


motivo?
a) Que la puerta necesita una fuente de tensión de alimentación negativa.
b) En las puertas digitales las tensiones y corrientes son siempre positivas, luego
no tiene sentido, es un error.
c) Que la corriente sale de la puerta.
d) Que la corriente corresponde a la entrada de la puerta (Vi).

23
Problemas de electrónica digital

9. En una puerta inversora CMOS el transistor Q1 conducirá:


+Vdd
a) Cuando también lo haga Q2.
G1 S1

Q1 b) Cuando a la entrada se le aplica una


señal cercana a Vdd.
Entrada A D1 Salida Y
D2
c) Cuando a la entrada se le aplica una
señal cercana a cero.
Q2
G2
S2
d) Siempre debe conducir Q1 para así
permitir la corriente de salida.

10. En las puertas lógicas con tecnología TTL, las corrientes de entrada IIH e IIL (en
valores absolutos) suele ser:
a) IIH > IIL
b) IIH < IIL
c) IIH = IIL
d) Ninguna de las anteriores

11. ¿Cuál es el valor más adecuado de RB para activar el motor del circuito de la figu-
ra con I=400 mA? Siendo los datos del transistor: VBE=1 V; hFEmin=40 (βsat) y utili-
zando una puerta lógica con VOHmin=4V.

a) 300 Ω

b) 400 Ω

c) 7,5 Ω

d) 1 KΩ

12. Una puerta inversora CMOS está formada por:


a) Dos transistores de canal n.
b) Dos transistores de canal p.
c) Dos transistores de canal C.
d) Un transistor MOS de canal n y otro de canal p.

24
Circuitos integrados digitales

13. Del circuito de la puerta inversora Tótem-Pole de la figura, ¿Cuál es el estado de


conducción de Q3 y Q4 cuando se encuentra la salida de la puerta en nivel alto.

a) No conducen ninguno de los dos.

b) Conduce Q4, pero no Q3.

c) Conduce Q3, pero no Q4.

d) Conducen los dos.

14. Las puertas con histéresis se caracterizan por tener:


a) Poseer un tercer estado en alta impedancia.
b) Salida en colector abierto.
c) Actúan como un filtro para la eliminación de los rebotes de los pulsadores de
entrada.
d) El nivel de tensión para la conmutación de nivel bajo a nivel alto (L → H) es di-
ferente de nivel alto a bajo (H → L).

15. Por el LED se desea que circule una corriente de I=20mA, si Vcc=5V, VD=1,6V y
VOL=0,4V. ¿Cuál debe ser el valor más adecuado de R?
a) 250 Ω

b) 230 Ω

c) 170 Ω

d) 150 Ω

25
Problemas de electrónica digital

Soluciones
1. c) Cargabilidad a nivel bajo = |IOLmax/ IILmax| = |25 mA /-1 mA| = 25
2. a) VIL es rango de tensión entre 0V y VILmax
3. a) Margen ruido nivel alto: NMH= VOHmin - VIHmin = 4V-3V = 1V
4. d) Sin resistencia de base se aplica la tensión de salida directamente a la base del
transistor y el circuito no funciona adecuadamente.
5. b) TTL: Transistor-Transistor Logic.
6. d) La salida de las puertas triestado pueden encontrarse a nivel alto, nivel bajo o
alta impedancia.
7. b) Rmax=VILmax / IIL = 1V/0,5mA = 2 KΩ.
8. c) Las corrientes que entran en un C.I. se consideran positivas y las que salen del
C.I. negativas
9. c) Q1 es un transistor de canal P luego conducirá cuando en su puerta (G1) se
aplique una tensión negativa respecto al surtidor S1.
10. b) En cambio en tecnología CMOS estos valores son iguales para nivel alto y bajo.

11. a) = = = 300Ω.
/

12. d) CMOS significa “Complementary MOS” es decir un transistor de canal n y otro


de canal p
13. c) La salida debe tener acceso a tensión de alimentación por medio de Q3 y desco-
nexión de masa por Q4.
14. d) El nombre procede por similitud con materiales magnéticos.
15. d) R=(Vcc-VD-VOLmax)/I = (5 - 1,6 - 0,4)/20mA= 150Ω

26
Circuitos integrados digitales

PROBLEMAS. CIRCUITOS INTEGRADOS DIGITALES


Problema 3.1
En los siguientes circuitos se controla la señal de entrada de la puerta lógica inversora
de tecnología TTL (74LS04) mediante un interruptor y una resistencia para conectar la
entrada (Vi) a nivel alto (Vcc=+5V) o a nivel bajo (GND).
Obtener el valor máximo de las resistencias R1 y R2 de forma que, cuando el interrup-
tor esté abierto, a la entrada de la puerta se tenga bien definido el nivel lógico corres-
pondiente en cada caso.

Fuente: 74LS04. ON Semiconductor, 1999

Solución
R1: Resistencia debajo del interruptor
Para determinar el valor máximo de R hay tener en cuenta que cuando el interrup-
tor esté abierto por la R circula una corriente procedente de la entrada de la puerta
lógica que provocará una caída de tensión en la R.
Para que la entrada (Vi) se mantenga un nivel bajo (L) la tensión en la resistencia
deberá ser menor que la VILmáx=0,8V. Por otro lado, la corriente de entrada puede
ser hasta IILmax=0,4 mA.
Luego la Rmáx= VILmáx/IILmax = 0,8V/0,4mA= 2KΩ. (Valor bajo).
En cuanto al valor mínimo, hay que tener en cuenta que afectará al consumo cuan-
do el interruptor esté cerrado ya que: I=Vcc/R.

27
Problemas de electrónica digital

R2: Resistencia arriba del interruptor


De forma similar al caso anterior, para determinar el valor máximo de R hay tener
en cuenta que cuando el interruptor esté abierto por la R circula una corriente pro-
cedente de la entrada de la puerta lógica que provocará una caída de tensión. Para
que en la entrada (Vi) se mantenga un nivel alto (H) la tensión en la resistencia de-
berá ser superior que la VIHmin =2V. Por otro lado, la corriente de entrada puede
ser hasta IIHmax=20µA. Luego la R máx = (Vcc-VILmáx)/IILmax = (5-2V)/ 20µA = 150KΩ.
Valor superior al caso anterior.
En cuanto al valor mínimo, hay que tener en cuenta que afectará al consumo cuan-
do el interruptor esté cerrado ya que: I=Vcc/R.

Problema 3.2
De forma similar al ejercicio 1, determinar los valores máximos de las resistencias (R1
y R2) para el control de entrada una puerta de tecnología CMOS (74HCT04) por medio
de interruptor.

Fuente: 74HCT04. ON Semiconductor, 2007

Solución
R1: Resistencia debajo del interruptor
De forma similar al ejercicio 1, para que en la entrada (Vi) se mantenga un nivel ba-
jo (L) cuando el interruptor está la tensión en la resistencia deberá ser menor que la
VILmáx=0.8V. Por otro lado, la corriente de entrada puede ser hasta IILmax = ±1µA.

28
Circuitos integrados digitales

Luego la Rmáx = VILmáx/IILmax = 0,8V/1µA = 800KΩ.


En cuanto al valor mínimo, hay que tener en cuenta que afectará al consumo cuan-
do el interruptor esté cerrado ya que: I = Vcc/R.
R2: Resistencia arriba del interruptor
En la tecnología CMOS las corrientes de entrada de entrada (II) son iguales tanto a
nivel alto como a nivel bajo. En la tabla IImax=±1µA.
Para que en la entrada (Vi) se mantenga un nivel alto (H) la tensión en la resisten-
cia deberá ser superior que la VIHmin=2V.
Luego la Rmáx = 5-VILmáx/IILmax = 5-2V/1µA= 3MΩ. (valor elevado).
En cuanto al valor mínimo, hay que tener en cuenta que afectará al consumo cuan-
do el interruptor esté cerrado ya que: I=Vcc/R.

Problema 3.3
Se desea diseñar el control de entrada de un garaje mediante un sensor óptico de
barrera de forma que, cuando pasa un vehículo (corta la barrera) se debe generar una
señal de nivel de tensión alto (H) a un circuito digital formado dispositivos de tecnolo-
gía HCT. El sensor óptico está formado por LDR de modo que cuando no hay vehículo
(llega luz) la resistencia es R = 500Ω y cuando se corta la barrera (oscuridad) es
R = 10KΩ.

Fuente: 74HCT04. ON Semiconductor, 2007

29
Problemas de electrónica digital

Solución
a) Circuito de entrada. La LDR junto con la resistencia R forma un divisor de tensión
Vcc ⋅ LDR
que aplica una tensión a la entrada de la puerta NOT: VI = →
R1 + LDR
LDR ⋅ (Vcc − VI )
RI =
VI
De esta forma, cuando haya luz la resistencia de LDR disminuye y la Vi disminuye y
cuando haya oscuridad la resistencia de LDR aumenta y la Vi aumenta.
Oscuridad: : la salida debe ser un “1” lógico (>VIHmín):
Vcc ⋅ LDRosc →
VI > VIH min =
R1 + LDRosc
LDRosc ⋅ (Vcc − VIH min ) 10 K ⋅ (5 − 2)
RI = = = 15 KΩ
VIH min 2

Luz: la salida debe ser un “0” lógico (<VILmax):


Vcc ⋅ LDRluz →
VI > VIL max =
R1 + LDRluz
LDRluz ⋅ (Vcc − VIL max ) 500 ⋅ (5 − 0,8)
RI = = = 2,62 KΩ
VIL max 0,8
Se toma un valor normalizado intermedio de los extremos. Ej: 8,81KΩ (normalizada
8,6KΩ).

Problema 3.4
Determinar valor de R1 y R2 en cada uno de los circuitos de la figura para que circule
por LED rojo una corriente ID=15mA, sabiendo que la caída de tensión en el LED es:
VD=1,6V. Puertas 74LS04 y 74HCT04.

30
Circuitos integrados digitales

Solución
74LS04.

Fuente: 74LS04. ON Semiconductor, 1999


Según datos de esta puerta lógica las corrientes: IOHmax = -0,4 mA y IOLmax = 8 mA, por lo que es
inferior a la corriente que precisa el LED (ID = 15mA).
En la práctica el circuito integrado sí que puede suministrar corriente suficiente para iluminar el
LED, pero a costa de bajar la tensión. De esta forma las fórmulas del cálculo de la resistencia no
son válidas.

74HCT04.

Fuente: 74HCT04. ON Semiconductor, 2007


Según datos de la puerta las tensiones de salida límites a T=25ºC son: VOHmin =3,84V y
VOLmin =0,26V
, ,
a) Activo por nivel alto. 1 = = = 150Ω
, ,
b) Activo por nivel bajo: 2= = = 204Ω

31
Problemas de electrónica digital

Problema 3.5
Diseñar un circuito necesario para activar un pequeño motor de continua que funcio-
na a 12V y que necesita una corriente de 400 mA mediante una puerta inversora
74LS04 y 74HCT04 con la salida a nivel “H”.
Utilizar el transistor bipolar BD135 (IC-max=2A; βsat=40 (hFEmin); .VBEmax=1V).

Fuente BD135G ON Semiconductor, 2013

Fuente BD135G ON Semiconductor, 2013

Solución
La corriente de colector del transistor será 400mA (menor que ICmáx (BD135)=1,5A).
IC 400 mA
La de base: I B = = = 10 mA
β sat 40
Puerta 74LS04. IOHmax=-0,4mA es inferior a la que necesita la base del transistor
luego no es valida para esta aplicación.
Puerta 74HCT04. IOHmax= -25mA > IB=25mA. Sí que es válida para esta aplicación.
VOHmín − VBEsat 4V − 1V
RB = = = 300Ω
IB 10mA
Como valor normalizado se puede tomar RB=270Ω
(inferior al valor calculado para así asegurar la saturación del transistor)

32
Circuitos integrados digitales

Nota. En estos primeros ejercicios se ha comprobado que las puertas de tecnología


CMOS (HCT) es mucho más adecuada que las de tecnología TTL (subfamilia LS) para
realizar tareas de control de tensión y corriente a la entrada y de salida de los circuitos
integrados. Por este motivo en el resto de los problemas de este tema se va a utilizar
mayoritariamente circuitos integrados CMOS concretamente de la subfamilia HCT,
que además es compatible con TTL.

Problema 3.6
Se desea controlar el encendido y apagado de una lámpara incandescente (L1) de
12V/2W mediante un sensor de luz (LDR) de forma que en claridad (LDRluz = 200 Ω) la
lámpara permanezca apagada y en oscuridad (LDRosc = 10 kΩ) la lámpara permanezca
encendida.
Se utiliza el circuito de la figura que consiste en un adaptador de señal de la LDR de tal
forma que, en cada uno de los extremos de luminosidad posible (Claridad/Oscuridad)
suministre una tensión que sea compatible con los niveles lógicos de una puerta in-
versora de tecnología HCT.
Determinar el rango de variación de la resistencia RB y elegir un valor.
A. La salida de la puerta lógica debe controlar la lámpara L1.
B. Comprobar que hace una falta una etapa de amplificación de corriente (Q1).
Utilizar un transistor BD135 (datos en problema anterior: βsat=40; VBEmax=1V;
ICmax =1,5A).
C. Calcular un valor adecuado de RB.

33
Problemas de electrónica digital

Solución
b) Circuito de entrada. La LDR junto con la resistencia R forma un divisor de tensión
5 ⋅ R1
que aplica una tensión a la entrada de la puerta NOT: VI =
R1 + LDR
De esta forma, cuando haya luz la resistencia de LDR disminuye y la Vi aumenta y
cuando haya oscuridad la resistenci de LDR aumenta y la Vi disminuye.

Oscuridad: la salida debe ser un “0” lógico (<VILmax):

5 ⋅ R1
VI < VIL max = ; VIL max ⋅ R1 + VIL max ⋅ LDRosc = 5 ⋅ R1
R1 + LDRosc

VIL max ⋅ LDRosc 0,8 ⋅ 10 K


R1 = = = 1904Ω
5 − VIL max 5 − 0,8

Luz: la salida debe ser un “1” lógico (>VIHmín):

5 ⋅ R1 VIH min ⋅ LDRluz 2 ⋅ 200


VI > VIH min = R1 = = = 133,3Ω
R1 + LDR luz 5 − VIH min 5− 2
Se toma un valor normalizado intermedio de los extremos. Ej: 1KΩ.

c) Circuito de salida
La corriente de colector del transistor será Ic=P/V=2/12=166mA (<Iomax=25mA).
IC 166mA
La de base: I B = = = 4,15mA (<IOHmín)
β sat 40
VOHmín − V BEsat 4V − 1V
Así, R B = = = 722 Ω . Como valor normalizado se puede
IB 4,15 mA
tomar RB=390Ω.

34
Circuitos integrados digitales

Problema 3.7
Diseñar un circuito necesario para activar un pequeño motor de continua que funcio-
na a 12V y que necesita una corriente de 200mA mediante una puerta inversora
74LS06 (COLECTOR ABIERTO) con la salida a nivel “H”. Utilizar el transistor bipolar
BD135.

Solución
La corriente de colector del transistor será Ic = P/V = 2/12 =166mA.
IC 200 mA
La corrient de base: I B = = = 5mA
β sat 40
VCC − VBEsat 12V − 1V
R1 = = = 2200Ω
IB 5mA

Problema 3.8
Se pretende diseñar un sistema de transporte de objetos formado por:
a) Un pequeño motor de C.C. (12V, 300 mA) que hace girar una cinta transporta-
dora.
b) Dos barreras fotoeléctricas (A y B) formadas cada una por una lámpara y
un sensor de luz (LA-SA y LB-SB). Los sensores son LDR con Rluz = 200 Ω y
Roscuridad = 5 KΩ.
c) Un interruptor P que determina el funcionamiento del sistema.

35
Problemas de electrónica digital

El funcionamiento del sistema es el siguiente:


a) Si “P” está abierto el control del sistema lo determina la barrera A. Es decir, si
un objeto corta la barrera A, el motor se detiene para realizar un proceso A e
ignora a la barrera B.
b) Si “P” está cerrado el control del sistema lo determina la barrera B. Es decir, si
un objeto corta la barrera B, el motor se detiene para realizar un proceso B e
ignora a la barrera A.
c) Si no se detecta ningún objeto el motor estará en funcionamiento permanen-
temente. Así mismo, considerar las lámparas LA y LB encendidas permanente-
mente.

Se pide:
1) Diseñar un circuito para el interruptor P de forma que cuando esté abierto pro-
porcione un “0” lógico y cuando esté cerrado un “1” lógico.
2) A partir de las características de las puertas lógicas, diseñar el circuito de pola-
rización de las LDR para que en ausencia de objeto proporcionen un “1” lógico
y cuando detecten un objeto proporcionen un “0” lógico.
3) Diseñar el circuito de excitación del motor para que gire con un “1” lógico. Uti-
lizar, si es necesario, transistores bipolares de propósito general (βsat = 40,
ICmáx = 2A, VBEsat = 1V).
4) Utilizando el mínimo número de puertas NAND cuyas hojas características se
adjuntan, diseñar el circuito de control para el funcionamiento previsto. Dibujar
el esquema completo. Se considera una alimentación de +5V para los circuitos
lógicos y de +12V para el motor.

36
Circuitos integrados digitales

Datos de las hojas características del 74HCT00:

Fuente: 74HCT04 de ON Semiconductor, 2007

Fuente: 74HCT04. ON Semiconductor, 2007

Los fabricantes pueden ofrecer gran variedad de valores de cada parámetro según las
condiciones de test del circuito. En las tablas las condiciones para la tensión de salida
(Vo) son la corriente de salida y la temperatura. Se ha elegido los valores para
condiciones desfavorables (temperatura <85ºC y corriente más cercana a la del
problema). Estos valores son los que se han marcado en las tablas.

37
Problemas de electrónica digital

Solución
a)
Como la IILmax =1μA es muy pequeña, para hacer los cálculos
se desprecia respecto a la que puede circular por la R.
Para determinar el valor máximo de R hay que tener en cuen-
ta que cuando el interruptor esté abierto por la R circula una
corriente que provocará una c.d.t. que deberá ser menor que
la VILmáx=0.8V; para así estar seguro que en la entrada hay
un nivel bajo (L). Esta tensión se produce por una corriente
que como máximo es IILmax=1μA.
Luego la Rmáx= VILmáx / IILmax = 0,8V/1μA= 800KΩ. Valor
muy elevado, común para la tecnología CMOS.
En cuanto al valor mínimo, hay que tener en cuenta que afectará al consumo cuando el
interruptor esté cerrado ya que: I=5V/R.
Suele ser válido cualquier valor de R entre 1KΩ y 100KΩ.

b)
La primera decisión es determinar si la LDR va arriba o
debajo de la R.
Como el enunciado indica que debe haber un 1 lógico
cuando haya luz en la LDR y o lógico cuando haya
oscuridad, la LDR debe conectarse entre Vcc y entrada
(arriba) porque así el divisor de tensión es:
5 ⋅ R1
VI =
R1 + LDR
De esta forma, cuando haya luz la resistencia de LDR
disminuye y la Vi aumenta y cuando haya oscuridad la
resistencia de LDR aumenta y la Vi disminuye.
Datos
LDRluz=0.2K; LDRosc=5K; VILmáx=0.8V.; VIHmín=2V.
Se calculan los valores extremos de R1 que cumpla esas condicines y se elege un valor
intermedio:

38
Circuitos integrados digitales

Oscuridad: la salida debe ser un “0” lógico (<VILmax):


5 ⋅ R1 VIL max ⋅ R1 + VIL max ⋅ LDRosc = 5 ⋅ R1
V I < V IL max = ;
R1 + LDRosc

VIL max ⋅ LDRosc 0,8 ⋅ 5K


R1 = = = 952Ω
5 − VIL max 5 − 0,8

Luz: la salida debe ser un “1” lógico (>VIHmín):


5 ⋅ R1 VIH min ⋅ LDRluz 2 ⋅ 200
VI > VIH min = R1 = = = 133,3Ω
R1 + LDR luz 5 − VIH min 5− 2

Se toma un valor normalizado intermedio de los extremos. Ej: 560Ω


c)
La corriente de colector del transistor será 300mA
(<Icmáx=2A).
IC 300mA = 7,5mA
La de base: I B =
β mín = 40
(<IOHmín)
VOHmín − VBEsat 4V − 1V
Así, RB = = = 0,4 K
IB 7,5mA
Como valor normalizado se puede tomar RB=390Ω
d)
Tabla de verdad
P SA SB M
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1

39
Problemas de electrónica digital

Mapa de Karnaught
SA,SB 00 01 11 10
M = P ⋅ SA + P ⋅ SB
P

0 0 0 1 1 M = P ⋅ S A ·P ⋅ S B
1 0 1 1 0

Circuito Final completo

40
Circuitos integrados digitales

Problema 3.9
Se desea realizar una instalación de seguridad para un aula-laboratorio. Se dispone
para ello de tres elementos sensores y un actuador:
Sensores:
• Detector de presencia (DP). Sensor PIR que actúa sobre un contacto que está
normalmente cerrado y al detectar la presencia de un ser vivo se abre.
• Detector de apertura de puerta (AP). Contacto magnético que activa un inte-
rruptor. Si la puerta está cerrada el interruptor está cerrado. Si la puerta está
abierta el interruptor está abierto.
• Detector de día/noche (DN). Se utiliza una LDR para detectar si es de día
(RLDR=1KΩ) o de noche (RLDR=50KΩ).
Actuador:
• Sirena eléctrica (S) de 12V, 3W.
La alarma se debe activar en las siguientes condiciones:
Si es de día, la puerta está cerrada y hay presencia de gente.
Si es de noche y hay presencia de gente.

Para la realización del circuito electrónico se utilizarán puertas NAND de dos entradas
74LS00 de la familia TTL cuyas características se adjuntan.
Se pide:
a) Diseñar los circuitos de adaptación del sensor PIR para que en presencia de
gente proporcione un “1” lógico y del detector magnético para que con la puer-
ta cerrada proporcione un “0” lógico.

41
Problemas de electrónica digital

b) Diseñar el circuito de adaptación de la LDR para que durante el día suministre


un “0” lógico y durante la noche un “1” lógico.
c) Diseñar el circuito de excitación de la sirena desde una puerta lógica de forma
que cuando esta proporcione un “1” lógico la sirena se active. Utilizar, si es ne-
cesario, transistores bipolares de media potencia con βsat = 50, VBEsat =1V,
ICmáx=1A, VCEmáx = 100V.
d) Diseñar el circuito lógico para el funcionamiento descrito y dibujar el esquema
completo.

Fuente. 74LS00 de Motorola

Solución
a. Sensores de presencia
Los interruptores abiertos deben comportarse como
“1” lógico.
Cálculo de R1 y R2
Despreciando la corriente de entrada a la puerta.
VCC - R1·II >VIHmín ; por tanto: R1 < (5 - VIHmín)/II , siendo
II=20μA y VIHmín=2V
Con ello, 1 < = 150 . El mismo valor que R2.

Valor normal R1=R2=100KΩ

42
Circuitos integrados digitales

b) Sensor Día-Noche
Cálculo de R. VDN= Vcc · LDR/(R3+LDR);
Día: LDR=1K y VDN < VILmax (0,8V), o sea:
∙ ∙( , )
< 0,8 , con ello → 3 > = 5,25
,

Noche: LDR=50K y VDN > VIHmin (2V), o sea:


∙ ∙( )
> 2 , con ello → 3 < = 75

Se elige un valor intermedio entre los dos extremos.


Ej: R1=39K

c) Circuito de excitación de la sirena


Ic = P/V = 3W/12V = 0,25A.
IB= Ic/β = 0,25/50 = 5mA.
Como se debe activar a nivel alto:
VOHmin=RB· IB + VBE → RB < (VOHmin- VBE) / IB
( , )
Con ello < = 0,34

RB < 340Ω

4.- Diseño lógico

DN AP DP S
0 0 0 0 DN: Día =0 / Noche=1

0 0 1 0 AP: Puerta (abierta 1 / cerrada=0)


DP: Gente=1 / Nadie=0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1

43
Problemas de electrónica digital

AP-DP
DN 00 01 11 10
0 1
1 1 1

S = DN ·DP + DP · AP y aplicando Morgan: S = DN ·DP · DP·AP

Problema 3.10
Se desea controlar una estación de riego compuesta por un depósito de agua y una
bomba de impulsión (B). El circuito a diseñar deberá activar la bomba (señal B) con un
nivel lógico alto cuando se necesite realizar el riego. Con el fin de controlar el proceso,
se incluyen los siguientes elementos:
1.- Detector de nivel del depósito (D). Proporciona un nivel lógico bajo (L) si el depó-
sito de agua está vacío y un nivel alto (H) si el depósito está lleno.
2.- Sensor de humedad (H). Para controlar el estado del suelo se dispone de un sen-
sor de humedad que proporciona un nivel lógico alto si el campo necesita ser re-
gado y un nivel bajo (L) si el terreno está húmedo.

44
Circuitos integrados digitales

3.- Interruptor de estación (E). El interruptor se coloca en una de sus dos posiciones
en función de la estación del año (interruptor abierto = primavera-verano = “1” ló-
gico; interruptor cerrado = otoño invierno = ”0” lógico).
4.- Detector de día/noche (N). Se utiliza una LDR que presenta una resistencia en
oscuridad > 10 KΩ y de día < 1 kΩ. Proporciona un “1” lógico durante el día y un
“0” lógico durante la noche.
La bomba B se deberá activar si el suelo está seco y hay agua en el depósito (con el fin
de evitar que se averíe la bomba al funcionar en vacío). En las estaciones cálidas solo
se podrá regar de noche, mientras que en el resto de las estaciones se podrá hacer en
cualquier momento.

Se pide:
a) Obtener el circuito lógico para la activación de la bomba (utilizar puertas NAND
de dos entradas).
b) Diseñar las conexiones del interruptor de estación para que cumpla las especi-
ficaciones dadas.
c) Diseñar el circuito de la LDR para que cumpla las especificaciones dadas.
d) Si la bomba utilizada es de 24V, 1A, Diseñar el circuito de activación necesario
utilizando un transistor bipolar de propósito general con βsat = 50 y VBEsat = 1 V.
Utilizar las puertas NAND de la familia 74HCT cuyas principales características eléctri-
cas (T=25ºC) son:
Entrada: VIHmin= 2V; VILmax=2V, IImax=±0,1µA.
Salida: VOHmin=3,98V; VOLmax=0,26V, IOmax=±25mA.

45
Problemas de electrónica digital

Solución
a)

b) Interruptor abierto = “1”; cerrado =”0”

Las puertas utilizadas son CMOS. La corriente de entrada es


1μA con VIHmin=2V. La corriente de entrada de la puerta es
depreciable frente a la del divisor de tensión.
Con el interruptor abierto, la caída de tensión en R1 deberá ser
inferior a
Vcc- VIHmin = 5-2 = 3V (con alimentación de 5V);
con ello, R1máx= 3V/1μA;
R1 < 3MΩ; se puede escoger 100KΩ

46
Circuitos integrados digitales

c) LDRluz < 1KΩ → “1”; LDRosc > 10KΩ → “0”


VCC ;
V N = R2·
LDR + R2
De día, VN debe ser superior a VIHmín=2V, siendo
LDR<1KΩ
5V
R2· > 2V  R2 > 0,67K Ω
1K + R2

De noche, VN debe ser inferior a VILmáx=0,8V;


siendo LDR>10KΩ
5V
R2· < 0,8V  R2 < 1,9K Ω
10K + R2
Se puede elegir R2= 1K2.
d)
La bomba necesita 1A. por tanto la corriente de colec-
tor será de 1A. Para saturar el transistor se necesita
una corriente de base mínima de:
IC 1A
IB ≥ ; IB ≥ ; I B ≥ 20mA
β sat 50

La corriente máxima que puede suministrar la puerta


es 25mA. Para el cálculo de R3, la salida de la puerta a
nivel alto proporciona como mínimo VOHmín=3,84V
V B − V BEsat
V B = R3·I B + V BEsat → R3 ≤
IB
3 , 84 − 1
R3 ≤ = 147 Ω
20
Se puede tomar R3=100Ω

47
Problemas de electrónica digital

Circuito completo final

Problema 3.11
Diseñar un circuito electrónico digital para el control automático de la dirección de un
coche de juguete que debe circular siguiendo una pista guía negra entre las ruedas.
Vista frontal:

El coche posee un interruptor (P) para la puesta en marcha (P=1) y pararlo (P=0).
Para lograr el control, el vehículo dispone de ruedas de tracción independiente, iz-
quierda y derecha (RI y RD) activadas por sendos motores, y de dos sensores ópticos
junto a las ruedas formados por: fotocélula de reflexión y de LDR (SI y SD).
Una vez puesto en marcha el vehículo, avanza siguiendo la guía con tracción en las
dos ruedas, pero si alguno de los 2 sensores detecta la pista negra actúa frenando su
rueda correspondiente. Cuando el sensor deje de detectar la pista negra volverá a
poner en marcha la rueda correspondiente. En caso de que los dos sensores detecten
la pista negra el coche debe pararse. Para realizar el circuito digital se va a utilizar
circuitos integrados de la subfamilia HCT, (temperatura 25º).

48
Circuitos integrados digitales

Determinar:
a) Circuito de acoplamiento del interruptor al circuito digital. Parado (P=0), mar-
cha (P=1).
b) Circuito de acoplamiento de las fotocélulas al circuito digital por medio de LDR.
La resistencia de la LDR cuando el sensor detecta la zona blanca es RLDR=400 Ω
y cuando no la detecta (toca la línea negra) es RLDR=5 KΩ.
c) Circuito de control de los motores del coche de juguete MI y MD (característi-
cas motores: I=400mA, V=12V. Transistor: βsat=40, VBE=1).
d) Circuito lógico digital para el control de los motores de las ruedas (MI y MD) a
partir de los sensores SI y SD y del interruptor P.

Solución
a) Circuito de acoplamiento del interruptor al circuito digital.
Parado (P=0), marcha (P=1)

Interruptor arriba. Resistencia abajo.


R1max = VILmax/IILmax = 0,8V/0,1µA = 8MΩ
Ej. R1=100KΩ

b) Circuito de acoplamiento de las fotocélulas al circuito digital por medio de LDR


Detecta línea negra → LDRosc = 3KΩ → Nivel lógico 1
No detecta línea negra → LDRluz = 525Ω → Nivel lógico 0 LDR abajo

VI = Vcc⋅LDR/(R2+ LDR)
R2 = LDR⋅(Vcc-VI)/VI
∙( ) ∙( , )
Luz: 2 < = = 2736
,
∙( ) ∙( )
Oscuridad: 2 > = = 4500

2736<R2<4500 → Ej. R2=3,3KΩ

49
Problemas de electrónica digital

c) Circuito de control de los motores del coche de juguete MI y MD

IB = IC/βsat = 400m/40 = 10mA > Iomax


− 3,98 − 1
< = ≅ 300
10

d) Circuito lógico digital para el control de los motores de las ruedas (MI y MD) a
partir de los sensores SI y SD y del interruptor P.

P SI SD MI MD
0 0 0 0 0
0 0 1 0 0
0 1 0 0 0
= ∙ = ∙ = + = +
0 1 1 0 0
1 0 0 1 1 = ∙ = ∙ = + = +
1 0 1 1 0
1 1 0 0 1
1 1 1 0 0

Circuito lógico con puertas NOR (74HCT02)

50
Circuitos integrados digitales

Problema 3.12
Se desea construir un contador de vueltas para un circuito de coches de carreras de
juguete. Para ello se dispone en cada pista de una barrera fotoeléctrica formada por
una bombillita de tensión 5V y corriente 100mA y una LDR con Rluz=150Ω y
Rosc=12KΩ. El sistema se basa en el contador ascendente-descendente (U/D) de la
figura. Su funcionamiento es el siguiente:
El usuario, mediante cuatro microinterruptores selecciona el número de vueltas tota-
les de la carrera (hasta un máximo de 9). Tras pulsar el botón de inicio, el contador
carga el número total de vueltas a realizar, lo muestra en un visualizador de 7 seg-
mentos y está preparado para funcionar: cada vez que se cruce la barrera fotoeléctri-
ca, el contador desciende una unidad, mostrando en el visualizador las vueltas que
faltan para finalizar la carrera. Cuando se llegue a la última vuelta, (en el visualizador
aparece el número 0) y se activa una lámpara indicadora (5V, 100mA). Al cruzar ME-
TA, el contador vuelve a cargarse con el número total de vueltas y se desactiva la lám-
para indicadora de última vuelta.
Utilizar circuitos integrados tecnología TTL
Se pide:
a) Diseñar el circuito necesario de la barrera fotoeléctri-
ca (suponer la bombillita encendida), de forma que
cada vez que un coche la cruce proporcione un pulso
de nivel lógico alto. (SUB1).
b) Diseñar los circuitos de los microinterruptores y botón
de INICIO para el funcionamiento descrito. (SUB2 y
Bloque A).
c) Diseñar el circuito de activación de la lámpara indicadora de última vuelta. Utilizar,
si es necesario, transistores bipolares de características generales.
(hFEmín = 40 (βsat), ICmáx = 1 A, VCEmáx= 40 V, VBEmáx = 1 V) (SUB3).
d) Si se desea que durante la última vuelta la lámpara parpadee, en lugar de estar
permanentemente encendida, ¿Cuál sería el circuito necesario para el SUB3? Dibu-
ja, al menos, los bloques necesarios.

51
Problemas de electrónica digital

Datasheet de MOTOROLA

52
Circuitos integrados digitales

Solución
Circuito total de control

a.- Diseño de la resistencia serie con LDR (R7)


Con luz debemos tener en CLK un nivel bajo:
VILmáx=0.8V; RLUZ=0.15KΩ:
5V·RLUZ/(RLUZ+R8) < 0.8V, con ello: R8>0,78KΩ
Cuando pase el cochecito (oscuridad) debemos tener un nivel alto:
VIHmin= 2; ROSC=12KΩ:
5V·ROSC/(ROSC+R7)>2V; con ello: R7<18K. Se elige R7=10KΩ

b.- Botón de inicio que actúa sobre PL. Además, cuando el contador finaliza (llega a
cero) al siguiente pulso de reloj se pone a “9”, debiendo ser detectado este caso
para iniciar la cuenta desde el valor preestablecido en los microinterruptores.
(Puertas U6:A y U7:A del esquema). El cálculo de R8 debe de contemplar en la en-
trada de la puerta un nivel H, por tanto:
Vcc-VINIT = R8·IIH ; con VINIT>VIHmin se obtiene R8< (Vcc- VIHmin)/ IIH; R8<150KΩ.
Se elige R8=10KΩ
En el caso de los microinterruptores, cuando están abiertos proporcionan un nivel
lógico bajo. Para ello, las resistencias R3 a R6, deben cumplir la condición:
R3·IIL < VILmáx, siendo IIL = -0,4mA y VILmáx=0,8V, se obtiene: R3<2KΩ.
Se eligen R3 a R6 = 1KΩ

53
Problemas de electrónica digital

c.- El circuito lógico debe cumplir que cuando todas las salidas del contador estén a
“0”, se active el transistor (se activará a nivel “H”).
S = Q0·Q1·Q2·Q3 = Q0 + Q1 + Q2 + Q3 , circuito que se materializa mediante las puertas
lógicas U3 y U4.
La salida a nivel alto no es suficiente para activar la lamparita (100mA). Por ello,
se usa un transistor en la configuración del esquema. Será necesario diseñar la re-
sistencia de base R7 con las siguientes condiciones:
VOHmin=2,7V; IBsat = ICsat/hFEmin = 100mA/40 = 2,5mA; VBEsat = 1V
IB > IBsat; (VOHmin- VBEsat)/R2 > IBsat; o sea:
R2 < (VOHmin- VBEsat) /IBsat; R7 < 0.68KΩ
Se elige R2 = 0.47K

d) Este apartado permite varias soluciones. En todas ellas es necesario utilizar una
señal nueva de reloj de baja frecuencia para el parpadeo. En el esquema de la figu-
ra anterior se propone una solución utilizando un biestable. Se puede utilizar, asi-
mismo, una puerta AND de dos entradas, una para el nuevo reloj y otra para la se-
ñal de fin de cuenta (detección del “0”), atacando su salida a la resistencia de base
del transistor.

54
Capítulo 4
Astable y monoestable

Este breve tema sirve de transición entre la electrónica digital combinacional y la se-
cuencial. Se realiza un estudio de los circuitos astables (generador de señal cuadrada)
y monoestable (temporizador). Se toma como base el C.I. 555 donde se aplican los
circuitos y expresiones propuestos por el fabricante.
La bibliografía sobre este tema es relativamente escasa, algunos ejemplos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Ed. Pearson
Educación. Tema: 7.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Apén. 2.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 2.

55
Problemas de electrónica digital

PREGUNTAS DE TIPO TEST DE ASTABLES Y MONOESTABLES


1. Con el circuito de la figura podemos obtener un:
a) Monoestable no redisparable.
b) Monoestable redisparable.
c) Astable.
d) Biestable.

2. Determinar el valor del tiempo de temporización de un circuito monoestable con


CI 555 para. tomando R=1MΩ y C=10Nf
a) 1 s
b) 10 s
c) 100 ms
d) 10 ms

Fuente. LM555 de Texas Instruments, 2015

3. ¿Cuál será el ciclo de trabajo de una señal oscilatoria con tH = 20 ms y tL = 60 ms?


a) 20% b) 60% c) 80% d) 25%

4. ¿Qué aplicaciones tienen en común el C.I.: 555 y el 74HC4538 (figura)?


a) Monoestable.
b) Biestable.
c) Astable.
d) No tienen aplicaciones comunes.

Fuente: LM555 de Texas Instruments, 2015

56
Astable y monoestable

5. ¿Qué circuito necesita una señal de disparo (trigger) para arrancar?


a) Astable con R-C.
b) Astable con cristal de cuarzo.
c) Monoestable.
d) Biestable.

6. El tiempo de temporización de un circuito monoestable con C.I. 555 viene deter-


minado por:
a) La duración de la señal de disparo.
b) El nivel de la señal de disparo.
c) La tensión de alimentación.
d) El valor de los componentes del circuito R-C externo.

7. ¿Cuál es la aplicación más común de un circuito monoestable?


a) Generador de señal.
b) Temporizador.
c) Tacómetro.
d) Memoria de un bit.

8. Calcular el valor más aproximado de RA, RB y C del circuito astable con C.I. 555
para que la frecuencia de la señal de salida sea de 1Hz.

a) C=10μF; RA=1MΩ; RB=50kΩ


b) C=0,1μF; RA=10KΩ; RB=5KΩ
c) C=10nF; RA=8KΩ; RB=2kΩ
d) C=1μF; RA=800KΩ; RB=100KΩ

57
Problemas de electrónica digital

Soluciones
1. c) Circuito oscilador utilizando una puerta inversora con histéresis y R y C externo.
2. d) C=10 nF equivale a C=0,01µF, luego se toma la segunda línea vertical y se busca el cruce
con la línea de R=1MΩ..
3. d) CT% = tH/ (tH + tL) = 20 ms/ (20 ms + 60 ms) x100 = 25%.
4. a) El C.I. 74HC4538 tiene aplicación específica como monoestable y el 555 tiene varias apli-
caciones, entre ellas también monoestable.
5. c) Los circuitos astable y biestable no necesitan señal de disparo.
6. d) El funcionamiento de basa en la carga y descarga de un condensador a través de una resis-
tencia externa.
7. b) Una vez realizado el disparo al monoestable se mantiene la señal de salida durante el tiem-
po determinado por el valore de C y de R.
8. d) El punto de coordenada C=1μF y f=1Hz pasa cerca de la línea: RA+2RB=1MΩ. El resto
de opciones no coincide la suma de las resistencias.

PROBLEMAS DE ASTABLES Y MONOESTABLES

Problema 4.1
Se desea generar una señale de reloj de frecuen-
cia 100Hz y con un ciclo de trabajo (duty) del
75%. Para ello, utilizaremos el circuito 555 confi-
gurado como astable. En el laboratorio solo se
dispone de condensadores de C=100μF.
Hallar el valor de R1 y R2 del circuito.

Solución
El valor del ciclo de trabajo determinará la relación entre resistencias R1 y R2

 R + R2 
CT =  1  ⋅100% = 75
 R1 + 2 ⋅ R2 
R1 + R2 = 0,75 ⋅ ( R1 + 2 ⋅ R2 ) → 0,25 ⋅ R1 = 0,5 ⋅ R2 → R1 = 2 ⋅ R2

58
Astable y monoestable

La expresión de la frecuencia en función de los valores de las dos R y C


1,44
f ≅
( R1 + 2 ⋅ R2 ) ⋅ C
1,44
100 = → 400 ⋅ R2 = 1,44 ⋅10 7 → R2 = 36 KΩ ;
(2 ⋅ R2 + 2 ⋅ R2 ) ⋅100nF
R1=R2/2 = 18KΩ

Problema 4.2
Se pretende diseñar un circuito que, mediante un pulsador P, controle la temporiza-
ción de una lámpara de 12V y 12W de forma que justo en el momento de pulsar P se
encienda durante 7 segundos. No se establecerá otra temporización hasta que no
acabe la que esté en curso. Además, el encendido de la lámpara puede habilitarse o
deshabilitarse mediante un interruptor S. Se pide:
a) Completar el cableado del circuito de la figura.
b) Hallar valores de: Rx (para CX = 100μF), R1MAX (valor máximo de R1) y R2.
Datos del transistor BJT: βsat=50; VBEsat=1V

59
Problemas de electrónica digital

Solución
Al pulsar P se aplica una señal de nivel bajo luego el
circuito monoestable debe activarse por flanco de
bajada. El enunciado indica que debe ser NO redis-
parable. Las conexiones vienen determinadas en
hojas características del dispositivo:

Fuente: 4638 Faichild Semiconductor

a)

b)
Cálculo de Rx: T = 0,7·Rx·Cx → Rx = T/0,7·Cx=7/0,7·100·10-9 = 1MΩ
Cálculo de R1MAX = VILmax/IILmax=0,8V /1mA = 800KΩ
Cálculo de R2 = (VOHmin-VBE)/IB = (3,98-1)/IB
Ic = P/V = 12/12=1A; IB = Ic/βsat= 1/50= 20mA
R2 = (3,98-1)/20mA = 149Ω

60
Capítulo 5
Biestables

En este tema se estudian los dispositivos elementales de la electrónica digital secuen-


cial y que servirán de base para los siguientes temas. Se analizan los dispositivos asín-
cronos (latch) R-S y D y los síncronos (biestables) J-K y D, y se pone énfasis en la reso-
lución de cronogramas.
Al ser el tema base de los circuitos secuenciales la bibliografía es muy amplia. Ejemplos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Ed. Pearson
Educación. Tema: 7.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson. Tema: 8.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales”. 10º ed.
Marcombo. Tema: 4.
• Roth, Charles H. (2004). Fundamentos de Diseño Lógico. 5ª ed. Paraninfo. Tema: 11.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Tema: 7.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Tema: 4.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 7.

61
Problemas de electrónica digital

PREGUNTAS DE TIPO TEST DE BIESTABLES


1. Un dispositivo LATCH D (cerrojo) posee como entradas principales:
a) D (dato) y E (enable o habilitación).
b) Set y Reset.
c) J y K.
d) Reloj y D (dato).

2. ¿Cuál es valor de la salida Q cuando las entradas se encuentran como la figura y se


aplica un pulso de reloj?

a) Indeterminado
b) 0
c) 1
d) Depende del es-
tado previo

3. ¿Cuál de los siguientes cronogramas del biestable J-K con Clear activo a nivel bajo
y reloj activo por flanco de bajada es correcto?
a) b)
Clear Clear
CLK CLK

J J
K K

Q Q

62
Biestables

c) d)
Clear Clear
CLK CLK

J J
K K

Q Q

4. De los siguientes cronogramas de la salida Q de un biestable J-K activo por flanco


de bajada con entradas asíncronas Clear y Set es correcto?
a) b)

c) d)

63
Problemas de electrónica digital

5. ¿Cuál de los siguientes cronogramas de la salida Q de un biestable J-K activo por


flanco de bajada con entradas asíncronas Clear y Set es correcto?
a) b)

c) d)

6. ¿Cuál de los cronogramas de la salida Q del biestable D activo por flanco de subida
con entrada asíncrona Clear es correcto?
a) b)

c) d)

7. ¿Qué tipo de biestable tiene como aplicación inmediata la división por dos de la
frecuencia de la señal de reloj?
a) R-S b) T c) latch D d) D

64
Biestables

8. Para realizar un circuito de Autoreset (Clear) en el biestable de la figura por medio


de un circuito R-C, el condensador (descargado) se debe conectar:
a) entre Clear y masa.
J Q
b) entre Clear y alimentación. CLK
c) entre alimentación y masa. K Q
d) entre reloj (CLK) y masa. Clear
9. Si en el circuito de la figura conectamos la línea T a nivel alto ¿qué frecuencia ten-
drá la señal obtenida a la salida Q del biestable JK?
a) La mitad de la frecuencia de la señal co-
nectada a CLK.
b) El doble de la frecuencia de la señal co-
nectada a CLK.
c) Igual a la frecuencia de la señal conecta-
da a CLK.
d) La salida Q permanecerá estable.

Soluciones
1. a) Es un dispositivo asíncrono.
2. c) Al estar J=1, K=0 y entradas asíncronas a 1 se produce un SET cuando llegue
el pulso de reloj.
3. b) Inicialmente la señal de Clear=0 está activada (Q=0), luego los cronogramas
c) y d) no pueden ser correctos. Hasta que Clear esté desactivada no puede ser
Q=1, luego el cronograma a) tampoco es correcto. De esta forma el crono-
grama correcto es b).
4. b) Inicialmente está activada la señal Set asíncrono que ocasiona que la salida
Q=1, luego la gráfica D) no puede ser correcta. En el momento que la señal
de Clear (asíncrona) pasa a nivel bajo la salida Q pasa a nivel bajo, luego no
puede ser correcta la gráfica A). Cuando la señal de Clear vuelve a nivel alto
la salida dependerá de las señales síncronas y el reloj, luego no puede ser co-
rrecta la gráfica C). Por lo tanto, la solución es B).
5. a) La señal asíncrona Set=0 provoca que la salida Q=1 independientemente del
resto de señales síncronas. El cronograma a) es la único que durante este pe-
riodo siempre Q=1.

65
Problemas de electrónica digital

6. a) Inicialmente está la señal de Clear activada ocasionando (Q=0) pero cuando


se desactiva Clear la salida Q no puede cambiar hasta que llegue señal de re-
loj (luego no puede ser correcta la gráfica B) ni D). Como el biestable es acti-
vo por flanco de subida no puede ser correcto la gráfica C). Luego la solución
correcta es A).
7. b) Siempre que T=1.
8. a) Si se conecta el C descargado a Clear, al conectar la tensión de alimentación
se aplica un nivel bajo en Clear y se produce el Reset (Q=0). Una vez cargado
el condensador se deshabilita el Clear.
9. a) Actúa como divisor de frecuencia por dos.

PROBLEMAS DE BIESTABLES

Problema 5.1
Al biestable de la figura se le aplica las señales que se muestran en el cronograma.
Dibujar las trazas de la salida Q

Fuente: 74HCT73 Philips SemIconductors, 2004

66
Biestables

Solución
Reloj activo por flanco de bajada y Reset activo por nivel bajo. Inicialmente el Reset
está activo, luego la salida Q=0. En el flanco de bajada del pulso nº 2 J=K=0, luego Q
permanece estable (Q=0). En el flanco de bajada del pulso nº 3 J=K=1, luego Q vol-
tea (Q=1). En el flanco de bajada del pulso nº 4 J=K=1, luego Q voltea (Q=0).

Problema 5.2
Al biestable de la figura se le aplica las señales que se muestran en el cronograma.
Dibujar las trazas de la salida Q.

Solución
Biestable con reloj activo por flanco de bajada y Reset y Set asíncronos activos por
nivel bajo. Inicialmente el Reset está activo luego la salida Q=0. En los pulsos 1, 2 y 3
tienen el control del biestable las entradas síncronas J y K según la tabla de funciona-
miento. Cuando la señal de Set=0 la salida Q=1 de forma asíncrona.

67
Problemas de electrónica digital

Problema 5.3
Completa el cronograma correspondiente al circuito formado por biestables JK y D.

Q0 Q1
D D Q J Q
CLK CLK CLK
Q K Q

Cronograma

Solución
Hay que fijarse que en este caso el biestable D es activo por flanco de bajada mientras
que el biestable JK lo es por flanco de subida. Además la señal D coincide con la señal
J del biestable JK y la salida del biestable D (Qo) coincide con la señal K del biestable
JK. Como no hay señales asíncronas el control del biestable lo tienen las entradas
síncronas J-K y D según la tabla de funcionamiento.

68
Biestables

Problema 5.4
A los biestables de la figura se le aplican las señales que se muestran en el cronograma.

Dibujar las trazas de la salida Q1 y Q2, justificando cada una de sus variaciones.

69
Problemas de electrónica digital

Solución

Hay que fijarse que el biestable D es activo por flanco de SUBIDA mientras que el
biestable JK lo es por flanco de BAJADA. Además la salida del biestable D (Q1)
coincide con la señal K del biestable JK. Inicialmente Reset=0 entonces Q1=Q2=0. A
partir del pulso nº 2 el control del biestable lo tienen las entradas síncronas J-K y D
según la tabla de funcionamiento. En el pulso nº 7 Reset vuelve a nivel bajo, luego
Q1=Q2=0.

70
Capítulo 6
Contadores

En este tema se estudian los contadores electrónicos digitales como una aplicación
básica de los biestables. Se analiza el desarrollo de contadores asíncronos realizados
con biestables independientes y los contadores síncronos utilizando dispositivos co-
merciales de contadores.
Es un tema común en los libros de electrónica digital general. Ejemplos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson Edu-
cación. Tema: 8.
• Tocci, Ronald J. y otros. (2016) Sistemas Digitales: Principios y Aplicaciones. 10ª ed.
Pearson. Tema: 7.
• Roth, Charles H. (2004) Fundamentos de Diseño Lógico. 5ª ed. Paraninfo. Tema: 12.
• Mandado, Enrique; Martín, José Luis. Sistemas Electrónicos Digitales. 10º ed. Mar-
combo. Tema: 4.
• Mano, M. Morris (2016) Diseño Digital. 3ª ed. Pearson. Tema: 6.
• Roth, Charles H. (2004) Fundamentos de Diseño Lógico. 5ª ed. Paraninfo. Tema: 12.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Tema: 7.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Tema: 4.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 9.

71
Problemas de electrónica digital

PREGUNTAS DE TEST DE CONTADORES

1. Se dice que un contador es binario, cuando:


a) Cuenta hasta 2.
b) Cuenta de dos en dos.
c) El último valor de la cuenta es par (múltiplo de 2).
d) Cuenta desde 0 hasta 2n-1, siendo n el número de biestables.
2. Para obtener un contador asíncrono se utiliza fundamentalmente:
a) Biestable T (J-K con entradas unidas).
b) Latch D.
c) Biestable D.
d) Latch R-S.
3. En un contador asíncrono ¿Cuáles son los valores de transición entre los números
4 (0100) y 5 (0101)?
a) Ninguno porque pasa de un número par a impar.
b) Pasa por 6 (0110).
c) Pasa por 6 (0110) y 7 (0111).
d) Los contadores asíncronos no tienes valores de transición.
4. Con los componentes de la figura (contador bidireccional BCD y puerta NAND) se
desea realizar un contador de módulo 4 a 8 (ambos inclusive), ¿dónde irán conec-
tadas las entradas de la puerta NAND?

Fuente: 74190 de Philips Semiconductors

72
Contadores

a) A las salidas Q3 y Q1.


b) A las salidas Q3 y Q0.
c) A la salida Q3.
d) No hace falta ninguna puerta lógica

5. Con el mismo contador de la pregunta anterior, ¿qué niveles lógico se conectarán


a las entradas D[3..0]?
a) Todas las entradas D[3..0] a masa.
b) D2 a masa y D0, D1 y D3 a Vcc.
c) D2 a Vcc y D0, D1 y D3 a masa.
d) Es indiferente porque estas entradas no se utilizan en esta aplicación.

6. Un contador síncrono se caracteriza por:


a) La señal de reloj actúa directamente solo en el primer biestable.
b) La señal de reloj actúa directamente solo en el último biestable.
c) La señal de reloj actúa directamente en todos los biestables.
d) A pesar de su nombre, este contador no necesita señal de reloj.

7. Considerando el circuito de la figura, basado en el contador bidireccional binario


74LS191 ¿cuál es el número decimal más alto que se observará en las salidas
[Q3..Q0]?

Fuente: CD74HCT191 de Texas Instruments, 2003

a) 12
b) 9
c) 11
d) 15

73
Problemas de electrónica digital

8. Se conecta tres contadores decimales BCD (74190) de la forma que indica la figura,
la frecuencia de reloj del contador de la derecha es 100 Hz ¿Cuál debe ser la fre-
cuencia del reloj externo (CLOCK)?
a) 1 Hz
b) 100 Hz
c) 1 KHz
d) 10 KHz

Fuente SN74LS190 de Motorola

Soluciones
1. d) Por ejemplo, el contador binario de 4 bits cuenta desde 0 a 15.
2. a) Biestable J-K con las dos entradas unidas para formar un biestable T y conectada a nivel
alto (H), actúa como divisor de frecuencia por dos.
3. a) Para pasar de 4 (0100) a 5 (0101) solo cambia el bit de menor peso luego no se producen
valores de transición.
4. b) Según la tabla de funcionamiento la carga de entradas en paralelo (Preset) es asíncrona.
Entonces, si se quiere que cuente hasta 8, hay que detectar el número 9 (1001). Por lo tanto,
las entradas de la puerta NAND hay que conectarlas a Q3 y Q0 y cuando estén ambas a ni-
vel alto (9) entonces la salida pasará a nivel bajo ocasionando una carga del contador.
5. c) Las entradas de paralelo D[3..0] deben estar conectadas a 0100 para realizar una carga
del 4.
6. c) De ahí su nombre.
7. c) La puerta NAND está conectada a las salidas Q3 y Q2 del contador, luego detecta el núme-
ro 12 (1100). Como el contador posee el preset (carga) asíncrono, cuando se detecte ese
número se cargara las entradas D[3..0] que están a cero. Entonces el número 12 no llegará
a apreciarse por lo que el último es el 11.
8. d) Conexión de tres contadores decimales en cascada. El contador de la derecha corresponde
a las centenas, luego la frecuencia de reloj debe ser 100 mayor, que actuará sobre el conta-
dor de las unidades.

74
Contadores

PROBLEMAS DE CONTADORES

Problema 6.1
Realizar las conexiones necesarias en el contador BCD de la figura (74160) cuya tabla
de funcionamiento se facilita para que realice la secuencia de conteo: 3, 4, 5, 6 y 7 de
forma cíclica. Utilizar, si es necesario, las puertas lógicas que se consideren oportunas.

Fuente SN74LS160 de Motorola

Solución
Se desea obtener un contador de 3 a 7. Como la carga en paralelo es síncrona habrá
que detectar el número 7 y entonces realizar una carga 3 (0011) en las entradas de
paralelo. Hará falta la conexión de una puerta NOR de tres entradas.

Problema 6.2
Con el C.I. contador bidireccional BCD 74190 (y otros dispositivos necesarios) realizar
un contador de módulo 10 que realice la cuenta de forma alternativa ascendente y
descendente de forma automática. Es decir que cuando llegue la cuenta al 9, al si-
guiente pulso de reloj, cuente hacia atrás hasta llegar a cero, y en este momento
vuelva a cambiar de sentido volviendo a ascender la cuenta hasta 9, y así sucesiva-
mente.

75
Problemas de electrónica digital

Fuente SN74LS190 de Motorola

Solución
a) Para indicar el sentido de la cuenta habrá que actuar sobre la entrada D/U del
circuito contador, de forma que cuando D/U= 0 asciende y cuando D/U= 1
desciende.
b) Para saber que ha llegado a fin de cuenta habrá que utilizar la salida RC0 (RC en
el símbolo lógico) del contador, que genera un nivel bajo (L) cuando llega a 9
(ascendente) o a 0 (descendente). En otros casos esta salida es nivel alto (H).
c) Para cambiar el valor de la señal D/U y dejarla fija cuando cambiar el valor de
RCO hará falta un elemento de memoria de 1 bit, que se puede lograr con un
biestable de tipo T con la entrada a nivel alto, donde la salida RCO se conecta a la
entrada de reloj del biestable (activo por flanco de bajada) y la salida Q se conecta
a la entrada D/U del contador. Ver esquema (CE en el símbolo lógico corresponde
a E en el circuito).

76
Contadores

Problema 6.3

Obtener un contador en código Gray de tres bits (G2, G1 y G0) utilizando un circuito
contador binario de tres bits (Q2, Q1 y Q0).

Solución
Hay que determinar el circuito combinacional de salida que relaciona las entradas
Q2, Q1 y Q0 procedentes del contador con las salidas en código Gray (G2, G1 y G0)

Q2 Q1 Q0 G2 G1 G0 Q2 00 01 11 10
Q1
0 0 0 0 0 0 Q0
0 0 0 1 1
0 0 1 0 0 1 1 0 0 1 1

0 1 0 0 1 1 G2=Q2
Q2 Q1 00 01 11 10
0 1 1 0 1 0 Q0
0 0 1 0 1
1 0 0 1 1 0
1 0 1 0 1
1 0 1 1 1 1 1= 2∙ 1+ 2∙ 1= 2⊕ 1

1 1 0 1 0 1 Q2 00 01 11 10
Q1
1 1 1 1 0 0 Q0
0 0 1 1 0
1 1 0 0 1

0 =∙ 1 ∙ 0 + 1 ∙ 0 = 1⨁ 0

77
Problemas de electrónica digital

Problema 6.4
Diseñar el circuito de control de un semáforo cuya secuencia de encendido “1” y apa-
gado “0” de las luces roja, amarilla y verde (R, A, V) se indican en la siguiente tabla de
verdad.
Diseñar el circuito de control de un semáforo cuya secuencia de encendido “1” y apa-
gado “0” de las luces roja, amarilla y verde (R, A, V) se indican en la siguiente tabla de
verdad.
El circuito estará formado por un contador binario
de 4 bits (Q3, Q2, Q1, Q0) y puertas lógicas que
actúen como decodificador de las tres luces (R, A, V)
a partir de las salidas del contador (Q).
A partir de la tabla de verdad dada,
1. Obtener las ecuaciones lógicas simplificadas de
las funciones R, A y V.
2. Dibujar circuito lógico completo y comprobar
funcionamiento.

78
Contadores

Solución

R A
Q3Q2 00 01 11 10 Q3Q2 00 01 11 10
Q1Q0 Q1Q0
00 0 0 1 0 00 0 0 0 1
01 0 0 1 0 01 0 0 0 1
11 0 0 1 1 11 0 1 0 0
10 0 0 1 1 10 0 1 0 0

= 3∙ 2+ 3∙ 1 = 3∙ 2∙ 1+ 3∙ 2∙ 1
: = 3 ∙ 2 + 3 ∙ 1
Circuito completo

Problema 6.5
Se desea obtener un circuito electrónico que realice el rellenado al azar de quinielas
(1 X 2), pero de forma que, la opción “1” tenga el doble de posibilidades de salir que la
“X” y el “2”. Las opciones “X” y “2” deben de tener las mismas posibilidades. El circui-
to utiliza el C.I. contador 74LS190 y las puertas lógicas necesarias. Completar todas las
conexiones de la siguiente figura.

79
Problemas de electrónica digital

Solución

Q0 Q1 UNO EQUIS DOS


0 0 1 0 0
0 1 1 0 0
1 0 0 1 0
1 1 0 0 1

A partir de las tablas de verdad

= 0 = 0∙ 1 DOS= 0 ∙ 1

80
Capítulo 7
Registros de
desplazamiento

En este se tema se introduce otra aplicación de una combinación de varios biestables.


Está basado en la aplicación de circuitos integrado de registros de desplazamiento. En
muchos libros este tema está incluido dentro de los contadores. Ejemplos bibliográficos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Ed. Pearson
Educación. Tema: 9.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson Educación. Tema: 7.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed.
Marcombo. Tema: 4.
• Mano, M. Morris (2016). Diseño Digital. 3ª ed. Pearson. Tema: 6.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª ed.
Marcombo. Tema: 7.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edito-
rial Universitat Politècnica de València. Tema: 4.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 8

81
Problemas de electrónica digital

PREGUNTAS DE TEST DE REGISTROS DE DESPLAZAMIENTO


1. En el C.I. del registro de desplazamiento universal bidireccional 74LS194, cuya
tabla se muestra ¿Qué entrada tiene mayor preferencia?

a) S1
b) S0
c) CP
d) MR
Fuente: 74LS194 de Philips Semiconductors

2. En el C.I. del registro de desplazamiento del problema anterior 74194, si deseamos


obtener un registro de desplazamiento paralelo-serie con desplazamiento hacia la
izquierda, habrá que:
a) Conectar las entradas S1=1 y S0=1 y posteriormente S1=1 y S0=0.
b) Conectar las entradas S1=1 y S0=0 y posteriormente S1=1 y S0=1.
c) Conectar las entradas S1=1 y S0=1 y posteriormente S1=0 y S0=0.
d) Conectar las entradas S1=0 y S0=1 y posteriormente S1=1 y S0=1.

3. El número de cuentas (o combinaciones) de un contador anillo de n biestables es:


a) n b) 2∙n c) 2n d) 2n-1

4. En el circuito del registro de desplazamiento del problema anterior (74LS194)


¿Qué conexión habrá que realizar para obtener un contador en anillo con despla-
zamiento a la derecha
a) Conectar Q3 con Q0.
b) Conectar Q3 con DSR.
c) Conectar Q0 con DSR.
d) No se puede lograr un contador en anillo ya que este circuito es un registro de
desplazamiento.

82
Registros de desplazamiento

5. La aplicación principal de un dispositivo UART (Universal Asynchronous Receiver-


Transmitter ) es:
a) Obtener un retardo de tiempo (Time Delay)
b) Lograr un contador en anillo
c) Transmisión de datos Serie-Paralelo y Paralelo-Serie
d) Contador asíncrono

6. En el registro de desplazamiento paralelo – serie C.I. 74166, cuya tabla de verdad


se representa. ¿Qué entrada tiene mayor preferencia?

Fuente: 74HC166 Philips Semiconductors

a) PE b) CE c) Ds d) D0-D7

7. En el mismo registro de desplazamiento de la pregunta anterior, al realizar una


carga en paralelo. Las salidas toman el valor de:
a) La entrada Ds de forma asíncrona.
b) Las entradas D0-D7 de forma asíncrona.
c) Las entradas D0-D7 pero cuando llegue el flanco de bajada del reloj.
d) Las entradas D0-D7 pero cuando llegue el flanco de subida del reloj.

83
Problemas de electrónica digital

Soluciones
1. d) Cuando la señal MR=L las salidas Q pasan a nivel bajo (L) independiente-
mente del estado del resto de las señales de entrada.
2. a) Primero la carga de entradas en paralelo (S1=1 y S0=1) y luego desplaza-
miento de la información de las salidas hacia izquierda (S1=1 y S0=0).
3. a) Al realimentar la salida del último biestable (Q3) con la entrada serie del
primero cada n pulsos de reloj vuelve a empezar la secuencia.
4. b) Hay que realizar una realimentación entre el último biestable (Q3) y la entra-
da serie (DSR) para desplazamiento a la derecha.
5. c) Permite la conversión de paralelo a serie.
6. b) Cuando CE=h se produce el mantenimiento “hold” de las salidas sin importar
el estado del resto de la entradas.
7. d) La señal CP (reloj) de este dispositivo actúa por flanco de subida ( ↑).

PROBLEMAS DE REGISTROS DE DESPLAZAMIENTO

Problema 7.1
Se desea implementar un convertidor paralelo-serie de 8 bits. Para ello se utilizan dos
registros de desplazamiento de 4 bits (74194) cuya tabla de funcionamiento es la
siguiente:

Fuente: 74LS194 de Philips Semiconductors

84
Registros de desplazamiento

Se pide:
a) Terminar de cablear el circuito para que cumpla con el modo de funcionamiento
planteado teniendo en cuenta que en la entrada del dispositivo U1 se establecen
los valores D0,D1,D2,D3 = ‘0001’ y en la entrada de U2 se establecen los valores
D0,D1,D2,D3 = ‘1001’.

b) Indicar el procedimiento de variación de entradas.

c) Dibujar el cronograma de la “Salida” serie del registro de 8 bits.

CLK
MR
S0
S1
Salida

85
Problemas de electrónica digital

Solución
a) Para obtener un registro de desplazamiento de 8 bits mediante dos registros de 4
bits la salida Q3 del primer circuito (U1) se conecta a la entrada serie por la de-
recha (SR) del segundo circuito (U2).
La salida serie del registro total se realizará por el pin Q3 del circuito U2.
Para lograr D0,D1,D2,D3 = ‘0001’ y D0,D1,D2,D3 = ‘1001’ se conectan los pi-
nes correspondientes de U1 y U2 a masa cuando sea el valor lógico sea 0 y Vcc
cuando el valor lógico sea 1.

b) Inicialmente se activa el reset (MR=0), de esta forma la Salida=0.


• Para realizar la carga en paralelo S1=1 y S0=1.
• Para realizar el desplazamiento a la derecha S1=0 y S0 =1.
• Por el terminal de Salida se obtiene la secuencia: 1, 0, 0, 1, 1, 0, 0, 0; y poste-
riormente continua con ceros porque la señal de entrad serie (SR) del circuito U1
está conectado a masa.

86
Registros de desplazamiento

Problema 7.2
Teniendo en cuenta el circuito de la figura y
la tabla de verdad del registro de despla-
zamiento universal 74LS194.

Fuente: Philips Semiconductors

a) Indicar cuál sería la función del circuito.


b) ¿Qué valor tomarían Q3..Q0 en U1 si MR=1, S1=1, S0=1 y D3..D0=1010.
c) Completar el siguiente cronograma.
1 2 3 4 5 6 7 8 9

CLK

S0

U1:Q0

87
Problemas de electrónica digital

Solución
a) La salida Q0 del circuito U2 está conectado a la entrada serie hacia la izquierda
(SL= del circuito U1). Luego es un registro de desplazamiento de entrada parale-
lo-salida serie de 8 bits con desplazamiento a la izquierda.
Entradas de Control: S1 fija a Vcc luego solo hay dos posibilidades:
S1-S0=11 Carga Paralelo.
S1-S0=10 Desplazamiento Serie a la izquierda.

b) MR=1 (Reset deshabilitado).


Entradas Paralelo: U2:0110; U1: 1010. Entrada Serie Izquierda. 1

c) Por U1:Q0 se producirá la secuencia 01010110 y posteriormente todo 1 porque la


entrada SL del circuito U2 está conectada a Vcc.

88
Capítulo 8
Máquinas de estado

En este tema se desarrollan las máquinas de estados finitos para obtener cualquier
sistema secuencial síncrono. En los problemas se plantea el diseño de un circuito elec-
trónico a través de unas especificaciones en donde hay que obtener un diagrama de
estados (de tipo Moore o Mealy) y en ocasiones también el circuito digital que lo im-
plementa. Para realizar esta tarea se utiliza el software educativo Boole-Deusto
(http://weblab.deusto.es/website/boole_deusto.html).
Una de las originalidades de esta publicación es la proliferación de problemas sobre
diseño de máquina de estados, que no es demasiado habitual en los libros de electró-
nica digital.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed.
Marcombo. Tema: 4.
• Mano, M. Morris (2016). Diseño Digital. 3ª ed. Pearson. Tema: 5.
• Roth, Charles H. (2004). Fundamentos de Diseño Lógico. 5ª ed. Paraninfo. Te-
mas: 13, 14, 15 y 16.
• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable. 4ª
ed. Marcombo. Temas: 7 y 8.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital. Edi-
torial Universitat Politècnica de València. Tema: 5.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universi-
tat Politècnica de València. Tema: 10.

89
Problemas de electrónica digital

PREGUNTAS DE TEST DE MÁQUINAS DE ESTADO


1. La máquina de estados de Mealy se diferencia de la de Moore en que:
a) Las salidas dependen directamente de los estados y de las entradas.
b) Las salidas dependen directamente solo de los estados.
c) Es un sistema asíncrono y por lo tanto no necesita señal de reloj.
d) Ambas máquinas de estados son iguales, simplemente son dos formas de de-
nominarla.

2. Si un sistema secuencial síncrono posee 11 estados, ¿Cuántos biestables se necesi-


tan para implementarlo?
a) 3 b) 4 c) 5 d) 11

3. Según la tabla de excitación del biestable J-K, si salida Q = 1 y se desea que al si-
guiente pulso de reloj permanezca Q = 1 es necesario que:

a) J=0 y K=0
b) J=1 y K=0
c) J indiferente y K=0
d) No se puede lograr esta opción

4. Una máquina de estados posee 3 entradas, ¿Cuántas “flechas” saldrán de cada


estado del diagrama?
a) 3 b) 4 c) 6 d) 8

5. La máquina de estados de la figura es:

a) Mealy de cuatro salidas y dos entradas.


b) Mealy con una entrada y una salida.
c) Moore con una entrada y una salida.
d) Moore con dos entradas (sale dos fle-
chas) y una salida.

90
Máquinas de estado

6. En el diagrama de la figura ¿Qué estados son equivalentes entre sí?


a) No hay estados equivalentes.
b) E1, E2 y E3.
c) E1 y E2.
d) E0 y E3.

7. ¿Qué error se ha cometido en el diagrama de la figura de la pregunta anterior?


a) Desde Q3 solo sale una flecha.
b) En Q2 hay una flecha que sale y entra en el mismo estado (y además no tiene
punta).
c) Los nombres de los estados empiezan por Q cuando es necesario que empiecen
por E (las Q significa biestables).
d) No hay ningún error (“el autómata es correcto y determinista”).

8. En el diagrama de la figura ¿Qué estados son equivalentes entre sí?

a) No hay estados equivalentes.


b) E0 y E1.
c) E0, E1 y E3.
d) E3 y E2.

9. ¿Cuántos biestables son necesarios para implementar el diagrama de estados de la


pregunta anterior?
a) 1 b) 2 c) 3 d) 4

91
Problemas de electrónica digital

10. ¿Qué error se ha cometido en el diagrama de estados de la figura que implemen-


ta una máquina de Mealy formada por tres estados con una entrada y una salida

a) Falta el estado Q2.


b) Hay una flecha que tiene el mismo
estado origen y destino.
c) Desde el estado Q3 falta una flecha.
d) Desde el estado Q1 falta una flecha.

Soluciones
1. a) Es la definición de máquina de Mealy.
2. b) Número máximo de estados con 4 biestables: 24=16.
3. c) Tercera opción de la tabla de excitación.
4. c) El doble del número de entradas (para valor 0 y para valor 1).
5. c) Cada estado de una máquina de Moore tienen asignado unas salidas (por ello se
dibujan dentro del círculos) y por cada entrada se dibujan dos flechas (para va-
lor 0 y para valor 1).
6. a) Todos los estados tienen distinta combinación de salidas luego no puede haber
estados equivalentes.
7. d) El resto de opciones de la pregunta no es motivo de error en un diagrama de
estados.
8. b) Q0 y Q1 tienen las mismas salidas (01) y el destino de las flechas es el mismo
para cada valor de la entrada, (cuando es 0 el destino es Q1 y cuando es 1 el
destino es Q3).
9. b) Para implementar cuatro estados hacen falta dos biestables.
10. d) El resto de opciones son ciertas, pero no son errores del diagrama de estados.

92
Máquinas de estado

PROBLEMAS DE MÁQUINAS DE ESTADO


Problema 8.1
Obtener el diagrama de estados (máquina de Moore) y el circuito digital que lo im-
plementa de un sistema secuencial síncrono formado por una entrada “P” y tres sali-
das A, B y C, de forma que si:
• P=0 las salidas sean siempre ABC = 000
(Reset)
• P=1 las salidas realicen la secuencia:
ABC = 100, 010, 001, 100, 010, 001,...
(contador anillo de 3 bits)

Solución
Diagrama de estados (Moore). Una entrada (P), tres salidas (ABC)

Utilizando el programa Boole-Deusto se obtienen las siguientes expresiones simplifi-


cadas del circuito
Posee cuatro estados por lo que se necesita dos biestables (Q1 y Q0).
Utilizando biestables JK: Salidas:
J0=(P) (no depende tipo biestable)
K0=(~q1)+(~P)
J1=(P*q0) A=(q1*q0)
K1=(~P)+(q0) B=(q1*~q0)
Utilizando biestables D: C=(~q1*q0)
D0=(P*~q0)+(P*q1)
D1=(P*q1*~q0)+(P*~q1*q0)

93
Problemas de electrónica digital

El circuito digital utilizando biestables J-K resulta más simple que si se utiliza biesta-
bles de tipo D.

Problema 8.2
Diseñar un sistema secuencial síncrono para controlar un indicador luminoso intermi-
tente con dos lamparitas (L1 y L0) que pueden funcionar de dos maneras según una
entrada de control ( C).
Si C = 0 el encendido y apagado de las luces es simultaneo según el diagrama.
Si C = 1 el encendido y apagado de las luces es alternativo según el diagrama.
Una vez empezado el un ciclo de periodo T debe acabarse, aunque se cambie el valor
de la entrada C.

L1

C=0 t
L0
CLK
L1 t
T
C L0

L1
t
C=1
L0
t
T

94
Máquinas de estado

Solución
• Se parte de un estado inicial (E0) en que ambos ciclos tienes las dos salidas a
nivel bajo.
• Cuando C=0 el ciclo posee el nivel alto una duración doble que el nivel bajo por
que se necesitan dos estados (E3 y E4) con las mismas salidas.

Diagrama con cinco estados luego se necesitan tres biestables.


Utilizando el programa Boole-Deusto se obtienen las siguientes expresiones simplifi-
cadas.
Utilizando biestables JK: Utilizando biestables D:

J0=(~q2*~q1) D0=(~q2*~q1*~q0)
K0=(1) D1=(~C*~q2*~q1)+(~q1*q0)
J1=(~C*~q2)+(q0) D2=(q1*q0)
K1=(1) Salidas
J2=(q1*q0) L0=(q1)+(q2)
K2=(1) L1=(q0)+(q2)

Se elige biestables de tipo JK porque así resulta el circuito más sencillo

95
Problemas de electrónica digital

Circuito electrónico digital con biestables JK


Las entradas cuyas ecuaciones valen 1 (K0, K1 y K2) se conectan a Vcc.

Problema 8.3
Obtener un generador de señal cuadrada en donde la relación entre el tiempo a nivel
alto (H) y a nivel bajo (L) sea programable por medio de una señal de control (C).
Las dos opciones de la forma de señal de salida (SAL) queda indicada en el siguiente
diagrama de tiempos:

CLK

C
SAL
CIRCUITO
A C=0
DISEÑAR
CLK SAL
C=1

Solo se permite el cambio de tipo de ciclo cuando la salida esté a nivel bajo (L). Utilizar
máquina de Moore. Utilizar el circuito con biestables J-K

96
Máquinas de estado

Solución
Se parte de un estado inicial (E0) en que ambos ciclos tienes las dos salidas a nivel
bajo.
Se necesitan solo tres estados (dos biestables).

Utilizando el programa Boole-Deusto se obtienen las siguientes expresiones simplifi-


cadas del circuito
Ecuaciones: (sale más sencillo con biestables JK).
J0=C·q1’
K0=1
J1=C’+q0
K1=1
SAL=q0+q1

97
Problemas de electrónica digital

Problema 8.4
Diseñar un generador de señal cuadrada (SAL) para el control PWM de un motor, en
donde la relación entre el tiempo en nivel alto (H) y el nivel bajo (L) es programable
por medio de dos entradas de control C1 y C0, según el siguiente diagrama de tiem-
pos (4 opciones):

CLK

C1 00
SAL
C0 CIRCUITO 01
A
DISEÑAR
CLK C1,C0 10

11

Solo se permite el cambio de tipo de ciclo cuando la salida esté a nivel bajo (L).
Utilizar máquina de Moore. Utilizar el circuito con biestables J-K.

Solución
El estado inicial (E0) es común para los cuatro ciclos porque en todos ellos la salida
está a nivel bajo.
Según la combinación de entradas el sistema entra en un ciclo que no sale hasta que
vuelve al estado inicial (combinación XX).

Simplificando estados equivalentes


Observando el diagrama anterior se comprueba que los estados E1, E3 y E6 son equi-
valentes porque tienen la misma salida (1) y destino común (E0) para todas combina-
ciones de entradas, luego se puede reducir a un solo estado que llamaremos E1.

98
Máquinas de estado

A su vez, los estados E2 y E5 también son equivalentes entre sí porque tienen la misma
salida (1) y el mismo destino (porque al ser E3 y E6 equivalentes se han reducido a
uno solo). Luego finalmente se obtiene un diagrama con solo cuatro estados.

Utilizando el programa Boole-Deusto se obtienen las siguientes expresiones simplifi-


cadas del circuito.

Ecuaciones:
J0=q1+C0
K0=1
J1=C1·q0’
K1=q0’
SAL=q0+q1

Circuito completo de control PWM para un motor


Utilizando un esquema jerárquico del programa ISIS-Proteus en donde se ha incluido
un subcircuito (SUB1) en cuyo interior se encuentra el circuito de la máquina de esta-
dos. Además, se añadido un contador (74190) donde la señal de reloj es activada por
un pulsador y cuyas dos salidas de menor peso se conectan a las entradas C1 y C0. De
esta forma, a cada pulsación se cambia el ancho de pulso de la señal de salida. La
salida (SAL) se conecta a la base de un transistor que controla la conducción de un
motor de 12V. De esta forma el motor trabajo en modo de modulación de ancho de
pulso (PWM) consiguiendo que su velocidad varíe con el pulsador del contador. La
frecuencia del reloj debe ser lo suficientemente alta para que el movimiento del motor
sea continuo.

99
Problemas de electrónica digital

Problema 8.5
Diseñar un circuito secuencial síncrono tal que al pulsar en P (P=”1”) encienda un LED
con la siguiente secuencia:
• 8 segundos el LED encendido.
• 1 segundo apagado.
• 1 segundo encendido.
• Se apaga el LED y queda a la espera de una nueva pulsación de “P”.
Notas
Utilizar una señal de reloj de 1seg. de periodo.
Mantener P en “1” hasta que se encienda el LED.

Solución
Dos opciones de diseño:
a) Utilizar solo una máquina de estados

100
Máquinas de estado

Se obtiene una máquina de estados demasiado grande para realizar una tarea muy
sencilla (solo tiene una entrada y una salida). Posee 11 estados por lo que se necesitan
4 biestables. Pero se observa que casi toda la tarea consiste en obtener un contador de
ocho, luego puede ser conveniente utilizar para esta tarea un contador comercial y
obtener un sistema mixto (máquina estados y contador)
b) Combinación de máquina de estados + circuito contador (74161)
• Cuando se pulse la entrada P se pone en marcha un circuito contador (IC)
que cuenta hasta 8 (1000).
• Cuando llega a este número (8) se utiliza una salida del contador (Q3) que
indica fin de cuenta y sirva para activar una entrada del diagrama de esta-
dos que bloquee la cuenta y apague el LED.
• Otro estado vuelva a encender el LED (y permanezca el contador bloqueado).
• Vuelta al estado inicial (LED apagado).

Nueva máquina de estados. Se añade una entrada más (inicio de cuenta) y una salida
más (fin de cuenta). Por lo tanto, posee dos entradas y dos salidas:

101
Problemas de electrónica digital

RESULTADOS DEL AUTÓMATA DE MOORE. Utilizando el programa Boole-


Deusto se obtienen las siguientes expresiones simplificadas del circuito
J0=(q1)+(P)
K0=(q1)+(FC) IC=(~q1*q0)
J1=(FC*q0) LED=(q0)
K1=(q0)

Problema 8.6
Diseñar el CIRCUITO DE CONTROL para el arranque y paro de un motor por medio de
dos pulsadores (P1 y P2) de forma que, el primer pulsador actúa como interruptor
general y el segundo pone en marcha el motor (M). El pulsador P1 servirá, además
para parar el motor.
El proceso de arranque y paro será el siguiente:
- Al presionar P1 se enciende un LED rojo.
- Si después de pulsa P2, el motor (M) entra en funcionamiento, se enciende un
LED verde y se apaga el LED rojo.
- El motor se detendrá si se pulsa de nuevo P1, con lo cual también se apagará el
LED verde.

102
Máquinas de estado

Nota: tener en cuenta que el mismo pulsador (P1) sirve para parar el motor y para
volver a iniciar el sistema de arranque.
Solución

El estado E3 hay que ponerlo para esperar a que se suelte P1. Sino al pulsar P2 en E2
se pararía rápidamente a E3 y a E0.

103
Problemas de electrónica digital

1) Expresiones simplificadas
Utilizando el programa Boole-Deusto se obtienen las siguientes expresiones simpli-
ficadas del circuito.

Biestable JK Biestable D
J0=(P1) D0=(~P2*~q1*q0)+(P1*~q0)+(P1*q1)
K0=(P2*~q1)+(~P1*q1) D1=(q1*~q0)+(P1*q1)+(P2*~q1*q0)
J1=(P2*q0)
K1=(~P1*q0)

LR=(~q1*q0)
LV=(q1)
M=(q1)

2) Circuito más sencillo (con biestables J-K)

Problema 8.7
Obtener el diagrama de estados de un sistema secuencial síncrono para controlar
unas luces intermitentes con dos lamparitas (L1 y L0) que pueden funcionar de distin-
ta forma según la posición de una entrada de control C de la siguiente forma:
Si C=0 -> L1 y L0 parpadean de forma simultánea (periodo encendido y apagado igua-
les).
Si C=1 -> L1 y L0 parpadean de forma alternativa (periodo encendido y apagado igua-
les).

104
Máquinas de estado

Cuando se cambie el valor de la entrada C el sistema tendrá que cambiar de forma de


trabajar lo más rápido posible.
a) Utilizando máquina de Moore lo más simplificada posible. Determinar el número de
biestables
b) Utilizando máquina de Mealy lo más simplificada posible. Determinar el número de
biestables
c) Con dos entradas de control (C1 y C0) funcionando de la siguiente forma:
C1=0 y C0=0 → L1 y L0 apagadas.
C1=0 y C0=1 → L1 y L0 parpadean de forma simultá-
nea (periodo encendido y apagado iguales).
C1=1 y C0=0 → L1 y L0 parpadean de forma alternati-
va (periodo encendido y apagado iguales).
C1=1 y C0 =1 → L1 y L0 encendidas fijas.
Utilizando máquina de Moore u Mealy

Solución
a) Máquina de Moore
Una entrada C y dos salidas (L1 y L0).
Cuatro estados para cada una de las cua-
tro combinaciones de encendido de las
luces.
Se forman dos bucles, uno para C=0 y otro
para C=1. Cada vez que C cambia de valor
se cambia de bucle

b) Máquina de Mealy
Como las salidas no van asiganadas a un
estado solo son necesarios dos estados
formando siempre un bucle entre ello pero
en función del valor de la entrada va cam-
biando el valor de las salidas.

105
Problemas de electrónica digital

c) Máquina de Moore
De forma similar al apartado a), la má-
quina tiene cuatro estados para cada una
de las cuatro combinaciones de salida.
Pero ahora tiene dos entradas por lo que
hay cuatro combinaciones de entrada.
En caso de C1=C0=0 la máquina se blo-
quea en estado E0 (salidas 00). En caso de
C1=C0=1 la maquina se bloquea en en el
estado E3 (salidas 11).
De cada estado salen cuatro flechas para
cada una de las combinaciones de entra-
das.

Máquina de Mealy
De forma similar al apartado b) solo son necesarios dos estados. Ahora se forma un
bucle cerrado con luces encendidas fijas (11) y otro para luces apagadas fijas (00)

Problema 8.8
Se desea obtener un circuito electrónico síncrono para activar tres lámparas (A, B, y C)
de manera que solo una de ellas esté encendida al mismo tiempo y el encendido varíe
en forma de vaivén, es decir siguiendo la secuencia:
100 -> 010 -> 001 -> 010 -> 100 -> 010 etc. (contador en “anillo” alternativo)
Dos casos:
a) El tiempo de encendido es igual para las tres lámparas.
b) El circuito posee otra entrada de control de tiempo (T) de manera que:
T = 0 el tiempo encendido de la lámpara A y C es el doble que la de B
T = 1 el tiempo de encendido de las tres lámparas es el mismo.

106
Máquinas de estado

Obtener el diagrama de estados de una máquina de Moore que realice la aplicación


descrita. Determinar el número de estados mínimos y número de biestables necesarios.

Solución
• Hay que tener presente que debe haber dos estados con las salidas 010, uno para
cada sentido de la secuencia, luego hace falta cuatro estados.
• La máquina de estados no tiene entradas, la secuencia es fija

b)
• Máquina de estado con una entradas (T) y tres salidas (A,B,C).
• Cuando T=0 la máquina pasa por dos estados con la misma combinación de sa-
lidas (100 y 001) y cuando T=1 solo por un estado con estas combinaciones de
salida. En ambos casos, son necesarios dos estados con la combinación 010,
uno para la ida y otro para la vuelta.

Nº estados: 6 -> nº biestables: 3

107
Problemas de electrónica digital

Problema 8.9
Un sistema secuencia síncrono está formado por una entrada de datos en serie (X),
una entrada de reloj que permite la entrada de datos y unas salidas. Se desea obtener
la suma de los dos últimos bits que han entrado por el termina de entrada de datos
(X) a cada pulso de la entrada de reloj (CLK). Realizar el diagrama de estados del sis-
tema secuencial síncrono.
b) Modificar el diagrama para que el valor de la salida sea la suma del bit presente en
X más el anterior.
XT-1: Dato en X en el pulso anterior.
XT-2 : Dato en X dos pulsos anteriores.

XT-2 XT-1 SAL X


Sistema
SAL
0 0 0
a
0 1 1
CLK Diseñar
1 0 1
1 1 2

Solución
Máquina de Moore
Como el número máximo es dos necesitamos dos salidas. Máquina de estados con una
entrada (X) y dos salida: SAL1 y SAL0.

108
Máquinas de estado

Mealy. Es la suma del número anterior con el actual en X. Solo se precisan dos estados.

Problema 8.10
Mediante el circuito de la figura se pretende controlar un semáforo. Se utiliza para
ello:
 Una señal de reloj de 1 segundo.
 Un contador síncrono decimal (BCD) 74LS191.
 Un circuito secuencial a diseñar.
El circuito secuencial realizará el control de cada uno de los estados del semáforo. La
secuencia cíclica y la temporización de cada uno de los colores Rojo (R), Amarillo (A) y
Verde (V) son las siguientes:
Verde (18 segundos) -> Amarillo (1 segundo) -> Rojo (9 segundos)

Circuito Secuencial
Entradas Salidas
FC R A V CE
(Final de Cuenta) (Rojo) (Amarillo) (Verde) (Habilitación)

109
Problemas de electrónica digital

a) Dibujar el cronograma correspondiente a las señales FC y PL (suponiendo que la


señal CE se mantiene a nivel bajo).
15 3
P0 Q0 R
1 P1 Q1 2
10 6 FC
P2 Q2 A
9 P3 Q3 7
CIRCUITO V
5 U/D RC 13
SECUENCIAL
4 CE TC 12
SEÑAL DE PL CE
14 CP PL 11
RELOJ DE
1 SEGUNDO
74LS191

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

CP

FC

PL

Características del contador decimal 74LS191

Fuente: SN74LS191 de Motorola

b) Implementar el diagrama de estados MOORE del circuito secuencial. Para las sali-
das utiliza el mismo orden que el descrito en la tabla anterior, es decir: R, A, V y PL.

Solución
a) La señal FC (fin de cuenta) se activa a nivel alto cuando Q3=1, es decir en la
cuenta del número 8.
La señal PL (Parallel Load) se activa a nivel bajo (puerta NAND) cuando Q3=1 y
Q0=0, es decir en la cuenta número 9. Esta señal provocará una carga asíncrona
de las entradas en paralelo que está conectadas a masa. Esta señal equivale a un
reset que hace desactivar la puerta NAND y hace que el contador cuente hasta 9.

110
Máquinas de estado

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

CP

FC

PL

b) Cada estado tiene cuatro salidas (Rojo, Amarillo, Verde, CE) y una entrada FC. La
entrada servirá para mantener mediante un bucle el estado activo durante 8 segun-
dos.
La máquina de estados está formada por cuatro estados, dos para la luz verde, uno
para la amarilla y otro para la luz roja.
El estado de la luz amarilla (E2) no tiene bucle, solo está un segundo en ella y la
salida CE=1 para que el contador no cuente (HOLD).

Problema 8.11
Dibuja un diagrama de estados tipo MOORE de un circuito secuencial síncrono que
controle el proceso de secado de piezas industriales.
El proceso es el siguiente:
• El operario deposita la pieza dentro del radio de acción del detector A.
• Entonces, la cinta transportadora se pondrá en marcha desplazando la pieza
hacia la derecha dirigiéndose hacia la cámara climática.
• Cuando el detector B detecte la pieza (dentro de la cámara climática) la cinta se
parará y se pondrá en marcha la cámara comenzando el proceso de secado.

111
Problemas de electrónica digital

• Cuando el sensor de temperatura detecte la temperatura programada, la pieza


estará seca y por tanto el sistema apagará la cámara climática y la cinta trans-
portadora se pondrá en marcha dirigiéndose de nuevo hacia el detector A.
• Cuando el detector A detecte la pieza parará la cinta y quedará a la espera de
que la pieza se retire.
• Cuando la pieza se retire el sistema se reiniciará al estado inicial.
Nota: una vez iniciado el proceso el sistema debe terminar toda la secuencia.

Cámara
Climática
Pieza a secar
Sensor Tª
Motor

Detector A Detector B

Resumen de los elementos. (Utiliza este orden para diseñar el diagrama de estado)
Entradas Salidas
DA DB ST MD MI CC
Sensor de Motor a Motor a Cámara
Detector A Detector B
Temperatura derechas izquierdas climática

• El motor puede girar a derechas o a izquierdas. Para ello se utilizan dos líneas
diferentes (MD y MI). El nivel de activación es por nivel alto.
• El nivel de activación de la cámara es por nivel alto.
• Los detectores proporcionan un nivel alto cuando la pieza entra dentro de su
radio de acción.
• El sensor de temperatura proporciona un nivel alto cuando se alcanza la tem-
peratura programada.

112
Máquinas de estado

Solución
Máquina de estados con tres entradas (DA, DB y CC) y tres
salidas (MD, MI y CC)
E0: estado inicial. Sistema parado. Cuando DA se activa
pasa a estado siguiente.
E1: cinta transportadora en marcha hacia la derecha.
Cuando detecta DB se pasa a estado siguiente.
E2: cinta parada y cámara climática en marcha. Cuando sensor temperatura detecta
la temperatura programada pasa al estado siguiente.
E3: Cámara climática apagada. Cinta transportadora en marcha hacia la izquierda.
Cuando se vuelva a activar el detector A pasa al estado Q0 (estado inicial).

Problema 8.12
Se desea realizar el control de un proceso de secado por infrarrojos de objetos que
llegan a una cámara en una cinta transportadora. El esquema del proceso se muestra
en la siguiente figura:

113
Problemas de electrónica digital

El funcionamiento es el siguiente:
1.- Un operario sitúa el objeto en la posición “A”. Al pulsar el botón “P” el motor “M”
(M=1) se pone en movimiento hacia la derecha en dirección a la Cámara de secado
(D/I=1).
2.- Cuando el objeto llega al final de carrera “Int”, se detiene el motor (M=0) y activa
con una señal “ON” la emisión infrarroja de la cámara. El tiempo de emisión es
controlado por un reloj (anexo al sistema) que proporciona la señal “OFF” a nivel
alto al finalizar el tiempo de radiación.
3.- Una vez finalizado el secado, el motor se pone otra vez en movimiento en sentido
contrario (D/I=0) para detenerse al interrumpir la barrera fotoeléctrica “F” (F=0).
NOTA: las situaciones del proceso no definidas en los puntos anteriores, se definirán
según libre criterio del alumno.
Se pide:
Realizar una tabla de variables, siguiendo el ejemplo:
Nombre de variable Tipo Descripción Actividad
P entrada Pulsador Pulsador = “1”
M salida Motor En marcha M=”1”

Dibuja el diagrama de estados de una máquina de Moore con el funcionamiento des-


crito.
Solución
a) Nombre de variable Tipo Descripción Actividad
P entrada Pulsador Pulsador = “1”
M salida Motor En marcha M=”1”
D/I salida dirección D/I=1 derecha
INT entrada fin de carrera 1=fin de carrera
C salida emisión IR ON=1 cámara
F entrada barrera fotoeléctrica f=0 delante barrera
inic salida inicio contador 1=inicio
finc entrada fin de cuenta 1=fin de cuenta

114
Máquinas de estado

b) La distribución de entradas: P-INT-F-FINC, de salidas: M-DI-C-INIC


E0: estado de reposo (M=0). Hasta que no se pulse el botón (P=1) no sale de este
estado.
E1: estado de poner en marcha el motor (M=1) para mover la cinta hacia la dere-
cha (D/I=1), Cuando llegue al final de carrera (INT=1) el motor se detiene y
pone en marcha la cámara de infrarrojos (C=1) y el temporizador (inic=1).
E2: estado con cámara infrarrojos funcionando. Cuando llegue fin temporización
(finc=1) se detiene.
E3: estado de poner en marcha el motor (M=1) para mover la cinta hacia la iz-
quierda (D/I=0). Cuando el objeto corte la barrera fotoeléctrica (F=0) el mo-
tor se detiene (M=0).

Utilizando el programa Boole-Deusto se obtiene el circuito electrónico digital formado


por dos biestables de tipo JK.

115
Capítulo 9
Memorias

Se trata de un tema descriptivo sobre la tecnología y la estructura de las memo-


rias de semiconductores en el que no se suelen realizar problemas Es un tema
habitual en la mayoría de los libros de electrónica digital. Ejemplos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson
Educación. Tema: 10.
• Tocci, Ronald J. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª ed.
Pearson Educación. Tema: 12.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed.
Marcombo. Tema: 7.
• Mano, M. Morris. Diseño Digital. 3ª ed (2016) Ed. Pearson. Tema: 7.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universi-
tat Politècnica de València. Tema: 12.

117
Problemas de electrónica digital

PREGUNTAS DE TIPO TEST DE MEMORIAS


1. Las memorias DRAM (RAM dinámica) son memorias volátiles que se caracteri-
zan por:
a) Necesitar un proceso de refresco de la información almacenada.
b) No necesitar un proceso de refresco de la información almacenada.
c) Estar formada por circuitos biestables D.
d) Ser más rápida que la SRAM.

2. ¿Cuál de las siguientes memorias es no volátil?


a) DRAM.
b) FLASH.
c) RAM estática.
d) RAM dinámica.

3. Para direccionar una memoria de 16 Kbytes ¿Cuántas líneas de dirección son


necesarias?
a) 8 b) 10 c) 12 d) 14

4. ¿Cuantas palabras se puede almacenar en una memoria de 211x8 bits?


a) 8
b) 11
c) 2048
d) 16384

118
Memorias

5. En el circuito de la figura, si m=10 y n=8 ¿Cuál será el tamaño de la palabra


obtenida con el conjunto de las dos memorias?

a) 8
b) 10
c) 16
d) 20

6. ¿Por qué necesitan las memorias RAM dinámicas un circuito de refresco?


a) Para disminuir su temperatura.
b) Para actualizar su información.
c) Para modificar la información.
d) Para rescatar información perdida.

7. Las UVPROM, se caracterizan por ser memorias que se:


a) Borran y escriben por medio de radiación ultravioleta.
b) Borran y escriben eléctricamente.
c) Borran por medio de radiación ultravioleta pero se escriben eléctricamente.
d) Borran eléctricamente pero se escriben por medio de radiación ultravioleta.

8. Las EEPROM, se caracterizan por ser memorias que se:


a) Borran y escriben por medio de radiación ultravioleta.
b) Borran y escriben eléctricamente.
c) Borran por medio de radiación ultravioleta pero se escriben eléctricamente.
d) Borran eléctricamente pero se escriben por medio de radiación ultravioleta.

119
Problemas de electrónica digital

9. ¿Qué tipo de memoria se utilizan en: cámaras fotográficas, reproductores


MP3/MP4 y ficheros en discos USB?
a) Memorias Flash.
b) Memoria DRAM (RAM dinámica).
c) Memoria SRAM (RAM estática).
d) Memoria ROM de máscara.

10. La siguiente figura muestra el patillaje de la memoria SRAM CY7C149 ¿qué


tamaño tiene dicha memoria?

a) 512 palabras de 4 bits.


b) 1024 palabras de 8 bits.
c) 512 palabras de 8 bits.
d) 1024 palabras de 4 bits.

Fuente: CY7C149 de Cypress

11. Cuándo una memoria no está seleccionada a través del terminal de CS (Chip
Select), ¿Cómo se encuentran sus salidas?
a) A nivel Alto.
b) A nivel Bajo.
c) En alta impedancia.
d) Indeterminadas.

120
Memorias

Soluciones
1) a) DRAM almacena la información por medio de la carga de condensadores
internos.
2) b) El resto son memorias RAM, luego son volátiles.
3) d) 214=16384=16Kbytes.
4) c) 211=2048
5) c) El circuito es un duplicador del tamaño de la palabra de la memoria, luego
2∙n=2x8=16.
6) b) Circuito de recarga de los diminutos condenadores que forman celda de me-
moria.
7) c) UVPROM: Ultra Violet PROM (solo borrar).
8) b) EEPROM: Electrical Erase PROM.
9) a) Memorias Flash son memorias no volátiles de alta capacidad.
10) d) Diez entradas de dirección (A9 a A0). 210=1024. Tamaño palabra 4 bits (I/O3
a I/O0).
11) c) Para desconectarse con bus de salida.

121
Capítulo 10
Dispositivos lógicos
programables

Tema descriptivo sobre los Dispositivos Lógicos Programables (PLD) en general y de la


estructura PAL en particular. Además, en este tema también se han incorporado pre-
guntas del lenguaje de descripción de hardware VHDL, que se han puesto en una sec-
ción aparte porque el nivel de estudio de esta materia en la enseñanza universitaria
varía en función del curso y titulación académica.
Además de la bibliografía general existe una bibliografía específica sobre este tema,
tanto en la descripción de los circuitos programables como en el lenguaje VHDL.
Ejemplos:
• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Ed. Pearson
Educación. Tema: 11.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª
ed. Pearson Educación. Tema: 10.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed. Mar-
combo. Tema: 9.
• Roth, Charles H. (2004). Fundamentos de Diseño Lógico. 5ª ed. Paraninfo.
Temas: 17 y 20.
• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital. Editorial Universitat
Politècnica de València. Tema: 13.

123
Problemas de electrónica digital

Específicos de PLD y VHDL


• Mandado, Enrique; Alvarez, Jacobo; Valdés, Mª Dolores (2002). Dispositivos Lógi-
cos Programables y sus aplicaciones. Ed. Thomson.
• Kleitz, William (2014). Digital electronics: a practical approach with VHDL. 9th ed.
Prentice Hall.
• Ashenden, Peter J. (2008). The student's guide to VHDL 2nd ed. Morgan Kaufmann
cop.

PREGUNTAS DE TEST DE DISPOSITIVOS LÓGICOS PROGRAMABLES


1. ¿Por qué se dice que una PAL es un dispositivo programable?
a) Porque ejecuta un programa escrito en una memoria flash.
b) Porque necesita un programa para determinar cuáles son las funciones lógicas
que implementa, pero no ejecuta ningún programa en su funcionamiento.
c) Porque tiene una serie de patillas de control que, según su estado de lógico, de-
terminan el funcionamiento del circuito.
d) Porque, para que funcione, necesita estar conectada a un ordenador con pro-
gramas informáticos específicos.

2. La estructura de las PAL se caracteriza por tener:


a) Matriz AND programable y OR fija.
b) Matriz AND fija y OR programable.
c) Matriz AND programable y OR programable.
d) Matriz AND fija y OR fija.

124
Dispositivos lógicos programables

3. ¿Qué función lógica se obtiene en el esquema interno de la PAL de la figura

A a) F = A⋅ B ⋅ C
B b) F = A⋅ B ⋅ C + B ⋅ C
C c) F = A⋅ B ⋅C + A⋅ B ⋅C

d) F = A⋅ B ⋅C + A⋅ B ⋅C
F

4. ¿Cuál de los siguientes dispositivos programables posee una estructura interna más
compleja?
a) FPGA
b) CPLD
c) PAL22V10
d) PAL16L8

5. La PAL22V10 se caracteriza por tener las salidas:


a) Activas a nivel alto.
b) Activas a nivel bajo.
c) Registradas.
d) Programables.

6. De la PAL22V10 se puede obtener


a) 10 entradas máximas.
b) 10 entradas mínimas.
c) 10 salidas máximas.
d) 10 salidas mínimas.

125
Problemas de electrónica digital

7. Según el esquema de la PAL de la figura, ¿Cómo pueden ser las salidas, combinacio-
nales o secuenciales?

a) Solo combinacional.
b) Solo secuencial.
c) Cada salida se puede con-
figurar como secuencial o
como combinacional.
d) La mitad de las salidas
combinacional y la otra
mitad secuencial.

Fuente: PALR4 de AMD

8. ¿Cómo se denomina el formato del fichero necesario para grabar las conexiones de
una PAL (GAL22V10)?
a) Intel HEX (*.HEX).
b) JEDEC (*.JED).
c) Ensamblador (*.ASM).
d) Motorola S19.

9. El siguiente esquema corresponde a una sección de una PAL. ¿Cuántas entradas


tiene la puerta AND indicada en el recuadro?

Fuente: Texas Instruments

a) 1 b) 6 c) Ninguna d) 32

126
Dispositivos lógicos programables

LENGUAJE VHDL

10. ¿Cuantos terminales de entrada y salida posee en total el circuito que tiene la si-
guiente expresión en VHDL?
ENTITY comparador IS
PORT (A,B: IN std_logic_vector (3 Downto 0);
igual, mayor, menor: OUT std_logic);
END comparador;

a) Dos entradas y una salida.


b) Cuatro entradas y tres salidas.
c) Cuatro entradas y cuatro salidas.
d) Ocho entradas y tres salidas.

11. En VHDL, ¿cómo se denomina a la sección que describe las entradas y salidas de un
dispositivo?
a) Entity
b) Architecture
c) PORT
d) Library

12. En VHDL ¿Con qué sentencia se indica que una señal actúa con un reloj activo por
flanco de BAJADA?
a) Clock DOWN.
b) Clock = ‘0’.
c) Clock’EVENT AND Clock=’1’.
d) Clock’EVENT AND Clock=’0’.

127
Problemas de electrónica digital

13. ¿Cuantos terminales de entrada y de salida posee en total el circuito que tiene la
siguiente expresión en VHDL?
port a) Una entradas y dos salida
(w: in std_logic_vector (3 downto 0);
b) Tres entradas y una salida
y: out std_logic_vector (1 downto 0);
z: out std_logic); c) Tres entradas y dos salida
d) Cuatro entradas y tres salidas

14. ¿Qué valores puede tomar cada entrada y salida del programa VHDL de la pregunta
anterior (std_logic)?
a) TRUE, FALSE.
b) Enteros -(231) hasta +(231 - 1).
c) Números en coma flotante.
d) '0', '1' 'U' = no inicializado, 'X' = desconocido, 'Z' = flotante, '-' = no importa.

15. En VHDL mediante la expresión signal aux: bit; se indica que:


a) aux es una señal interna de tipo bit.
b) aux es un comentario auxiliar para el programador.
c) aux es un bit bidireccional.
d) aux es un bit del registro signal.

16. En el siguiente fragmento de programa VHDL correspondiente a un Latch R-S


entity S_RLatch is ¿Cómo queda la salida Q si ambas
port (R, S: in bit; Q: out bit); entradas se encuentran a nivel alto
end entity S_RLatch; (R=S=1)?
a) Se produce oscilación
architecture architec of S_RLatch is
begin b) Se queda como estaba (estable)
process (R, S) c) Situación no definida.
begin
If S =´0´ then Q <= ´1´; d) Q=1
elseif R = ´0´ then Q <= ´0´;
end if;
end process
end architec;

128
Dispositivos lógicos programables

Soluciones
1. b) En el funcionamiento de las PAL no hay programa que se esté ejecutando en su
interior.
2. a) El caso contrario corresponde a las memorias.
3. b) Hay que fijarse en las conexiones que permanecen integras de la matriz AND.
4. a) FPGA (Field Programmable Gate Array).
5. d) La letra V significa Versatil (programable).
6. d) El último número significa el número de salidas máximas.
7. d) Tiene cuatro salidas combinacionales y cuatro registradas (con biestables).
8. b) El resto de opciones corresponden a formatos para memorias o microcontrola-
dores.
9. d) Número de líneas que lo cruza (0 a 31).
10. d) Dos vectores de cuatro entradas cada uno y tres salidas simples.
11. a) Es el primer bloque de un programa VHDL.
12. d) El evento pasa a valor 0.
13. d) Un vector de entrada de 4 bits, un vector de salida de dos bits más una salida
simple.
14. d) Tiene que estar incorporada la sentencia: use ieee.std_logic_1164.all;
15. a) Actúa como una señal parcial.
16. d) No se cumple ninguna de las condiciones y se sale del bloque “process” dejan-
do la salida Q como estaba.

129
Problemas de electrónica digital

PROBLEMAS DE DISPOSITIVOS LÓGICOS PROGRAMABLES

Problema 10.1.
A partir del siguiente programa fuente de VHDL contestar a las siguientes preguntas:

library ieee;
use ieee.std_logic_1164.all; a) Dibujar un bloque del circuito,
indicando todas las entradas y
salidas. ¿Qué tipo de circuito
ENTITY circuito IS
digital implementa?
PORT (reloj, reset : in std_logic;
b) Dibuja un posible diagrama de
sal : out std_logic_vector(2 downto 0));
estados del circuito
END circuito;
c) ¿El reset es síncrono o asín-
crono? ¿Por qué?
ARCHITECTURE arq_circuito OF circuito IS
d) ¿Cuándo es activa la señal de
BEGIN
reloj? ¿Qué sucede al circuito
PROCESS (reloj) si no hay señal activa de reloj?
BEGIN
IF (reloj 'EVENT AND reloj ='1') THEN
IF reset='0 ' THEN sal <='0 ';
ELSIF sal < 6 THEN sal <= sal + 1;
ELSE sal <= 1;
END IF;
END IF;
END PROCESS;
END arq_circuito;

130
Dispositivos lógicos programables

Solución
a)

Circuito contador de 1 a 6 con reset

b)

c) El reset es síncrono porque se ejecuta después de aplicar la señal de reloj adecuada.


d) La señal de reloj es activa por flanco de subida. Si no hay señal de reloj el circuito
permanece como está (estable).

Problema 10.2
Se desea diseñar el sistema de control de monedas de una máquina expendedora que
admite monedas de 10, 20 y 50 céntimos de euro. El bloque electrónico tiene tres en-
tradas que indica si se ha introducido una de las monedas válidas: la entrada D indica si
ha sido de 10 céntimos, la V de veinte y la C de cincuenta. Solo una de las tres entradas
puede estar activa en un instante dado. La salida del bloque debe ser un bus de datos
con el valor binario de la moneda que ha sido introducida.

131
Problemas de electrónica digital

Solución
Programa del sistema diseñado en lenguaje VHDL

library ieee;
use ieee.std_logic_1164.all;

Entity moneda is
port ( d, v, c : in std_logic ;
valor: out integer range 0 to 50);
end moneda;

architecture detector of moneda is


signal val_mon: std_logic_Vector (2 downto 0);
begin
val_mon <= (c & v & d);
Process (val_mon)
begin
case (val_mon) is
when “001” => valor <= 10;
when “010” => valor <= 20;
when “100” => valor <= 50;
when others => valor <= 0;
end case;
end process;
end detector;

Problema 10.3
Diseñar un sistema de control de temperatura que tenga tres salidas independientes
conectadas a un led cada una. La entrada al sistema de control es un bus de datos de 4
bits procedente de un convertidor analógico-digital encargado de convertir el valor
analógico de temperatura de un sensor a un valor binario de 4 bits. El sistema debe
responder de tal forma que si la señal de entrada esta entre 0000 y 1000 se activará una
de las salidas correspondientes al estado “Frio”, si el valor se encuentra entre 1001 y
1010 se activará la salida del estado “Templado” y por último entre 1011 y 1111 se acti-
vará la salida del estado “Calor”.

132
Dispositivos lógicos programables

Solución
Programa del sistema diseñado en lenguaje VHDL

library ieee;
use ieee.std_logic_1164.all;

entity sistema is
port ( dig_val : in integer range 0 to 15;
frio, templ, calor : out bit);
end sistema;

architecture arc_sis of sistema is


Signal status : Bit_Vector (2 downto 0);
Begin
frio <= status(2);
templ <= status(1);
calor <= status(0);
Process (digital_value)
begin
If (dig_val <= 8) then status <= “100”;
Elsif (dig_val > 8 and dig_val < 11) then
status <= “010”;
Else status <= “001”;
end if;
end process;
end arc_sis;

Problema 10.4
Diseñar el control de un teclado 3x4 con visualización de la tecla pulsada mediante un
display de 7 segmentos codificada en BCD.
El sistema se basa en utilizar un contador en anillo de 4 bits conectado a las filas del
teclado funcionando a una frecuencia suficientemente alta para que al pulsar cualquier
tecla ésta sea leída utilizando las columnas del teclado. El sistema responde, por ejem-
plo, a la secuencia del siguiente esquema:

133
Problemas de electrónica digital

Así según la tecla pulsada se obtiene el siguiente decodificador:

L3..L0 C2..C0 Tecla pulsada Código


BCD
0001 001 1 0001
0010 001 4 0100
0100 001 7 0111
1000 001 * 1100
0001 010 2 0010
0010 010 5 0101
0100 010 8 1000
1000 010 0 0000
0001 100 3 0011
0010 100 6 0110
0100 100 9 1001
1000 100 # 1111

134
Dispositivos lógicos programables

El sistema general se implementa según el siguiente esquema en una GAL22V10:

El sistema tiene una entrada de inicialización (IR) y un reloj (CLOCK) para el control de
velocidad del contador en anillo. Para el control del teclado se tendrán 4 salidas de con-
trol de las filas (L[0..3]) y 3 entradas para el control de las columnas (C[0..2]). Por último,
posee 4 salidas en BCD para conectar al display de 7 segmentos. Se necesita una señal
interna (Pulse) que indique si se ha pulsado alguna tecla.
De esta forma el código en VHDL se dividirá en dos bloques: uno el contador en anillo y
otro el decodificador. El contador en anillo tiene como entrada el reloj de control y co-
mo salidas las L[0..3] y el decodificador tiene como entradas L[0..3] y C[0..2] y como
salida el código BCD.

135
Problemas de electrónica digital

Solución
a) El flujograma del programa se muestra a continuación donde PULSE es la señal que
indica si se ha pulsado o no una tecla y DECO es el valor conjunto de las filas más las
columnas.

136
Dispositivos lógicos programables

b) Programa del sistema diseñado en lenguaje VHDL.

library ieee;
use ieee.std_logic_1164.all;

ENTITY ring IS
PORT(clk, ir: IN std_logic;
C : in std_logic_vector(2 downto 0);
Q : OUT std_logic_VECTOR(3 DOWNTO 0);
L : INOUT std_logic_VECTOR(3 DOWNTO 0));
END ring;

ARCHITECTURE ani OF ring IS


SIGNAL deco : std_logic_VECTOR(6 DOWNTO 0);
SIGNAL pulse : std_logic;
BEGIN
pulse <= (C(2) OR C(1) OR C(0));
deco <= L(3)&L(2)&L(1)&L(0)&C(2)&C(1)&C(0);
PROCESS(clk)
BEGIN
IF (clk = '1' AND clk'EVENT) THEN
if (ir = '1') then L <= (0=> '1', others => '0');
else
L(1) <= L(0);
L(2) <= L(1);
L(3) <= L(2);
L(0) <= L(3);
end if;

if (pulse = '1') then


case deco is
when “0001001"=> Q <="0001";
when "0010001"=> Q <="0100";
when "0100001"=> Q <="0111";
when "1000001"=> Q <="1100";
when “0001010"=> Q <="0010";
when "0010010"=> Q <="0101";
when "0100010"=> Q <="1000";
when “1000010"=> Q <="0000";
when “0001100"=> Q <="0011";
when "0010100"=> Q <="0110";
when "0100100"=> Q <="1001";
when “1000100"=> Q <="1111";
when others => Q <="1111";
END case;
End if;
End if;
END PROCESS;
END ani;

137
Problemas de electrónica digital

Problema 10.5
Diseñar un control de un motor paso a paso bipolar con una entrada de reloj que con-
trole los pasos del motor y una entrada de control del sentido de giro (C). Se utilizará
solamente el funcionamiento “Full-step” cuya secuencia es la siguiente (entradas al
motor ABCD): 1010-1001-0101-0110.

Solución
Se deberá diseñar un contador en VHDL que siga la siguiente secuencia:

138
Dispositivos lógicos programables

Descripción de la máquina de estados en lenguaje VHDL


library ieee;
use ieee.std_logic_1164.all;

ENTITY counter IS
PORT (clock, c: in std_logic;
q : inout std_logic_vector(3 downto 0));
END counter;

ARCHITECTURE counter_a OF counter IS


BEGIN
PROCESS(clock)
BEGIN
IF (clock'EVENT AND clock='1') THEN
IF c='1' then
CASE q IS
WHEN "0000" => q <="1010";
WHEN "1010" => q <="1001";
WHEN "1001" => q <="0101";
WHEN "0101" => q <="0110";
WHEN "0110" => q <="1010";
WHEN OTHERS => q <="0000";
END CASE;
ELSE
CASE q IS
WHEN "0000" => q <="0110";
WHEN "0110" => q <="0101";
WHEN "0101" => q <="1001";
WHEN "1001" => q <="1010";
WHEN "1010" => q <="0110";
WHEN OTHERS => q <="0000";
END CASE;
END IF;
END IF;
END PROCESS;
END counter_a;

139
Problemas de electrónica digital

Circuito completo

Problema 10.6
Diseñar un control de un motor paso a paso bipolar cuyo movimiento sigue la posición
de un codificador (encoder 25LB10-Q) incremental mecánico. Un codificador incremen-
tal, es un codificador que determina el ángulo de posición por medio de conteos incre-
mentales. Esto significa que el codificador incremental proporciona una posición estra-
tégica desde donde la cuenta se iniciará siempre. La posición actual del codificador es
incremental en comparación con la última posición registrada por el sensor. Los codifi-
cadores incrementales generan un número exactamente definido de impulsos por revo-
lución. Estos indican la medida de la distancia angular y lineal recorrida. Debido al cam-
bio de fase entre las señales A y B (aproximadamente 90 grados), la dirección de
rotación. El 25LB10-Q es de 36 posiciones en pasos de 10º.
El sistema se debe diseñar en base a una máquina de estados tipo Moore, con la entra-
da de reloj, las dos entradas procedentes del codificador y cuatro salidas para controlar
el motor en el modo “full-step”.

140
Dispositivos lógicos programables

Solución
El diagrama de estados de la máquina tipo Moore es el siguiente:

Las entradas deben seguir las siguientes secuencias:

Y las salidas (entradas al motor ABCD): 1010-1001-0101-0110.

141
Problemas de electrónica digital

Descripción de la máquina de estados en lenguaje VHDL

library ieee;
use ieee.std_logic_1164.all;

ENTITY counter IS
PORT (clock,rst: in std_logic;
direction: in std_logic_vector (1 downto 0);
q : out std_logic_vector(3 downto 0));
END counter;

ARCHITECTURE counter_a OF counter IS


type state_type is (Q0, Q1, Q2, Q3);
signal state : state_type;

BEGIN
PROCESS(clock,rst)
BEGIN
if rising_edge(clock) then
If (rst = '0') then state <= Q0; q <="0110";
else
CASE state IS
WHEN Q0 => q <="0110";
if direction="01" then state<=Q1;
elsif direction="10" then state<=Q3;
else state<=Q0;
end if;
WHEN Q1 => q <="1010";
if direction="11" then state<=Q2;
elsif direction="00" then state<=Q0;
else state<=Q1;
end if;
WHEN Q2 => q <="1001";
if direction="10" then state<=Q3;
elsif direction="01" then state<=Q1;
else state<=Q2;
end if;
WHEN Q3 => q <="0101";
if direction="00" then state<=Q0;
elsif direction="11" then state<=Q2;
else state<=Q3;
end if;
END CASE;
END IF;
END IF;
END PROCESS;
END counter_a;

142
Dispositivos lógicos programables

Circuito Completo:

Problema 10.7
Se desea diseñar un sistema que guarde un número de código. El número está formado
por 4 cifras y será introducido usando un teclado matricial 3x4. Las cifras se mantendrán
en las primeras cuatro direcciones de una SRAM. La introducción del código comenzará
con la tecla (*) y terminará con la tecla (#). Se utilizará la RAM estática 6116 CMOS. Por
simplificar el diseño el código no debe tener dos cifras iguales consecutivas, por ejem-
plo, 5544 pero si en distinta posición como 5454. Utilizar una máquina de estados tipos
Moore para obtener el sistema de control. El valor de la tecla pulsada viene dado en
BCD. Las características de la memoria 6116 son las siguientes:

Fuente IDT

143
Problemas de electrónica digital

Solución
Solo interesa para este diseño el proceso de escritura, en esta memoria tiene dos tipos
diferentes de ciclo de escritura:

Fuente IDT
Se puede observar que en el tipo 2 controlado por la señal CS, la señal de escritura WE
está siempre a nivel bajo durante todo el proceso lo que va a facilitar el diseño puesto
que se puede dejar a nivel bajo de forma fija y trabajar solo con la señal CS.
El diagrama de la máquina de estados puede ser el siguiente:

144
Dispositivos lógicos programables

Donde la entrada KEY es el valor en BCD de la tecla pulsada, DATA es el valor a guar-
dar en la memoria RAM, CS es la señal Chip Select de la memoria RAM y ADDRESS las
4 líneas (bajas) del bus de direcciones de la memoria RAM.
La señal de reloj que se utiliza para controlar la máquina de estados tiene la frecuencia
adecuada para cumplir los tiempos que requiere el ciclo de escritura de la memoria.

Descripción de la máquina de estados en lenguaje VHDL

library ieee;
use ieee.std_logic_1164.all;
entity FSM is
port(
KEY: in std_logic_vector ( 3 downto 0 );
CLK: in std_logic ;
ADDRESS: inout integer range 0 to 3;
DATA: out std_logic_vector ( 3 downto 0 );
CS: out std_logic );
end;
architecture A_FSM of FSM is
type state_type is (Q0, Q1, Q2, Q3);
signal state : state_type;
Begin
process (CLK)
begin
if rising_edge(clk) then
if (RST = '1') then state <= Q0;ADDRESS<=0;DATA<="0000";CS<='1';
elsif rising_edge(clk,RST) then
case state is
when Q0 => CS <= '1'; ADDRESS <= 0;
if KEY = "1100" then state <= Q1; else state <= Q0; end if;
when Q1=> CS <= '0'; ADDRESS <= ADDRESS; DATA <= KEY;
if KEY = "1111" then state <= Q0;
elsif KEY = "1100" then state <= Q1; else state <= Q2;
end if;
when Q2 => CS <= '1';
if (DATA = KEY) then state <=Q2;
elsif KEY = "1111" then state <= Q0; else state <= Q3;
end if;
when Q3=> ADDRESS <= ADDRESS + 1 ; state<=Q1;
when others => state <= Q0;
end case;
end if ;
end process;
end A_FSM

145
Problemas de electrónica digital

Circuito completo

146
Capítulo 11
Microcontroladores

Tema descriptivo sobre estructura y programación de los microcontroladores en gene-


ral. Para la arquitectura general de los microcontroladores existen numerosos libros,
ejemplos:
• Floyd, Thomas L. (2016). Fundamentos de Sistemas Digitales. 11º ed. Pearson Educa-
ción. Tema: 12.
• Tocci, Ronald J. y otros. (2016). Sistemas Digitales: Principios y Aplicaciones. 10ª ed.
Pearson. Tema 13.
• Mandado, Enrique; Martín, José Luis. Sistemas Electrónicos Digitales. 10º ed. Mar-
combo. Tema: 8.

147
Problemas de electrónica digital

PREGUNTAS DE MICROCONTROLADORES
1. ¿Por qué se dice que un microcontrolador es un dispositivo programable?
a) Porque ejecuta un programa escrito en lenguaje máquina almacenado en una
memoria flash (memoria de programa).
b) Porque necesita un programa para determinar cuáles son las conexiones (fusi-
bles) que se van a activar para así lograr las funciones lógicas a implementar.
c) Porque su funcionamiento viene determinado por las entradas de control de un
multiplexor externo.
d) Porque, para que funcione, necesita estar conectada a un ordenador con pro-
gramas informáticos específicos para el tipo de microcontrolador.

2. ¿En qué tipo de lenguaje está escrito el programa que se almacena en la memoria
de un microprocesador?
a) Ensamblador
b) Lenguaje máquina
c) Programa Fuente
d) Lenguaje de alto nivel

3. Los microprocesadores y microcontroladores constan de una unidad central de pro-


ceso y de determinados registros. Entonces, ¿qué diferencias existen entre ellos?
a) El microcontrolador además incluye periféricos integrados como temporizadores,
contadores, puertos de comunicaciones, convertidores A/D, etc.
b) El microcontrolador además incluye la unidad de control encargada de buscar la
instrucción e interpretarla.
c) El microprocesador además incluye una unidad lógico aritmética.
d) Ninguna de las anteriores.

4. ¿Cuál es la secuencia correcta de las etapas de ejecución de una instrucción de un


programa en un procesador?
1). Decodificación 2) Búsqueda de instrucción, 3) Ejecución,
4) Escritura de Resultado, 5) Lectura de operandos

a) 1,2,3,4,5 b) 2,1,5,3,4 c) 2,4,1,5,3 d) 4,3,5,1,2

148
Microcontroladores

5. ¿Qué característica debe tener un microprocesador para que pueda realizar la seg-
mentación de un programa? (buscar la instrucción siguiente mientras se ejecuta una
instrucción).
a) Arquitectura Harvard (separación de memoria de programa y datos).
b) Periféricos internos específicos.
c) Memoria EEPROM.
d) Bus de direcciones de 16 bits (ocho para la instrucción de ejecución y 8 para la
instrucción de búsqueda).
6. Las instrucciones que contienen la dirección de memoria donde se encuentra el
dato a operar se denominan de direccionamiento…
a) Inmediato
b) Directo
c) Indirecto
d) Indexado

7. Cuando un microcontrolador utiliza un juego de instrucciones RISC, significa:


a) Que el conjunto de instrucciones no es estable y hay riesgo de pérdida de infor-
mación.
b) Que utiliza un conjunto pequeño de instrucciones.
c) Que el juego de instrucciones es específico para ese microcontrolador.
d) Que el conjunto de instrucciones que se pueden utilizar es complejo y complicado.

Soluciones
1. a) La opción b) corresponde a las PLD.
2. b) El lenguaje de más bajo nivel.
3. a) La finalidad del microcontrolador es el control industrial.
4. b) Las dos primeras tareas son la búsqueda de instrucción y su decodificación.
5. a) Necesita memoria de programa y memoria de datos separados.
6. b) En el direccionamiento directo se incluye la posición de memoria donde está
el dato.
7. b) RISC: Reduced Instruction Set Computing.

149
Capítulo 12
Sistemas digitales
completos

En los temas anteriores se han incluido problemas donde se resuelven contenidos


específicos de cada uno de ellos. Para tener una visión global y conjunta de la parte de
la electrónica digital que abarca esos temas es conveniente resolver problemas donde
sea necesario conocer los contenidos de diversos temas. En este tema se incluyen
algunos problemas de mayor envergadura que los anteriores y que realizan una reco-
pilación de los diversos conceptos estudiados en los primeros temas.

Problema 12.1
Se desea automatizar una persiana motorizada me-
diante un solo pulsador que permita tanto la subida
como la bajada.
La persiana dispone de dos contactos magnéticos en
los finales de carrera (uno cuando está totalmente
subida “S” y otro cuando está totalmente bajada “B”).
El accionamiento se realiza mediante un motor de
continua de 12V, 18W montado en un puente que
permite su inversión y controlado por dos señales
“UP” y “DOWN” que determinan su sentido de giro.

151
Problemas de electrónica digital

El funcionamiento debe ser el siguiente:


Al mantener presionado el pulsador “P” la ventana empieza a subir (Motor en “UP”),
si se suelta deja de subir. Si llega al final de carrera “S” (totalmente subida) y se sigue
presionando “P” la ventana empieza a bajar (Motor en “DOWN”). Si se sigue presio-
nando “P” y se llega al final de carrera “B” (totalmente bajada) el motor invierte de
nuevo su sentido de giro y empieza a subir (Motor en “UP”). En todo momento el
sistema debe recordar si estaba subiendo o bajando, de forma que, si se suelta “P” y
se vuelve a pulsar, el motor debe seguir la misma trayectoria que estaba llevando
anteriormente.
Los detectores magnéticos “S” y “B” están constituidos por un contacto normalmente
cerrado. Al situarse el imán frente a ellos el contacto se abre.
El pulsador “P” es un contacto normalmente abierto, de forma que al pulsar el contac-
to se cierra.
El circuito de control del motor y la tabla de verdad se muestra en la siguiente figura:

UP DOWN GR MOT FUNCIÓN

0 0 X 0 PARO
1 0 1 1 SUBE
0 1 0 1 BAJA
1 1 X 0 PARO

El diagrama de bloques del sistema digital será:

152
Sistemas digitales completos

Determinar:
a) A partir de las señales UP/DOWN que proporciona el circuito de control,
obtener el circuito decodificador que active las señales GR y M necesarias para
el motor. Utilizar el circuito Integrado 74HCT00 (puertas NAND de dos
entradas).
b) La señal “GR” activa la bobina de un relé de 180 Ω (12V) cuando está a nivel
alto. Si se utiliza un transistor con una hFEmín = 30 (βsat) y una VBEmáx = 1.1V,
determinar el valor de la resistencia de base R1.
c) La señal “MOT” permite e inhibe el giro del motor. El transistor utilizado es un
superbeta (hFEmín =230 (β), VBEmáx=1.5V). Calcular el valor de R2 para su
activación con un nivel alto.
d) Diseñar el circuito de los contactos magnéticos (S y B) y del pulsador (P) para
que produzcan un nivel lógico alto al activarse.
e) A partir de las señales de entrada, dibujar el diagrama de estados de un sistema
secuencial que permita obtener las salidas “UP” y “DOWN” de gobierno del
Motor.

Fuente: On Semiconductor, 2007

Solución
a) A partir de la tabla de verdad se obtiene las funciones lógicas de GR y MOT.
= ∙
= ∙ + ·

153
Problemas de electrónica digital

El circuito digital con puertas NAND será:

b) Para el relé IC=Vcc/RL=12/180=67mA, con ello IB=IC/hFEmin = 67/30 = 2,22mA.


Como se debe activar con un nivel H, VOHmin=R1·IB+VBEMAX
Con ello R1< (VOHmin - VBEMAX) /IB = (3,84-1,1)/2,22 = 1,2KΩ

c) Ic=Pmotor/Vmotor = 18/12= 1,5V


IB=IC/hFEmin = 1,5A/230 = 6,5mA
Como se debe activar con un nivel H, VOHmin=R2·IB+VBEMAX.
Con ello R2< (VOHmin - VBEMAX) /IB = (3,84-1,5)/6,5 = 0,36KΩ

d) Para los contactos magnéticos y pulsador:


El valor puede variar entre 10 y 100K (CMOS).

e) Máquina de estados. E0: subida, E1: bajada P,S,B / UP,DOWN

154
Sistemas digitales completos

Problema 12.2
La figura muestra el diagrama de bloques de un circuito lógico usado para el control
del número de copias (de 1 hasta 9) de una fotocopiadora.

El operador de la máquina selecciona el número de copias deseada cerrando uno de los


interruptores S1 a S9. Este número es codificado a BCD por el circuito codificador (DE-
CIMAL-TO-BCD ENCODER) y es enviado al circuito comparador (4-BIT COMPARATOR).
Posteriormente, el operador pulsa un interruptor momentáneo (START) que inicializa
el circuito de control (CONTROL LOGIC). Este control pone a “1” la señal de operación
(OPERATE) lo que significa que la fotocopiadora comienza a realizar las copias.
Cuando la máquina hace cada copia (simulado con un botón), se genera un pulso
(CK_INPUT) que se aplica al contador (4 BIT COUNTER). Las salidas del contador son
continuamente comparadas con las salidas del decodificador de los interruptores
mediante el comparador. Cuando los dos números coinciden la salida del comparador
EQUAL se pone a “1” y hace que la señal de operación (OPERATE) vuelva al nivel “0” y
la fotocopiadora se pare y no realice más copias, poniendo además el contador a cero.
Si el pulsador de START se vuelve a pulsar durante este periodo esta operación no se
reinicializa.
Si se selecciona 0 copias el control no debe activar la señal de operación (OPERATE) y sí
activar con un “1” la señal de alarma (ALARM). Esta señal se desactiva automáticamente
cuando un número de copias distinta de cero se selecciona mediante los interruptores.

155
Problemas de electrónica digital

Se asume que los interruptores no pueden ser modificados durante el proceso.


1. Diseñar un codificador Decimal a BDC usando el C.I. 74HC147 y las puertas lógicas
necesarias. Las salidas de los interruptores S1 a S9 están normalmente a “1”.
2. Diseñar un comparador de 8-bit usando el C.I. 74HC85. Este circuito tiene que
suministrar una señal (EQUAL), la cual establecerá un “1”. Cuando el número de
copias realizadas y el número de copias programado sea el mismo.
3. Diseñar un circuito de control que conste de:
a) Circuito Monoestable
 La inicialización del circuito de control (Máquina de estados finitos) es reali-
zada por un monoestable CD4098 con función no-redisparable. La salida del
monosestable será “1” a menos que la señal START haya sido pulsada, pasan-
do entonces a ser “0” durante 100 ms.
b) Máquina de estados finitos (FSM) con lenguaje VHDL y la GAL22V1. Las seña-
les de reloj y reset se consideran ya suministradas.
 Inicialmente, la seña de operación (OPERATE) tiene que ser puesta a nivel ba-
jo “0”, permitiendo así la inicialización del Contador; esto es, el contador em-
pezará siempre en cero. La FSM tiene que permanecer en este estado hasta
que se reciba la señal del monoestable.
 Si se recibe la señal “0” del monoestable y se programa el número de copias
(por lo que Equal=0) entonces la señal de operación (OPERATE) debe ser
puesta a “1” permitiendo la acción de fotocopiar y de contar.
 Pero si se recibe la señal “0” del monoestable pero el número de fotocopias
no ha sido programado (es decir todos los interruptores están abiertos lo que
equivale a un numero 0 de fotocopias), entonces la señal de operación (OPE-
RATE) debe permanecer a nivel bajo “0” y se tiene que activar la señal de
alarma (ALARM). La FSM tiene que permanecer en este estado hasta que el
número de fotocopias haya sido programado, volviendo entonces al estado
inicial, o hasta que el número de fotocopias haya sido programado y la señal
del monoestable se reciba, por lo que la FSM debería trabajar tal como se ha
explicado en el punto anterior.
 Una vez se active la señal de operación (OPERATE) y la fotocopiadora esté
trabajando, la FSM debe permanecer en este estado mientras el contador y el
número de copias programados sea diferente (Equal=0). Cuando sean iguales,
la FSM deberá volver al estado inicial. Si la señal de inicialización (Start) es
pulsada durante este estado, la FSM debe permanecer es este estado por lo
que la señal de Start será ignorada.

156
Sistemas digitales completos

4. Diseñar un Contador de 4 bits utilizando el 74HC191 y las puertas lógicas necesa-


rias. Este contador deber ser puesto a cero con la señal de operación (OPERATE) a
“0” y debe permanecer así gasta que la señal pase a “1”. Por lo tanto, en este pe-
riodo, el Contador no debe contar.
5. Rediseñar el comparador de 4 bits y el circuito Contador de 4 bits utilizando la
GAL22V10 y el lenguaje VHDL, en un único bloque. Emplear dos procesos (PRO-
CESS) uno para el Contador y otro para el comparador.
en

D
TimeGe
mo
1 De 2 3 4 5 6 7 8 9 10
eG

en
en mo
eG
De
Tim

START eG
en
Tim

Tim
TimeGen Demo eG
Tim Tim
eG TimeGen Demo
Tim
Tim

en
MONOSTABLE eG
TimeGen Demo
Tim

De
eG

mo en

o o
De
eG
en

Dem Dem
mo
en
De

n n
De
mo

OPERATE
G e G e
mo

COUNTER Time 0000 Time 0000

EQUAL

TimeGen

Solución
1. Diseño del codificador de Decimal a BCD utilizando el 74HC147 y las puertas
lógicas necesarias
Entradas/salidas de este bloque
entradas: Interruptor a nivel bajo Salidas: BCD a nivel alto
0: 111111111 0000
1: 111111110 0001
…………………….. …………..
9: 011111111 1001

El 74HC147 es un codificador con 9 entradas y 4 salidas. Utilizando las entradas A, se


seleccionará el número deseado de copias. Este número será convertido a BCD y apa-
recerá en las salidas Y (siendo Y3 el bit más significante). Sin embrago, tal como indi-
can las hojas de características del integrado “suministra una representación BCD
activa a nivel bajo”. Esto significa que el número de copias deberá ser complementado
para obtener la señal a nivel alto; esto se puede realizar conectando una puerta NOT a
cada salida.

157
Problemas de electrónica digital

Fuente: 74HC/HCT147 Philips Semiconductors, 1990

Si todos los interruptores están abiertos (todas las entradas del codificador a “1”) la
salida será 0000.
2. Diseño del comparador de 4 Bits utilizando el C.I. 74HC85
Entradas/salidas de este bloque
Entradas: Decodificador BCD a nivel alto / Contador Salida:
Entrada A: Decodificador Entrada B: Contador EQUAL
0000 0000
………………… ………………… Si A=B: HIGH resto: LOW
1001 1001

Este comparador tiene 11 entradas, 4 para cada señal de entrada (A y B, las cuales
serán comparadas) y 3 entradas de cascada, en el caso de querer ampliar el número
de bits a comparar (lo cual no será necesario en este caso). En las hojas de caracterís-
ticas del integrado se señala “para una adecuada operación de comparación, las en-
tradas en cascada deben estar conectadas de la siguiente forma: IA>B = IA<B = LOW
and IA=B = HIGH”. Las entradas del decodificador ser conectarán por ejemplo a la
entrada A y las del contador a la B.

158
Sistemas digitales completos

Se quiere detectar cuando el número de copias realizadas será igual a las programa-
das, por lo que se necesita la señal de salida QA=B (señal Equal en el sistema).

Fuente: 74HC/HCT85 Philips Semiconductors, 1990

3. Diseño del control lógico


MONOESTABLE
La inicialización de la máquina de estado (FSM)
es realizada por un monoestable CD4098 en fun-
ción no-redisparable. La señal de salida del mo-
noestable deberá ser siempre un “1” a no ser que
la señal de inicialización (Start) del pulsador se
active, pasando entonces a “0” durante 100 ms.
Como se desea obtener una señal de temporiza-
ción a nivel bajo se utiliza la salida NOTQ Para
obtener la operación no-redisparable utilizando
la como salida la señal NOTQ la señal Q debe
ser conectada a +TR.

Fuente: CD4098 de Texas Instruments, 2004

159
Problemas de electrónica digital

Para obtener los 100 ms el fabricante señala que se puede utilizar la ecuación
TX = 1/2·RX·CX. Se puede obtener con condensador de 20µF y una resistencia
de 10KΩ.

Fuente: CD4098 de Texas Instruments, 2004

CONTROL MÁQUINA DE ESTADOS (FSM)


La máquina de estados tendrá dos entradas y dos salidas. Además son necesarias la
señal de reloj CLK_FSM y de RESET (asíncrono) que ya son suministradas.

Entradas/salidas del control


Entradas Salidas
MONOSTABLE EQUAL OPERATE ALARM
Pulso bajo 0/1 1/0 0/1

160
Sistemas digitales completos

• Inicialmente, la señal de operación (OPERATE) está puesta a “0”, lo que permite


poner a cero el contador. La FSM debe permanecer en este estado inicial (Q0)
mientras la señal del monoestable sea “1”.
• Si recibe la señal del monoestable y se ha programado el número de copias
(equal=0) entonces la señal de operación (OPERATE) debe ser puesta a “1” per-
mitiendo la acción de fotocopiar y contar. Para ello se pasa al estado Q1.
• Pero si se recibe del monoestable la señal "0" pero el número de fotocopias no ha
sido programado (es decir todos los interruptores están abiertos lo que equivale a un
numero 0 de fotocopias), entonces la señal de operación (OPERATE) debe permane-
cer a nivel bajo "0" y se tiene que activar la señal de alarma (ALARM), estado Q2.
La FSM tiene que permanecer en este estado Q2 hasta que el número de fotocopias
haya sido programado, volviendo entonces al estado inicial Q0, o hasta que el núme-
ro de fotocopias haya sido programado y la señal del monoestable se reciba, por lo
que la FSM debería trabajar tal como se ha explicado en el punto anterior.
• Una vez se active la señal de operación (OPERATE) y la fotocopiadora esté traba-
jando, la FSM debe permanecer en este estado mientras el contador y el número de
copias programados sea diferente (Equal=0). Cuando sean iguales, la FSM deberá
volver al estado inicial. Si la señal de inicialización (Start) es pulsada durante este
estado, la FSM debe permanecer es este estado por lo que la señal de Start será ig-
norada.
Inputs: MONO-EQUAL Inputs: MONO-EQUAL
Outputs: OPERATE-ALARM Outputs: OPERATE-ALARM

1X 1X

Q0 Q0 01
01
00 00
X1 X1
10 X0
00 Q1 X1
00 Q1 X1
01 01
Q2 Q2
10 10
00
X0 X0

161
Problemas de electrónica digital

Descripción de la máquina de estados en lenguaje VHDL


library ieee; Inputs: MONO-EQUAL
use ieee.std_logic_1164.all; Outputs: OPERATE-ALARM
use ieee.std_logic_unsigned.all;
entity exam1 is 1X
port ( reset, mono, equal, clk: in std_logic;
operate,alarm: out std_logic);
end exam1; Q0 01
00
architecture behaivor of exam1 is X1
type state_type is (Q0, Q1, Q2); 10
signal state : state_type; 00 Q1 X1
Begin
01
process ( clk, reset ) Q2
begin 10
if (reset = '0') then state <= Q0;
elsif rising_edge(clk) then 00
X0
case state is
when Q0 => OPERATE <= '0'; ALARM<='0';
if (MONO='0' AND EQUAL='0') then state <= Q2;
elsif (MONO='0' AND EQUAL='1') then state <= Q1;
else state <= Q0;
end if ;
when Q1 => OPERATE <= '0'; ALARM<='1';
if (MONO='0' AND EQUAL='0') then state <= Q2;
elsif EQUAL='1' then state <= Q1;
else state <= Q0;
end if ;

when Q2 => OPERATE <= '1'; ALARM<='0';


if EQUAL = '0' then state <= Q2;
else state <= Q0;
end if ;

when others => state <= Q0;


end case;
end if ;
end process;
end behaivor;

162
Sistemas digitales completos

4. Diseño del contador BCD usando el C.I. contador 74HC191 y las puertas lógicas
necesarias
Entradas/salidas al bloque
Entradas Salidas
CLK OPERATE Contador: nivel alto
Flanco subida De 0 a 1 0000
1001

Fuente 74HC/HCT191 de Philips Semiconductors, 1990

Se quiere contar de 0 a 9. La carga en paralelo es Asíncrona por lo que se deberá


detectar el número 10 (1010). Por lo tanto, la señal de carga paralelo (parallel loads)
deber ser “0”, el de habilitación (enable=”0”) y la señal D/U=”0”. Para realizar la
cara paralela, se necesita utilizar una puerta NAND para detectar la cuenta final; esta
NAND irá conectada a Q1 y Q3 (para detectar el 1010) y a través de otra AND conec-
tada a la señal de operación (OPERATE que está trabaja a nivel “1” y está a “0” el
resto del tiempo).

163
Problemas de electrónica digital

Debido a la capacidad de poner a cero el contador de la señal de operación


(OPERATE) no sería necesario realizar un contador de 0 a 9. El contador será
puesto a cero siempre que el número de copias sea igual al número programado.

5. Rediseñar el comparador de 4 bits y el contador BCD en un único bloque utilizan-


do el lenguaje VHDL y la GAL22V10 )
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity exam is
port ( Q :in std_logic_vector (3 downto 0);
operate, clk: in std_logic;
equal: out std_logic);
end exam;

164
Sistemas digitales completos

architecture behaivor of exam is


signal count: std_logic_vector (3 downto 0);
begin
process (clk, operate)
begin
if (operate = '0') then count <= (others=>'0');
elsif (rising_edge(clk)) then
if count<9 then count <= count + 1;
else count <= "0000";
end if;
end if;
end process;

process(Q, count)
begin
if (Q = count)
then equal <= '1';
else equal <= '0';
end if;
end process;

end behaivor;

165
Problemas de electrónica digital

Problema 12.3
Dos sensores de temperatura miden un proceso industrial de un modo remoto cuya
temperatura fluctúa entre 0 y 9 grados Celsius. Un usuario puede activar un interrup-
tor para visualizar cual es la temperatura más alta de los dos sensores.

Características:
• El valor digital de la temperatura de cada sensor se representa mediante 4 bits.
• El sistema de transmisión debe convertir una entrada de 8 bit en paralelo en una
salida serie utilizando un registro bidireccional de 8 bits.
• El control del registro es llevado a cabo por las señales S1 y S0. Cuando los 8 bits
han sido transmitidos, el transmisor deber permanecer inactivo.
• El receptor debe convertir la señal de serie a paralelo utilizando el mismo tipo de
registro. Al igual que el transmisor, el receptor es controlado por unas señales S1 y
S0 y cuando los 8 bits han sido recibidos, el receptor deber permanecer inactivo.
• El sistema receptor también está formado por un circuito combinacional, el cual
consiste en un comparador y un multiplexor. Ambos sirven para seleccionar la
temperatura más alta. Este sistema tiene una entrada BI que permite apagar el vi-

166
Sistemas digitales completos

sualizador mientras el sistema no ha enviado los 8 bit y lo enciende durante el


tiempo que el usuario considere necesario.
• El sistema de control permite al usuario controlar la transmisión y la visualización.
Posee una señal de reset (RST) para inicializarlo. La señal de entrada llamada INT
permite al usuario inicializar la transmisión y habilitar la visualización. El sistema de
control consiste en dos bloques: una máquina de estado (FSM) tipo Mealy la cual
trabaja como cerebro del sistema y, por otra parte, un contador síncrono el cual
permite controlar la transmisión de los 8 bits. La FSM suministra las señales de
control S1 y S0 para el transmisor y el receptor. La FSM también controla la señal
de visualización (BI). Finalmente, FSM resetea el contador cuando este ha termi-
nado su cuenta. El contador cuenta los 8 pulsos de reloj requeridos para la trans-
misión y genera una señal (COUNT) de fin de cuenta.
Tareas:
1. Diseñar un transmisor utilizando el C.I. 74198 (registro de desplazamiento univer-
sal de 8 bits). El transmisor debe trabajar como un registro paralelo-serie. Primero
deber realizar una carga en paralelo, seguido de un desplazamiento y, para finali-
zar, debe mantenerse en espera (hold) hasta la nueva transmisión. El transmisor
está controlado por S1y S0.
2. Diseñar un receptor utilizando el C.I. 74198. El receptor debe trabajar como un
registro serie-paralelo. El dato de temperatura debe aparecer tras 8 pulsos de reloj
en la salida. Las señales S1 y S0 están compartidas con el transmisor, por lo que la
secuencia de control debe ser la misma.

3. Diseñar un sistema combinacional formado por un circuito comparador de bits


(74LS85) que testea cuál de los dos valores recibidos en mayor y trabaja con el do-
ble multiplexor de 4 bits (74LS157) para conmutar el valor mayor de temperatura
hacia el decodificador de BCD-7 Segmentos (74LS47). La señal de entrada BI debe

167
Problemas de electrónica digital

utilizarse para apagar el visualizador hasta que la transmisión se complete y debe


encenderlo cuando el valor de mayor temperatura sea detectado.

4. Diseño del sistema de control


• Diseñar un contador de 4 bits utilizando el C.I. 74LS190 (contador decimal bidirec-
cional síncrono de 4 bits) y las puertas lógicas necesarias. El contador es inicializa-
do por la señal PL y realiza la cuenta de los 8 pulsos de reloj necesarios para la
transmisión. El contador envía una señal COUNT al FSM al final de cada cuenta.

• Diseñar una máquina de estado tipo Mealy (FSM) con lenguaje VHDL y la
GAL22V10. Las señales de reloj y reset son suministradas.
 La señal de reset (RST) debe ser síncrona y activa nivel bajo. La señal INT esta
normalmente a nivel bajo hasta que un operador abre el interruptor y mantie-
ne la señal a nivel alto para inicializar el proceso.
 La señal inicial INT permanece a nivel bajo y permite al sistema la transmisión
mediante la carga en paralelo de los datos de entrada, utilizando para ello las

168
Sistemas digitales completos

señales S1 y S0. También mantiene a “0” la señal PL y apaga el visualizador me-


diante la señal BI.
 La transmisión debe empezar con las señales S1 y S0 después de la activación
de la señal INT. Se deberá también empezar a contar los 8 pulsos de reloj me-
diante la deshabilitación de PL y mantener el visualizador apagado con BI. Des-
pués de la transmisión de los 8 pulsos, es decir, cuando el contador haya finali-
zado la cuenta, la FSM recibe la señal COUNT la cual habilita la transición de
estado de la FSM al estado “espera y visualización”.
 En el estado “espera y visualización” los registros permanecen en espera (hold)
controlador por S1 y S0, el contador es puesto a cero por la señal PL y el visuali-
zador es encendido por la señal Bi, permitiendo la visualización de la mayor
temperatura. El sistema debe permanecer en este estado hasta que se reinicia-
lice el proceso.
 Tan pronto como el operario cierre el interruptor y la señal INT sea “0”, el sis-
tema volverá al estado inicial y abortará el proceso donde se encuentre.

169
Problemas de electrónica digital

74198 (8-BIT BIDIRECTIONAL UNIVERSAL SHIFT REGISTER)

Fuente: 74F198 Philips Semiconductors, 1987

7485 (4-BIT MAGNITUDE COMPARATOR)

Fuente: SN54/74LS85 Motorola

170
Sistemas digitales completos

74157 (QUAD 2-INPUT MULTIPLEXER)

Fuente: SN54/74LS157 Motorola

7447 (4-BIT MAGNITUDE COMPARATOR)

Fuente: SN54/74LS4 Motorola

171
Problemas de electrónica digital

74190 (PRESETTABLE BCD/DECADE UP/DOWN COUNTERS)

Fuente: SN54/74L190 Motorola

Solución
1. Diseño del transmisor utilizando el 74198)
Solo se necesitan conectar las entradas de carga en paralelo a las entradas de los
sensores. Las señales de control S1 y S0, el MR siempre a nivel alto y la entrada SR (o
SL) a un nivel cualquiera, en este caso a masa. La salida por Q7 ya que se ha elegido
el desplazamiento a derecha (o la Q0 si es a izquierda). Tal como dice el enunciado
primero se realiza una carga en paralelo (S1=1, S0=1), después el desplazamiento a
derecha (S1=0, S0=1) y por último un mantenimiento (hold) (S1=0, S0=0).

Fuente: 74F198 Philips Semiconductors, 1987

172
Sistemas digitales completos

2. Diseño del receptor utilizando el 74198


La entrada se conecta a SR (o SL) al elegir el desplazamiento a derechas (o izquier-
das). La salida es en paralelo, luego estarán todas accesibles. Las señales de control
S1 y S0, el MR siempre a nivel alto. Como se produce una carga previa al compartir
las entradas de control con el transmisor, se han puesto todas las entradas de carga en
paralelo a cero por claridad de diseño.

3. Diseño del sistema combinacional utilizando el 7485, 74157 y 7447


La comparación se lleva a cabo mediante el 7485, introduciendo los datos de la sa-
lida del registro receptor directamente al comparador. Al ser un solo integrado hay
que conectar las entradas de cascada según indica la tabla de verdad, es decir co-
mo si la comparativa anterior fuese idéntica: A=B a nivel alto y A>B y A<B a nivel
bajo. Como se necesita conocer cuál de los dos valores es mayor se puede elegir
entre la salida A>B o A<B, actuando en consecuencia en el multiplexor. En este
caso se ha escogido A<B.
Una ver determinado cual es el mayor se utiliza un multiplexor para seleccionar el
dato que se debe visualizar. La señal de enable del multiplexor se puede dejar fijo a
nivel bajo. Si la señal de control (A’/B o S) está a nivel bajo el dato que pasa es el
de la entrada I0 (A) si está a nivel alto pasa la entrada I1 (B).
La señal A<B procedente del comparador es un nivel alto cuando B es mayor que
A, así que se conectan los datos de la entrada A del comparador a la entrada I0 (A)
del multiplexor, y los de la entrada B del comparador a la entrada I1 (B) del multi-
plexor.
Por último, los datos de la salida del multiplexor se conectan al decodificador
BCD-7 segmentos (7447). Según la tabla de verdad si se conectan RBI y LT a nivel
alto se puede controlar el encendido o apagado del visualizador mediante la entra-
da Bi/RB0. Si esta entrada está a nivel bajo el display se apaga y estando a nivel
alto habilita la visualización.

173
Problemas de electrónica digital

4. Diseño del sistema de control


Diseño del contador utilizando el 74LS190 y las puertas lógicas necesarias.
Al ser un contador de 8 pulsos, se realiza una inicialización a 0 conectando todas las
entradas de carga a nivel bajo. Al ser cuenta ascendente la señal Down/Up a nivel
bajo así como el enable ya que no se utilizará en el diseño. Para realizar la carga e
inicializar el conteo se utiliza la entrada de carga en paralelo (PL), mientras está nivel
bajo la salida del contador permanece con la carga de datos (en este caso a 0) y cuan-
do pasa a nivel alto, se inicia la cuenta hasta 8.
La detección del final de cuenta va a depender de la máquina de estados ya que se puede
detectar el 7 o el 8. Como se verá en el punto siguiente se ha optado por detectar el 7
conectando una puerta NAND en las salidas del contador para detectar el 0111. La
salida de esta puerta, llamada COUNT, pasará nivel bajo cuando se detecte el 7.

174
Sistemas digitales completos

5. Diseño de la máquina de estados finitos tipo Mealy con VHDL y GAL22B10)


• La señal de reset (RST) debe ser síncrona y activa a nivel bajo. La señal INT se
mantiene normalmente a nivel bajo hasta que el usuario abre el interruptor y la
mantiene a nivel alto para iniciar todo el proceso.
• Estado Q0: Inicialmente la INT permanece a nivel bajo y el sistema permite al
registro de transmisión realizar la carga en paralelo de los datos de entrada me-
diante el control de las señales S1 y S0, además mantiene el contador a 0 mediante
la señal PL y el visualizador apagado mediante la señal BI. → INT=0, COUN-
TER=X / S1=1,S0=1,PL=0,BI=0.
• Estado Q1: Al activarse la señal INT debe comenzar la transmisión mediante el
control de las señales S1 y S0, además debe iniciar el conteo de los 8 pulsos me-
diante la deshabilitación de la señal PL y mantener el visualizador apagado a tra-
vés de la señal BI. → INT=1, COUNTER=X / S1=0,S0=1,PL=1,BI=0 and INT=1,
COUNTER=1 / S1=0,S0=1,PL=1,BI=0.
Al finalizar la transmisión de los 8 bits, es decir cuando el contador ha finalizado el
conteo, la máquina de estados recibe la señal la señal COUNT lo que permite a la
FMS transitar a un estado de reposo y visualización.
INT=1, COUNTER=0 / S1=0,S0=1,PL=0,BI=1.
• Estado Q2: En el estado de reposo y visualización los registros se mantienen esta-
bles (hold) mediante el control de las señales S1 y S0, el contado se reinicializa a
0 mediante la señal PL y el visualizador se enciende mediante la señal BI, permi-
tiendo la visualización del mayor valor de temperatura. El sistema se mantiene en
este estado hasta que el usuario reinicializa el proceso.
INT=1, COUNTER=X/ S1=0,S0=0,PL=0,BI=1.
• En cuanto el usuario cierre el interruptor y la señal INT pase a nivel bajo se vuel-
ve al estado inicial y se aborta en control en cualquier momento del proceso.
INT=0, COUNTER=X / S1=1,S1=0,PL=0,BI=0.

175
Problemas de electrónica digital

Programa VHDL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity fsm is
Port ( Inputs: COUNTER-INT
Rst,ck, INT, COUNT: in std_logic; Outputs: S1-S0-PL-Bi
S1, S0, PL, Bi: out std_logic;
X0
); 1100
end fsm;
architecture behavioral of fsm is
type nombres_estados is (Q0, Q1, Q2); Q0 X1
0110
signal estado: nombres_estados; X0
1100
signal entrada_aux: std_logic_vector (1 downto 0);
X0
begin 1100 11
Q1
entrada_aux<=COUNT&INT; 0110
process(Rst, ck) Q2
begin
If rising_edge(ck) then X1
01
0001
If rst='0' then estado<=Q0; S0<='1'; S1<='1'; PL<='0';
0001 Bi<='0';
else
case estado is
when Q0 =>
if entrada_aux="00" then estado<=Q0; S0<='1'; S1<='1';
PL<='0'; Bi<='0';
elsif entrada_aux="10" then estado<=Q0;S0<='1'; S1<='1';
PL<='0'; Bi<='0';
else estado<=Q1; S0<='1'; S1<='0'; PL<='1'; LT<='0';
end if;
when Q1 =>
if entrada_aux="11" then estado<=Q1; S0<='1'; S1<='0';
PL<='1'; Bi<='0';
elsif entrada_aux="01" then estado<=Q2; S0<='0'; S1<='0';
PL<='0'; Bi<='1';
else estado<=Q0; S0<='1'; S1<='1'; PL<='0'; Bi<='0';
end if;
when Q2 =>
if entrada_aux="11" then estado<=Q2; S0<='0'; S1<='0';
PL<='0'; Bi<='1';
elsif entrada_aux="01" then estado<=Q2; S0<='0'; S1<='0';
PL<='0'; Bi<='1';
else estado<=Q0; S0<='1'; S1<='1'; PL<='0'; Bi<='0';
end if;
when others => estado<=Q0; estado<=Q0; S0<='1';
S1<='1'; PL<='0'; Bi<='0';
end case;
end if;
end if
end process;
end behavioral;

176
Sistemas digitales completos

Problema 12.4
La apnea del sueño es la interrupción repetida de la
respiración durante el sueño, a veces cientos de
veces durante la noche y a menudo durante un mi-
nuto o más. Si no se trata, la apnea del sueño puede
causar presión arterial alta, enfermedades cardio-
vasculares, pérdida de memoria y problemas de
peso. Estudios médicos recientes indican que la ap-
nea del sueño a largo plazo también puede aumen-
tar el riesgo de morir de cáncer. La consiguiente falta
de sueño reparador también puede ser responsable
de la discapacidad laboral y accidentes de vehículos
de motor. Una opción de tratamiento principal es el uso de una máquina de presión
positiva de la vía aérea (PAP). El paciente lleva una máscara que utiliza presión para
enviar un flujo de aire a través de los orificios nasales evitando que se colapsen y que
cese la respiración.
El siguiente esquema muestra la estructura general del equipo. Se necesita diseñar un
bloque auxiliar que pueda generar una señal de control para el microcontrolador. Este
bloque tiene como entrada dos sensores: un sensor de flujo que controla la cantidad
de aire que respira el paciente y un sensor que controla si la mascará esta puesta o
no. La salida del bloque activa una señal cuando la máscara está colocada en el pa-
ciente y el flujo de aire es menor de 60 L/m.

Cortesía Honeywell

El sensor de flujo tiene una salida lineal (ASI) de pulsos proporcional a los li-
tros/minuto de aire por el canal de respiración. La relación de salida es 4 pulsos por
segundo son 1 L/s. El límite mínimo establecido para una respiración adecuada es de
60 L/m. Por otra parte, el sensor de proximidad (PS) proporciona una señal todo/nada

177
Problemas de electrónica digital

si la máscara está colocada o no sobre el paciente. Si el sistema detecta que la másca-


ra está colocada y el flujo de aire es menor de 60 L/m debe proporcionar una señal
(SOM) a nivel alto, permaneciendo a nivel bajo el resto de casos.
Este bloque auxiliar estará compuesto por una unidad de cuenta, una unidad de regis-
tro, una unidad de comparación, un generador de señal de reloj y una máquina de
estado finita (FSM).

El proceso debe ser el siguiente: La señal de pulsos (ASI) procedente del sensor de
flujo es recibida por el bloque contador, el cual hace la cuenta de los pulsos durante
10 s. Inmediatamente después de cada 10 segundos, el bloque contador recibe una
señal (CLEAR) de inicialización a cero de la cuenta procedente de la FSM y puede em-
pezar a contar de nuevo. Las salidas del contador (a[7..0]) están conectadas a un re-
gistro de desplazamiento universal. El bloque registro permite guardar en su salida el
dato suministrado por el contador después de cada 10 segundos y permanecer inalte-
rable hasta el próximo periodo. El control del registro se realiza con la señal HR pro-
cedente de la FSM y que actúa sobre las señales S1 y S0 del registro. Este bloque re-
gistro está conectado al reloj del sistema (3 Hz). Las señales de salida (o[7..0]) del
registro están conectadas a un bloque comparador. En este bloque una de las entra-
das está fija al valor 40 y la otra entrada está conectada a las señales de salida del
registro; de esta forma este bloque está comparando continuamente los dos valores.
En el caso de que la señal recibida sea menor de 40 (indicando que hay menos de 60
L/m en el circuito) la salida (CO) estará a nivel alto y si es mayor o igual de 40 estará a
nivel bajo.
Todo el sistema está contralado por la FSM. Este bloque recibe como entrada la señal
(C10S) de reloj de 10 s procedente de un general de señal. Además, recibe la señal
(PS) del sensor colocado en la máscara que indica si está colocada en el paciente o no
(un 1 lógico si lo está y un 0 lógico si no lo está). Otra entrada es la señal (CO) proce-

178
Sistemas digitales completos

dente del comparador. Las dos últimas entradas son estándar y son, el reloj del siste-
ma (3 Hz) y la señal de reset (RESET). Salidas de la FSM son la señal (CLEAR) que ini-
cializa el contador después de cada segundo, la señal (HR) que permite al bloque re-
gistro guardar el dato del contador y la señal (SOM) que está conectada al
microcontrolador indicando que la máscara está colocada y el flujo de aire es menor
de 60 L/m o no se dan estas condiciones.
Los estados definidos para la FSM deben cumplir las siguientes reglas:
• Si NO se recibe la señal de C10S el sistema permanece estable: no se produce la
inicialización del contador, no se debe almacenar ningún dato en el bloque registro
y la FSM no tiene en cuenta la señal del comparador CO. En el caso de detectarse
la señal de 10 segundos (C10S), pero la máscara (PS) NO estuviese puesta en el pa-
ciente, la FSM debe permanecer en este mismo estado.
• Si se recibe la señal de 10 segundos (C10S) y la máscara (PS) esta puesta en el pa-
ciente, la FSM debe da una señal (HR) al bloque registro para que guarde los datos
del contador a su salida. Si en este estado la máscara se retira del paciente, la FSM
debe volver al estado inicial.
• Inmediatamente después del proceso anterior, y si la máscara sigue puesta, la FSM
debe dar la orden con la señal (CLEAR) para inicializar el contador y debe mante-
ner el dato en el bloque registro. Si en este estado la máscara se retira del pacien-
te, la FSM debe volver al estado inicial.
• A partir de este momento, la señal CO procedente del bloque comparador es leída.
Si la señal (CO) indica que la lectura del flujo de aire es menor de 60 L/m, entonces
se activa la señal de salida SOM y se deshabilita el CLEAR. Pero si la señal (CO) in-
dica que la lectura del flujo de aire es mayor o igual de 60 L/m se inactiva la señal
de salida SOM y se deshabilita el CLEAR. En este momento el sistema vuelve a su
estado inicial independientemente del valor de las entradas.
Diseñar:
5. Una unidad de conteo mediante el 74HC193. El bloque Contador recibe los pulsos
del sensor (ASI) y los va contando hasta que es inicializado por la señal CLEAR pro-
cedente de la FSM. La inicialización puede realizarse con el Master Reset o con uti-
lizando el Parallel Load. Los pines que no se utilicen deben conectarse a su ade-
cuado nivel de tensión o al aire si es posible.
6. Una unidad de registro mediante el 74HC194. El bloque registro tiene como en-
tradas el valor de la cuenta (a[7..0]) y la señal HR procedente de la FSM. La señal
HR debe actuar convenientemente sobre las entradas S1 y S0 para que en un mo-
mento dado mantenga inalterable el valor de la cuenta en las salidas del registro

179
Problemas de electrónica digital

(o[7..0]) aunque las entradas estén cambiando a menos que la señal HR se active y
el valor de las entradas aparezca en las salidas. Es decir, se comporta como un re-
gistro paralelo-paralelo. Los pines que no se utilicen deben conectarse a su ade-
cuado nivel de tensión o al aire si es posible.
7. Una unidad de comparación mediante el 74HC85. Este bloque está continuamen-
te comparando la señal procedente del registro (o[7..0]) con el valor predetermi-
nado (40 en este caso). La salida que se conectará con el FSM será la CO. El nivel
de activación de esta señal es elegido por el diseñador, siempre que diferencie los
casos de que el flujo sea menor de 60 L/m o mayor/igual de este valor. Los pines
que no se utilicen deben conectarse a su adecuado nivel de tensión o al aire si es
posible.
8. Un bloque generador de reloj mediante el CI555. Este bloque debe generar una
señal (C10S) de 10 s de periodo y con un Ton de 1s. Elegir el valor comercial están-
dar de los dispositivos pasivos necesarios para configurar el CI555. Se puede incor-
porar una puerta lógica que regenere la señal antes de conectarse a la FSM.
9. Una máquina de estados finitos (FMS) tipo Mealy mediante lenguaje VHDL y una
GAL22V10. El sistema tiene una señal de reloj y una señal de reset. La señal de
reset (RESET) debe ser asíncrona y activa a nivel bajo. La secuencia de estado de la
máquina debe responder a lo explicado anteriormente. Se puede observar en las
figuras siguientes el cronograma del sistema completo, así como de la FSM.

180
Sistemas digitales completos

74193 (PRESETTABLE SYNCHRONOUS 4-BIT UP/DOWN COUNTERS)

7485 (4-BIT MAGNITUDE COMPARATOR)

181
Problemas de electrónica digital

74194 (4-BIT BIDIRECTIONAL UNIVERSAL SHIFT REGISTER)

Solución
1) Bloque contador
Al ser necesario contar como mínimo hasta 40, hacen falta dos contadores conec-
tados en casada tal como indica el fabricante:

182
Sistemas digitales completos

Así se obtiene un contador binario de 8 bits. En este caso debe tener cuenta ascen-
dente y permitir la inicialización a cero de la cuenta. Esto se puede hacer utilizan-
do el Parallel Load con las entradas de carga a cero o el Master Reset tal como in-
dica el fabricante:

En el circuito diseñado se conecta la señal ASI al pin CPU del primer contador y la
salida TCU de este a la entrada CPU del segundo contador. Se ha utilizado la en-
trada MR para realizar la inicialización por lo tanto se conecta la señal CLEAR a
MR, con activación a nivel alto.

183
Problemas de electrónica digital

2) Bloque registro
Es un registro de 4 bits por lo que también se debe ampliar a 8-bits. La forma de
trabajar del registro debe ser en paralelo-paralelo, es decir, en la salida aparecerá
la entrada cuando la señal (HR) procedente del FSM se active. Observando la ta-
bla de verdad del fabricante, se observa que si S1=S0=0 la salida permanece inal-
terable, mientras que si S1=S0=1 se produce una carga en paralelo:

Para el diseño se conecta la señal HR a S1 y S0 de los dos registros, los datos en 4-bits
a cada registro, la señal MR fija a 5 V, la señal de reloj al reloj externo y el resto se
pueden dejar sin asignar.

184
Sistemas digitales completos

3) Bloque comparador
El bloque comparador estará formado por dos comparadores de 4-bits puestos en
cascada tal como indica el fabricante:

Los datos A serán lo que proceden del registro y los B serán el dato 40 (00101000) que
sirve de comparación. La salida utilizada será la A<B la cual permanece a 1 si la
señal de la cuenta es menor de 40 pulsos cada 10 s y a 0 si es mayor o igual.

185
Problemas de electrónica digital

4) Bloque generador de reloj


Se pide el diseño de un astable con
un periodo de 10 s y un semiperiodo
a nivel alto de 1 s. El fabricante
indica la conexión en modo astable
y las ecuaciones a utilizar. Se ha
conectado un 74HC14 para regene-
rar la señal a la salida del CI555.
Teniendo en cuenta que la señal de
salida estará invertida, los resulta-
dos son, fijando un condensador de
47µF, una Ra de 245 KΩ y una Rb
de 30 KΩ; estandarizando se han
elegido de Ra=270 KΩ y de Rb=27
KΩ con un periodo de 10.57 s y un
semiperiodo de 0.87 s.

186
Sistemas digitales completos

5) Máquina de estados tipo Mealy


De la descripción del funcionamiento de la FSM se deduce que su diagrama de es-
tados es:

library ieee;
use ieee.std_logic_1164.all;

ENTITY fsm IS
PORT (reset: in std_logic;
clock: in std_logic;
C1S: in std_logic;
PS: in std_logic;
CO: in std_logic;
qi : out std_logic_vector(2 downto 0));
END fsm;

ARCHITECTURE fsm_a OF fsm IS


type state_type is (Q0, Q1, Q2, Q3);
signal state : state_type;
BEGIN
PROCESS(reset, clock)

187
Problemas de electrónica digital

BEGIN
if reset='0' then state <=Q0;
elsif rising_edge(clock) then
CASE state IS
WHEN Q0 =>
if (C1S='1' AND PS='1') then state<=Q1; qi
<="001";
else state<=Q0; qi <="000";
end if;
WHEN Q1 =>
if PS='1' then state<=Q2; qi <="011";
else state<=Q0; qi <="000";
end if;
WHEN Q2 =>
if (PS='1' AND CO='1') then state<=Q3; qi
<="101";
elsif (PS='1' AND CO='0') then state<=Q3;
qi <="001";
else state<=Q0; qi <="000";
end if;
WHEN Q3 =>
state<=Q0; qi <="000";
END CASE;
END IF;
END PROCESS;
END fsm_a;

Se puede realizar un diseño más simple sin Q3:

188
Sistemas digitales completos

library ieee;
use ieee.std_logic_1164.all;

ENTITY fsm IS
PORT (reset: in std_logic;
clock: in std_logic;
C1S: in std_logic;
PS: in std_logic;
CO: in std_logic;
qi : out std_logic_vector(2 downto 0));
END fsm;

ARCHITECTURE fsm_a OF fsm IS


type state_type is (Q0, Q1, Q2, Q3);
signal state : state_type;
BEGIN
PROCESS(reset, clock)
BEGIN
if reset='0' then state <=Q0;
elsif rising_edge(clock) then

CASE state IS
WHEN Q0 =>
if (C1S='1' AND PS='1') then state<=Q1; qi
<="001";
else state<=Q0; qi <="000";
end if;
WHEN Q1 =>
if PS='1' then state<=Q2; qi <="011";
else state<=Q0; qi <="000";
end if;
WHEN Q2 =>
if (PS='1' AND CO='1') then state<=Q0; qi
<="101"; --as well 100
elsif (PS='1' AND CO='0') then state<=Q0;
qi <="001"; -- as well 000
else state<=Q0; qi <="000";
end if;
END CASE;
END IF;
END PROCESS;
END fsm_a;

189
Bibliografía general

Electrónica digital general


• Floyd, Thomas L. (2016) Fundamentos de Sistemas Digitales. 11º ed. Pearson
Educación.
• Floyd, Thomas L. (2015) Digital fundamentals. 11º ed. Pearson Educación.
• Tocci, Ronald J.; Windmet, Neal S.; L. Moss, Gregory. (2016). Sistemas Digitales:
Principios y Aplicaciones. 10ª ed. Pearson Educación de Mexico.
• Tocci, Ronald J.; Windmet, Neal S.; L. Moss, Gregory. (2014). Digital systems:
principles and applications. Pearson Educación.
• Mano, M. Morris. (2016). Diseño Digital. 3ª ed. Pearson.
• Mano, M. Morris. (2016). Digital Design. 4ª ed. Pearson.
• Roth, Charles H. (2004) Fundamentos de Diseño Lógico. 5ª ed. Paraninfo.
• Roth, Charles H. (2014) Fundamentals of Logic Design. 7º ed. Cengage Learning.
• Mandado, Enrique; Martín, Jose Luis. Sistemas Electrónicos Digitales. 10º ed.
Marcombo Kleitz, William (2014). Digital electronics: a practical approach with
VHDL. 9th ed. Prentice Hall.
• Ashenden, Peter J. (2008). The student's guide to VHDL 2nd ed. Morgan Kauf-
mann cop.

191
Problemas de electrónica digital

• Hermosa, Antonio (2010). Electrónica Digital Fundamental y Programable.


4ª ed. Marcombo
• Hermosa, Antonio (1997). Técnicas electrónicas digitales: tecnología y circuite-
ría en TTL y CMOS. Marcombo.

Libros docentes de Electrónica Digital de Editorial Universitat Politècnica de València


• Gil Sánchez, Luis (1999). Introducción a la Electrónica Digital.
• Toledo, José Fco.; Esteve, Raúl (2005). Fundamentos de Electrónica Digital.
• Ballester Merelo, Francisco José; Garrigues Baixauli, José; Torres Carot, Vicente
Problemas Resueltos de Sistemas Electrónicos Digitales.

192
UPV

ISBN 978-84-9048-781-5

Problemas de
electrónica digital
2ª edición
Luis Gil Sánchez | Javier Ibáñez Civera
Eduardo García Breijo

Existen numerosas publicaciones docentes, tanto nacionales


como internacionales, que recogen los conceptos teóricos
fundamentales de la electrónica digital, pero no hay tantas
publicaciones que estén centradas en problemas y menos
en la resolución de exámenes de tipo test. En cambio, la
mayoría de los alumnos buscan este tipo de publicaciones
porque es el mejor método para aprender la teoría y poder
enfrentarse con éxito a los exámenes de esta materia.
Con este libro de problemas de electrónica digital los au-
tores deseamos aportar nuevo material docente a la espe-
cialidad, sobretodo en algunos conceptos que son menos
tratados por otros libros de problemas como son: ejercicios
de conexión a la entrada y a la salida de dispositivos digi-
tales, diseño de máquinas de estados finitos, programas en
lenguaje VHDL para dispositivos lógicos programables, etc.
La publicación se ha dividido por temas siguiendo los blo-
ques tradicionales de la electrónica digital. En cada tema se
presentan sus correspondientes problemas y preguntas de
tipo de test, así como una bibliografía básica para consultar
el contenido teórico del tema. Pero también se han intro-
ducido otros ejercicios más largos y complejos que abarcan
los contenidos de varios temas para que así el alumno puede
tener una visión más global de la especialidad.
Con el contenido de esta obra los autores esperamos que el
lector avance en los conocimientos de la electrónica digital
y que pueda aplicarla a su vida académica y profesional.

También podría gustarte