Sei sulla pagina 1di 16

1

Villanueva, O.

INFORME

Integrante:

 Villanueva, Orlando. C.I. 26.929.417.

Valencia, Octubre 2019


2
Villanueva, O.

INTRODUCCIÓN

En este informe, tratara del integrado 74164 y la comunicación serial, ya


que mediante esta última es como el integrado funciona. La forma que se abarcara
este tema será explicando cada pin que conforma el integrado, y como las señales
de entrada (comunicación serial), generaran varias salidas. Que son vitales cuando
se tienen poco recursos para armar un circuito. Para finalizar se realizara una
actividad, previamente asignada por el profesor usando en integrado, que terminara
de enseñarnos su completo funcionamiento.
3
Villanueva, O.

IC 74164

Descripción:
Son circuitos de registro de desplaziamiento donde la información de
entrada se va desplazando en las salidas cuando se les aplica una señal de
sincronismo; si se deja de enviar la señal de sincronismo, en la salida se mantiene
la información anteriormente presente (memorizado).

Registros de desplazamiento

Definición:
Los registros de desplazamiento son circuitos secuenciales formados por
biestables o flip-flops generalmente de tipo D conectados en serie y una circuitería
adicional que controlará la manera de cargar y acceder a los datos que se
almacenan. En los de desplazamiento se transfiere información de un flip-flop
hacia el adyacente, dentro del mismo registro o a la entrada o salida del mismo. La
capacidad de almacenamiento de un registro es el número total de bits que puede
contener. El funcionamiento se realiza de manera síncrona con la señal de reloj.
Gran parte de los registros de desplazamiento reales incluyen una señal RESET o
CLEAR asíncrona, que permite poner simultáneamente todas las salidas en "0" o
estado bajo, sin necesidad de introducir ceros seguidos. Esto permite limpiar
rápidamente el registro de desplazamiento lo cual es muy importante a nivel
práctico.

Sus funciones dentro del sistema digital son:


• Servir de almacenamiento temporal de un conjunto de bits sobre los que
se está realizando una labor de procesamiento.
• Desplazamiento de datos a lo largo de los flip-flops.
4
Villanueva, O.

Especificación del IC 74164:

 Familia: LS
 Tipo de salida: Estándar
 Tipo de lógica: Registro de desplazamiento
 Número de elementos: 1
 Número de bits por elemento: 8
 Función registro de desplazamiento: Serie a paralelo
 Tensión de alimentación máxima: 5.25 V
 Tensión de alimentación mínima: 4.75 V
 Frecuencia de reloj: 25 MHz
 Temperatura de funcionamiento mínima: 0 ° C
 Temperatura de funcionamiento máxima: 70 ° C
 Encapsulado: DIP
 14 pines

Tipos de registros

Entrada serie/salida serie: Los datos deben introducirse en serie, es decir,


bit a bit por una única línea. La salida se obtendrá de la misma manera. Borramos
el contenido del registro haciendo un clear.

Entrada serie/salida paralelo: En este tipo de registros con salida en paralelo


se dispone de la salida de cada flip-flop por lo que una vez almacenados los datos
cada bits se representa en su respectiva salida. De esta manera todos los bits de
salida estarán disponibles al mismo tiempo.
5
Villanueva, O.

En este caso mostraremos gráficamente los estados del registro para unos
datos de entrada de terminados. Mostraremos los cambios fijándonos en la señal
de reloj.
6
Villanueva, O.

Entrada paralelo/salida serie: En este tipo de registros los bits de datos se


introducen simultáneamente a través de líneas paralelo en lugar bit a bit. La salida
serie se hace de igual modo que en el primer caso explicado una vez que los datos
hayan sido almacenados.

Entrada paralelo / salida paralelo:


7
Villanueva, O.

Pines

La relación de pines de este integrado es la siguiente:

A, B: Pines de entrada serie al registro. La entrada al registro de este


dispositivo la hace conectando
internamente estas dos señales a
través de una puerta AND. Entradas
sin inversión.

CLOCK: Pin de entrada de reloj. El desplazamiento de los datos se realiza


a cada flanco ascendente de la señal de reloj. Entrada sin inversión.

CLEAR: Pin de puesta a cero de todas las salidas. Entrada con inversión.
8
Villanueva, O.
QA...QH: Pines de salida paralelo. Son ocho pines de salidas sin inversión.

Funcionamiento:

Cuando el pin de puesta a cero CLEAR tiene un nivel lógico bajo,


independientemente del estado del resto de entradas, las salidas pasarán a estar
todas a cero. Si CLEAR está a nivel lógico alto el resultado del AND de las dos
entradas A y B será desplazado por cada salida desde QA hasta QH a cada flanco
ascendente de la señal de reloj. Es decir, a cada flanco ascendente del reloj QA
tomará el valor de la operación AB; QB el valor que tenía QA; QC el valor que tenía
QB y así hasta QH que tomará el valor que tenía QG.

Al conectar la entrada B=1, la entrada A será la que proporciona la entrada


en serie al registro. Si ponemos CLEAR a uno, después de 8 flancos ascendentes
del reloj aparece en las salidas QA hasta QH la información introducida por A en
cada flanco ascendente (salida paralelo). A partir de este octavo flanco de subida la
salida QH representa la entrada A con un retraso de 8 pulsos (salida serie).

Tabla de la verdad del ic 74164


9
Villanueva, O.
Actividad 1
Realizar un contador con un display de 7 segmentos y un ic 74164 que
cuenta de 1 a 9 y después de A a F, cuando pulse un botón y vuelva a repetir.

Código

Device 16F877A
Xtal 20
All_Digital true

TRISA=1
TRISB=0
TRISC=0
TRISD=0
Symbol pulsador= PORTA.0
Symbol clock = PORTB.0
Symbol led = PORTB.1
Dim A[16] As Byte
Dim va As Byte
Dim k As Byte
Dim y As Byte
Dim X[9] As Byte

X[0]=%00000001
X[1]=%00000010
X[2]=%00000100
X[3]=%00001000
X[4]=%00010000
X[5]=%00100000
X[6]=%01000000
X[7]=%10000000
A[0]=%11111100
A[1]=%01100000
A[2]=%11011010
A[3]=%11110010
A[4]=%01100110
A[5]=%10110110
A[6]=%10111110
A[7]=%11100000
A[8]=%11111110
A[9]=%11100110
A[10]=%11101110
A[11]=%11111110
10
Villanueva, O.
A[12]=%10011100
A[13]=%11111100
A[14]=%10011110
A[15]=%10001110
PORTB=0
PORTC=0
PORTD=0
k=0
inicio:
For y=0 To 7 Step 1
clock=0
DelayUS 1
va = (A[k] & X[y])
If va>1 Then
va=1
End If
led=va
DelayUS 1
clock=1
DelayUS 1
Next
DelayMS 40
pregunta:

If pulsador=1 Then
k=k+1
If k>=16 Then
k=0
End If
GoTo inicio
End If

GoTo pregunta

Notas:
En el arreglo A guardo los datos del 1 a F en binario y en el arreglo X
guardo, por así decirlo la posición de cada bit con respecto al byte.

En el ciclo FOR de 8 vueltas es donde se envía la información en forma de


comunicación serial, bit a bit.
11
Villanueva, O.
La variable ”va”, se encarga de determinar la posición y el valor (0,1) del bit
que va hacer enviado con la comunicación serial. Lo que hace es una and (&) entre
el arreglo A y X. Determinando un 0 o un 1, que posteriormente va hacer preguntado
y va a transformar el 1 de 8 bits (%00000001) en un 1 de solo de un bit.

Simulación 1

Notas:

El CLEAR conectado directo a +5v, para que siempre esté funcionando.

Las entradas A y B del 74164 están puenteadas, para facilitar la entrada


de datos, quintando de cierta forma la compuerta and que forman A y B.
12
Villanueva, O.

Actividad 2

Hacer un contador de 0 a 99 con solo un 74164 y dos display de 7


segmentos y dos botones uno ascendente y el otro descendente.

Código 2
Device 16F877A
Xtal 20
All_Digital true

TRISA=1
TRISB=0
TRISC=0
TRISD=0

Symbol pulsador= PORTA.0


Symbol pulsador1= PORTA.1
Symbol clock = PORTB.0
Symbol led = PORTB.1
Dim vec As Byte
Dim y As Byte
Dim k As Byte
Dim kk As Byte
Dim f As Byte
Dim v As Byte
Dim w As Byte
Dim A[16] As Byte
For vec=0 To 15
A[vec]= LookUp vec,
[252,96,218,242,102,182,190,224,254,230,238,254,156,252,158,1
42]
Next

PORTB=0
PORTC=1
PORTD=0

k=0
kk=0
v=A[k]
PORTA=1
13
Villanueva, O.
w=A[kk]

inicio:
v=A[k]
w=A[kk]
PORTC=0
DelayUS 10
PORTC=1
DelayMS 35

PORTD=%00000001

For y=0 To 7 Step 1


clock=0
DelayUS 1
led=GetBit v, y
DelayUS 1
clock=1
DelayUS 1
Next

PORTC=0
DelayUS 10
PORTC=1
DelayMS 35
PORTD=%00000010

For y=0 To 7 Step 1


clock=0
DelayUS 1
led=GetBit w, y
DelayUS 1
clock=1
DelayUS 1
Next

GoSub pregunta

GoTo inicio

pregunta:

If pulsador=1 Then
k=k+1
If k>=10 Then
14
Villanueva, O.
k=0
kk=kk+1
End If
If kk=10 Then
kk=0
End If
DelayMS 200
End If

If pulsador1=1 Then
k=k-1
If k<0 Then
k=9
kk=kk-1
End If
If kk=-1 Then
kk=9
End If
DelayMS 200
End If

Return

Notas:

Mismo principio solo que alterno los displays tan rápido que parece que
están encendidos al mismo tiempo.

El arreglo lo pude reducir gracias a la instrucción LOOKU, que hace un


Fetch a un valor constante de una tabla de búsqueda. Y guarde cada dato en el
arreglo gracias a un ciclo FOR.

Pude tambien reducer la parte de la variable “va”, que use en la actividad


anterior gracias a la instruccion GETBIT, que indica el valor de un bit, a lo largo del
arreglo de un byte.

El Puerto D, se encarga de apagar cada display y el Puerto C se encarga


de poner todas las salidas del integrado en 0, para volver a cargar en siguiente
15
Villanueva, O.
arreglo. Esto lo hice para eliminar un poco la distorsión de los dígitos en la
simulación.

Simulación 2

Notas:

Los transistores permiten alternar los displays de la mejor manera posible.


16
Villanueva, O.
CONCLUSIONES

Se puede decir, que los usos que nos permite este integrado son excelentes, ya
que con solo dos entradas podemos obtener hasta 8 salidas simultánea. Todo
gracias a la comunicación serial de tipo sincrónico (ósea que comparten el mismo
reloj) que existe entre el PIC 16f877A y el 74164. El integrado por si solo se encarga
de transformar esta entrada serie en una salida en paralelo, por el desplazamiento
de registro formado por los flip-flops tipo D conectados en serie que hay dentro de
este. Con esto en mente y junto a las actividades que se realizaron en este informe,
podemos decir podemos conectar cuantos display queramos trabajando en esta
modalidad y para nosotros los futuro ingenieros nos permite no solo ahorrar espacio
en el código, sino también dinero porque podemos usar PICs de menores
capacidades (sin tanto pines), para realizar trabajos puntuales.

Potrebbero piacerti anche