En esta ocasión vamos a seguir tratando con elementos básicos de memoria así como de otros que nos permitan adquirir experiencia y desenvoltura ante las diferentes situaciones a las que nos encontremos en nuestro normal
desarrollo del trabajo.
Así mismo, como ya dijimos, los elementos que trataremos en adelante, no son simples puertas. Por lo que ya deberíamos tener los conocimientos elementales básicos y no perderíamos el tiempo en viejos conceptos. Por tanto,
suponemos que se puede asimilar lo que aquí se describa por parte del lector. Pasaremos a ver cómo trabaja un contador y un secuenciador, entre otros elementos electrónicos.
Ahora vamos a estudiar, un automatismo o sistema de pintura electrostática para guitarras al barniz, contemplaremos básicamente los movimientos necesarios, considerando que las velocidades permanecen constantes, cosa que no
es cierta, ya que las superficies a pintar son cambiantes y sin duda deberíamos considerarlas. En principio, necesitamos de un movimiento del pulverizador hacia abajo y otro hacia arriba, logrando así, pintar en ambas direcciones, ver figura 8-1.
Fig. 8-01
El sistema requiere de ciertas variables:
Variable
Descripción
Variable
Descripción
Cs
Contacto de subida
Cb
Contacto de bajada
fca
Final de carrera de arriba
fci
Final de carrera inferior
fcx
Final de carrera (x=indeterminado)
M
Memoria
Cp
Contacto del puente de mando
Ma
Pulsador de marcha
P
Contacto de parada
Ct
Contacto del puesto de trabajo
L
Lámpara de señal
E
Contacto de seguridad puerta
Poner en marcha el sistema, representa cumplir la siguiente función de memoria M
Cs ==> M + Cs
Cb ==> M + Cb
Donde Cs, es el contacto de subida y Cb el de bajada. En el supuesto de que, se encuentre accionado el fin de carrera fcx (fin de carrera indeterminado).
Ahora bien, el pulverizador de pintura debería bajar si se encuentra arriba o subir si se encuentra abajo. Para determinar esta condición, tendremos que convenir que el contacto fci es el contacto de abajo y el
contacto fca es el contacto de arriba.
fca <== final de carrera superior
fci <== final de carrera inferior
Dado que el pulverizador deberá subir, si el fcx está abajo (fcx=>fci) o bajar si esta arriba (fcx=>fca), estos finales de carrera los pondremos en paralelo entre si y, en serie con
el pulsador de marcha Ma.
Cs ==> M (fci) + Cs
Cb ==> M (fca) + Cb
De este modo al pulsar el botón Ma, solamente una de estas dos condiciones será cierta, ya que fcx = 1, sólo puede estar uno de los dos grupos, el otro estará a cero.
El sistema debe poder controlarse desde el propio lugar de trabajo y desde una cabina del puente de mando, situada en un lugar apartado del lugar de operaciones, por lo que se duplicará el mando correspondiente al puesto de
trabajo Ct como el del puente de mando Cp, por dicho motivo ambos estarán en paralelo
Cuando el pulverizador llegue a un extremo X, el final de carrera fcx será accionado por el propio carro del pulverizador y lo detendrá. Por otra parte, como la marcha del pulverizador debe poder detenerse, si
por alguna causa se pulsa el mando P, éste lo aplicaremos en serie con el de marcha Ma, por su alta prioridad.
Como medida de seguridad, el sistema electrostático y el pulverizador, no deben ponerse en marcha hasta que los contactos de las puertas del recinto de pintura, estén cerradas mediante el contacto de las puestas E
E = E0E1E2 ... Ex
Los cuales actuarán así mismo como borrado las funciones de memoria.
Cs ==> EPfcx [(M + C) (fci) + Cs ]
Cb ==> EPfcx [(M + C) (fca) + Cb]
Como no creemos necesarios más dispositivos adicionales, éstas serán las dos funciones o ecuaciones, las cuales se procederán a establecer, tanto en el lugar de trabajo como en el puente de mando para accionar el contacto
de subida Cs como el de bajada Cb, siendo:
Cs ==> Cs1 + Cs2
Cb ==> Cb1 + Cb2
(Un pulsador de puesta en marcha M, dos finales de carrera fcs y fcb, un par de relés rs y rb de doble contacto, un pulsador de parada forzada P y además dos contactores Cs y Cb.
Es cierto que, con un único motor es posible, aquí contemplaremos dos motores para una mayor claridad).
Podemos decir que un registro de desplazamiento es una aplicación de los flip-flop. Un registro de desplazamiento consiste en
una cadena de flip-flop conectados de modo que permitan una sucesión de desplazamiento por pasos del dato de entrada hasta la salida.
Una particularidad de los registros de desplazamiento es que todos los flip-flop tienen la entrada de reloj en
común, con lo que se activa o desactiva al mismo tiempo, como se puede ver en el
circuito mostrado a la derecha.
Si a la entrada de datos del circuito
mencionado, ponemos un nivel lógico 1, al llegar el flanco de
subida de la señal de reloj, el dato aparecerá en la salida FF1, después del retraso de propagación que se genera, del orden de los nanosegundos, algunas veces se debe tener en cuenta. Con el siguiente impulso de señal de reloj, el FF2
recibirá dicho dato de la salida del FF1, entre tanto el FF1 puede recibir un nuevo dato, con el cual quedará cargado este
registro FF1.
Para reforzar en la práctica 3,
se hace referencia al modo de configuración de los FF tipo D, en los que se basan estos registros de desplazamiento.
En la figura siguiente puede observarse cómo se desplaza un dato desde la entrada del FF1, hasta la
salida del último FF4 de la cadena. El desplazamiento del dato se produce, con el flanco de subida de la señal de reloj,
que es el único momento aceptará datos el registro.
Fig. 8-02
Según esto (fig. 8-02), el dato (bit 1) se ha transferido a través de los FF, desde el FF1 al FF4 con
la ayuda de la señal de reloj, por consiguiente, si el registro de desplazamiento de 4 FF, recibe mas de 4 impulsos de
reloj, el bit será desplazado fuera del FF4 y todos ellos pasarán a tener un 0.
Si se pulsa el reset, se borra todo contenido del registro de desplazamiento (todos los FF se ponen
a 0) y los cuatro dígitos se ponen a 0.
Carga de datos en serie.
Con 4 flip-flop, se pueden cargar (memorizar) 5 números: 0000(0) 0001(1), 0011(2), 0111(3) y 1111(4).
Una condición a definir de los registros de desplazamiento es, dependiendo de como se carguen los datos (bits), en este
caso uno detrás del otro mientras el registro de desplazamiento los transfiere de un FF al siguiente de modo secuencial, a esta forma de
carga se llama 'carga de datos serie'.
Carga de datos en paralelo.
Sin embargo no es la única forma, hay otra forma que se llama 'carga de datos en paralelo', en cuyo
caso cada dato (bit) se carga por una línea S (set) de cada FF lo que cargará simultáneamente todos los dígitos.
Fig. 8-03
Del mismo modo que los datos pueden ser cargados en serie o paralelo en el registro de desplazamiento,
dichos datos también pueden ser extraídos de uno en uno (serie) o todos simultáneamente. Leer los datos de un
registro de desplazamiento serie, se efectúa desplazando dichos datos a través de los FF, tomando los datos en la
salida del último FF. En el caso de un registro de desplazamiento paralelo, se hace al término de la entrada de
datos, es decir al llegar el primer datos al último FF, éste puede disparar el lector de los datos de cada FF. Ver figura 8-03.
Cuando los datos son cargados en serie y leídos en paralelo, se dice que el registro de desplazamiento
funciona como conversor serie-paralelo y conversor paralelo-serie cuando se procede al contrario.
Hemos descrito y desarrollado circuitos que se pueden construir mediante una serie
de puertas lógicas más o menos compleja siguiendo un patrón o camino previsto, lo que de alguna manera limita su respuesta a los
estímulos externos según unos estados lógicos concretos. En los siguientes temas, pasaremos a estudiar una serie de circuitos que
responderán a impulsos, los cuales producirán ciertos estados de toma de decisión según el momento considerado y
procederán con nuevas tareas, esto puede sonar algo extraño y nada más lejos de la verdad, un simple contador digital con algunas
modificaciones puede responder a 'estímulos' o programas.
Ya se describieron los flip-flop y sus variantes en
la lección 5. Veamos algunas de las cosas que se pueden realizar
con una serie de flip-flop conectados en
cadena y la ayuda de unas puertas lógicas, una aplicación clásica de los flip-flop son los contadores digitales, que describiremos con
detalle.
Un contador digital, es siempre un contador binario y esto, mientras no se le condicione seguirá
siendo así. El contador digital a la hora de contar, puede seguir uno de los dos patrones básicos, binario o decimal. Una vez
tomada la decisión el contador realiza su cometido. Si le interesa el tema, en nuestras páginas, puede encontrar tratados con ejemplo
sobre contadores digitales de variados tipos,
contadores de un dígito, contadores de dos dígitos y los
contadores de preselección con cuenta adelante y
atrás.
Analizando
un contador digital cuyo símbolo se muestra a la derecha, de la circuitería interna que nos interesa es que, está
compuesto por una serie concreta de flip-flop y puertas conectados de modo que sigan un patrón. Así pues, un flip-flop básicamente es un
divisor por dos, ya que necesita de dos impulsos de entrada para que su salida Q cambie de estado dos veces.
Consideremos su funcionamiento, si Q = 0, con el primer impulso de entrada, el dato 1 pasa a la
salida, lo que significa que en un principio era 0 y ahora es 1, para volver a dejar la salida a 0, es necesario un nuevo
impulso que devuelva a Q a su estado inicial que era Q = 0. De manera que se confirma lo descrito, así pues, dos flip-flop conectados en
cadena, es decir, la salida de uno conectada a la entrada del otro, los ha convertido de hecho en un divisor por cuatro,
siga el planteamiento anterior para obtener la conclusión de su funcionamiento.
El circuito interno de un 74LS73 o
un homologo en CMOS, el 4027, ambos están compuestos por
dos simples flip-flop J-K independientes, con todas sus entradas y salidas como puede comprobarse en las hojas características de sus
fabricantes.
Con todo lo comentado podemos comprender mejor el siguiente paso; el primer (flip-flop J-K) FF1 se
dispara cuando sus entradas J y K están a nivel 1. La interconexión del flip-flop J-K en estas condiciones (sus entradas J =
K = 1), como ya se ha comentado, se le conoce como un flip-flop T. Al observar el diagrama de tiempos de la figura 8-04, se comprenderá
que la secuencia de pulsos de bajada de reloj queda dividida por dos en FF1 y se produce una división por dos en FF2, o
sea, cada dos pulsos de bajada de FF1 hace avanzar un paso a FF2, del mismo modo ocurre con cada dos de bajada de FF2, avanzará un paso
FF3 y de igual forma ocurre con FF3 y FF4.
Fig. 8-03
Existen muchos tipos de contadores como ya se ha comentado, sin embargo consideramos que en esencia
todos ellos se basan en el mismo principio y su características son las que definen su propia configuración. Lo que dejamos
a juicio del lector para que investigue en las hojas de características de los fabricantes.
Recordemos que estamos hablando de sistemas combinacionales, cuando las salidas son función del estado
de las entradas exclusivamente, por lo tanto, todas las puertas e inversores pertenecen al sistema
combinacional ya que sus salidas dependen directamente del estado de sus respectivas entradas.
También recordaremos que, un contador o registro de desplazamiento pertenecen al sistema secuencial,
puesto que sus salidas son consecuencia de los estados previos y no solo de los impulsos de reloj, a esto le llamábamos
historia previa.
Los codificadores que podemos encontrar en el comercio, son circuitos integrados con los cuales
convertiremos una serie de señales binarias, en un sistema que responda un código previamente determinado. Un buen ejemplo puede
ser los contactos de un teclado numérico. Los 10 números presentan sus respectivas 10 señales, con un codificador podemos convertir a
sólo cuatro señales (BCD) para representar cualquiera de los 10 números, es la codificación decimal a BCD. El conocido
código Gray, hace exactamente eso, codificar unas señales y presentarlas en dicho
código Gray.
Estas son las fases que constituyen para diseñar un codificador de decimal a BCD.
Las entradas y salidas.
Las ecuaciones lógicas que presentaran las salidas.
Tabla de verdad.
Simplificación e implementación de las ecuaciones de las salidas.
Desarrollemos un teclado de 16 contactos que puede servir para entrar datos en hexadecimal a un programador.
Este decodificador propuesto presenta 16 entradas y 4 salidas. Las ecuaciones serán:
Ecuaciones de las teclas o entrada
Salidas
T1 + T3 + T5 + T7 + T9 + TB + TD + TF
=
A
T2 + T3 + T6 + T7 + TA + TB + TE + TF
=
B
T4 + T5 + T6 + T7 + TC + TD + TE + TF
=
C
T8 + T9 + TA + TB + TC + TD + TE + TF
=
D
Más explicita parece la tabla de verdad que fácilmente se deduce de estas ecuaciones y que se presenta a
continuación.
Entradas
Salidas
Teclas
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
D
Debido a la simplicidad del caso, no se requiere simplificar las ecuaciones de salida
y pasaríamos directamente a la ejecución del circuito utilizando puertas OR.
Otra forma más sencilla y económica de implementar las ecuaciones lógicas, pasa por crear una
matriz de diodos de pequeña señal. Esta matriz, se realiza cuando en la tabla anterior se encuentra un 1, uniendo una línea vertical
[entrada] con una línea horizontal [salida], mediante un diodo, necesitaremos utilizar 32 diodos como se aprecia en la siguiente figura.
El principio de los codificadores es el mismo para todos, se reduce unos datos de entrada, estos pasan por un sistema que modifica sus características y como consecuencia se obtiene unos datos de salida, codificados. Por supuesto estos
datos serán nuevamente modificados, es decir, decodificados para volver a interpretarlos.
Un decodificador es un elemento lógico que nos permite extraer la información o datos contenida en una señal o conjunto de ellas. Normalmente es un circuito integrado digital que permite convertir un código binario codificado en otro sin
codificar.
Hay dos grupos en los que clasificar los decodificadores:
Los que proporcionan una única solución (salida) que depende de las entradas.
Los que proporcionan varias soluciones por cada combinación de sus entradas.
A un decodificador le llegan dos líneas de entrada y presenta a su salida cuatro líneas, este decodificador pertenece al primer grupo. Veamos en un ejemplo sobre un decodificador de dos entradas, los pasos a seguir para diseñar cualquier
tipo de decodificador, son los siguientes:
En el ejemplo, el decodificador tiene dos entradas de peso creciente, que llamaremos A y B. Las combinaciones posibles de A y B, son cuatro por lo que tiene cuatro salidas.
Tabla de verdad.
Las ecuaciones lógicas obtenidas por análisis de la tabla de verdad.
Implementación de las ecuaciones lógicas de salida con puertas convencionales.
Ecuación
Salida
AB
S0
A B
S1
A B
S2
A B
S3
La tabla de verdad que se deriva de estas ecuaciones lógicas es tan evidente que no la presentamos
y pasamos directamente al circuito lógico siguiente, con puertas convencionales.
Otros ejemplos más complejos los puede ver en las hojas de características del fabricante de los decodificadores
siguientes: 74LS138, 74LS143, 74LS145, etc.
En el campo de las telecomunicaciones el multiplexor se utiliza como un dispositivo que puede recibir varias entradas y transmitirlas por un medio de transmisión en modo conmutado o compartido. Para lo cual, lo que hace es dividir el medio de transmisión en múltiples canales, de manera que varias entradas puedan comunicarse
de forma simultánea. Una señal que está multiplexada, deberá demultiplexarse en el otro extremo
del medio para aprovecharla, comúnmente se llama decodificarla.
En su forma más básica se compone de dos entradas de datos
A y B, una salida de datos y una entrada de control. Cuando la entrada de control se pone a 0 lógico, la señal de datos A es conectada a la
salida y cuando la entrada de control se pone a 1 lógico, la señal de datos B es la que se conecta a la salida.
Asimilemos, 2 entradas, 1 salida y 1 línea de control.
Los circuitos multiplexores, son dispositivos digitales semejantes a un conmutador,
tienen muchas entradas y una única salida por la que entregará la señal de la entrada que se encuentre activa. El multiplexor
es un circuito digital compuesto de puertas, las cuales están controladas por unas líneas llamadas de
control que se usan para direccionar la entrada correspondiente hasta la salida
en cada momento.
Así pues, se trata de sistemas digitales combinacionales con
varias entradas de datos y una salida, por donde aparecen los datos de la
entrada seleccionada con las líneas de control o auxiliares, en algunos tipos
dispone de una salida complementaria, puede considerarse como un conversor
paralelo-serie.
Dependiendo del número de entradas, el multiplexor dispondrá de ciertas líneas de control, así, para uno de cuatro entradas, se necesitan dos líneas de control. Estas líneas de control, son en realidad un decodificador de direcciones ya que según su
situación dará paso a la señal de la dirección de entrada y sólo a esa, inhabilitando al resto de las entradas.
Salidas=>
S
S
Eo
#
#
A
A
E1
1
#
B
B
E2
#
1
C
C
E3
1
1
D
D
C0
C1
Como se puede apreciar, hay cierta aproximación entre un circuito
digital multiplexor y uno decodificador, la semejanza se puede apreciar mejor al comparar las figuras,
la del decodificador anterior y la del multiplexor siguiente. La diferencia principal es que, las puertas AND
usan una entrada más y todas las salidas lo hacen por una puerta OR. Este procedimiento es el que se debe seguir al considerar la posible aplicación de un multiplexor. La mayoría de los
multiplexores disponen de una línea auxiliar llamada Inhibidora, con la que se bloquea o no la salida.
Como se deduce de la tabla de verdad, un multiplexor de 4
entradas necesita 2 líneas de control y por lo tanto un multiplexor de 8
entradas precisará de 3 líneas de control, con la combinación de las cuales
se seleccionará la entrada datos que se transmitirá a la salida. El símbolo
lógico de uno de 8 entradas, es el siguiente:
Tabla de verdad
para 8
entradas.
C
B
A
strobe
d0
d1
d2
d3
d4
d5
d6
d7
y
w
x
x
x
1
x
x
x
x
x
x
x
x
0
1
0
0
0
0
0
x
x
x
x
x
x
x
0
1
0
0
0
0
1
x
x
x
x
x
x
x
1
0
0
0
1
0
x
0
x
x
x
x
x
x
0
1
0
0
1
0
x
1
x
x
x
x
x
x
1
0
0
1
0
0
x
x
0
x
x
x
x
x
0
1
0
1
0
0
x
x
1
x
x
x
x
x
1
0
0
1
1
0
x
x
x
0
x
x
x
x
0
1
0
1
1
0
x
x
x
1
x
x
x
x
1
0
1
0
0
0
x
x
x
x
0
x
x
x
0
1
1
0
0
0
x
x
x
x
1
x
x
x
1
0
1
0
1
0
x
x
x
x
x
0
x
x
0
1
1
0
1
0
x
x
x
x
x
1
x
x
1
0
1
1
0
0
x
x
x
x
x
x
0
x
0
1
1
1
0
0
x
x
x
x
x
x
1
x
1
0
1
1
1
0
x
x
x
x
x
x
x
0
0
1
1
1
1
0
x
x
x
x
x
x
x
1
1
0
En conclusión, como se puede ver en la tabla de verdad, la
entrada Strobe, para obtener una salida estará a 0 siempre por lo tanto lo debemos
tener en cuenta.
La función de un multiplexador da lugar a diversas aplicaciones:
1. Selector de entradas.
2. Serializador: Convierte datos desde el formato paralelo al formato serie.
3. Trasmisión multiplexada: Utilizando las mismas líneas de conexión, se transmiten diferentes datos de distinta procedencia.
4. Realización de funciones lógicas: Utilizando inversores, se consigue diseñar funciones complejas, de un modo más compacto que con las tradicionales puertas lógicas.
Con la aplicación del multiplexado a las salidas de un
puerto del PIC, es posible controlar varios LEDs o displays usando únicamente
unas cuantas líneas del puerto, este método se usa para ahorrar componentes y
espacio en las aplicaciones.
Los demultiplexores son circuitos cuya función en cierto modo, es justamente la inversa de los multiplexores, ya que estos reciben los datos digitales de información por una única línea y mediante unas líneas auxiliares de control
entregan los datos de la entrada, por una de las líneas de salida que dispone. Para determinar cual de las salidas es en la que aparecen los datos de información, es donde intervienen las líneas auxiliares de control. Así que, un demultiplexor actúa como
un conversor Serie-Paralelo.
Este es el sinóptico que representa el demultiplexor:
Por lo tanto, para un demultiplexor de cuatro salidas S0-S3,
se necesitan dos líneas de control C0 y C1 y una de
entrada de señal E. En cierto modo desde el punto de vista de las señales,
podemos considerar que las líneas C0-C1 y E, son entradas
y salidas las S0-S3. Este es el esquema del demultiplexor descrito y su
tabla, donde Z significa alta impedancia del triestado.
ENTRADAS
SALIDAS
C0
C1
E
S0
S1
S2
S3
0
0
E
E
Z
Z
Z
1
0
E
Z
E
Z
Z
0
1
E
Z
Z
E
Z
1
1
E
Z
Z
Z
E
Un circuito demultiplexor es el 74LS138 con una entrada y ocho salidas
usado para decodificar las posiciones de memoria en un microcontrolador por
ejemplo, otro bastante usado es el decodificador de BCD a 7 segmentos como el
74LS47.
Conclusión.
Las líneas de entrada de señal E y las líneas de
control Cx, respecto de los multiplexores y demultiplexores, deben ser
sincronizadas para alcanzar la máxima efectividad y evitar así, los típicos
errores que se producen en las transmisiones-recepciones de datos, a parte de
los producidos por capacidades y otros.
Es decir, por la línea de datos E están llegando
datos permanentemente, esto exige que las líneas de control C deben
tener una frecuencia de rastreo adecuada a la de llegada de datos por E,
en caso contrario se perderá algún paquete de datos y en consecuencia habrá
errores en la operación.
Son circuitos digitales que detectan la igualdad entre dos números binarios A y B, formados por n bit y en caso contrario, nos indican si A>B,
A=B o A<B. La operación necesaria es la comparación de magnitud entre la suma y la resta aritméticas,
así pues, los comparadores son una parte esencial en circuitos de lógica aritmética.
El comparador de magnitud más sencillo es el de un número de un bit, el cual da lugar a las mencionadas tres salidas A>B [M], A<B [m] y A=B [I]. La tabla de verdad del comparador de un número de un bit es la siguiente.
Entradas
Salidas
A
B
>
=
<
0
0
0
1
0
1
0
1
0
0
0
1
0
0
1
1
1
0
1
0
Las ecuaciones lógicas que corresponden a las salidas del comparador de magnitud se deducen de la tabla de verdad
y se muestran a continuación y el circuito que lo implementa se ve debajo:
M
= A· B
m
= A· B
I
= A·
B + A· B
Donde: M= Mayor, m= menor e I= igual
Otro circuito que puede servir de muestra al lector es el correspondiente al comparador de 4 bits 74LS85 como muestran las hojas de características del fabricante.
Como ya se ha comentado con anterioridad, estas lecciones pretenden ser de alguna manera
iniciadoras de una forma de analizar y seguir unos criterios a la hora de plantearse cómo resolver un proyecto. Y además, con la
esperanza de que su seguimiento pueda orientar y servir de experiencia a futuros profesionales.