Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2.1.2 Registro entrada serie salida Un registro de entrada y salida paralelo a partir
de biestables D con entrada de habilitación. La
paralelo. entrada de datos es cada una de las entradas D
del biestable; la entrada de habilitación se une a
una entrada de habilitación global, de manera
que cuando se activa, permite que se lean los
datos. Hay otra entrada (control de salida) que
al activarse permite que se lean las salidas. Se
ha utilizado puertas AND, aunque también
podríamos haber utilizados puertas OR y un
Figura 2. Registro de 5 bits entrada serie salida inversor, o también buffers con entradas de alta
paralelo maestro esclavo RS [1] impedancia para las salidas. [2]
.
Se observa que la única diferencia es que se le 2.2 Funcionamiento.
añade una salida a cada una de las salidas Q
del biestable: de esta manera se pueden Para analizar este funcionamiento se va analizar
obtener todos los datos a la vez, también se los integrados 74LS164 y 74LS165.
puede obtener una salida en serie de cualquier
salida Q o Q’. [2] 2.2.1. Integrado 74LS164.[2]
2.1.3 Registro entrada paralelo
salida serie.
Figura 8. b)
2.2.2 APLICACIONES
Las aplicaciones son varias:
- Ruleta digital[4]
Figura 12. Diagrama lógico interno.
VENTAJAS
i=0;
}
Figura 14. Diagrama lógico
SIMULACIÓN
Podemos ver es simplemente un array de FF
tipo D, donde el dato ingresado va pasando
secuencialmente de un FF al otro mediante un
pulso de reloj por ciclo, es decir ingresamos el
primer bit, enviamos un pulso de clock y ese bit
pasa de un FF al otro, dejando libre el primero
para ingresar el segundo bit, así sucesivamente
hasta que se completen los 8bit a mostrar.
CODIGO
#include <16F877A.h>
#FUSES NOWDT
#FUSES NOCPD Figura 15. Aplicación 01
#FUSES NOPROTECT
#FUSES NOPUT
#FUSES NOBROWNOUT 5. TECLADO 4X4 Y DISPLAY 16X2
#use delay(clock=4000000)
#define DATO PIN_b1
#define CLK PIN_b0
Las entradas a través de un pulsador son muy
habituales en los sistemas con
microcontroladores para trabajar con una mayor
información o información alfanumérica.
Funciones incorporadas en el compilador C:
Kbd_init()
Inicializa el sistema, debe ser la primera función
en el programa.
Kbd_getc()
Devuelve el valor de la tecla pulsada en función
Figura 18. Diagrama lógico
de la tabla que esta programada podemos
modificar la tabla para obtener los resultados
que nosotros deseemos. 5.1 APLICACIÓN
El archivo KBD.C está pensado para trabajar
con el portb o el protb. CODIGO
Activando o no la linea ·define use_portb_lcd
TRUE podemos seleccionar el PORTB
Las conexciones vienen dadas en el fichero #include <16F877A.h>
pero se pueden modificar: #fuses XT,NOWDT
#use delay (clock=4M)
//pines para el lcd
/*RD0 =RS
RD1= RW
RD2 =enable
RD3 =
RD4 = D4
RD5 =D5
RD6 =D6
RD7 = D7
*/
#define lcd_data_port
getenv("sfr:portd") //para los pines de
datos de LCD
#define lcd_rs_pin pin_d0
#define lcd_rw_pin pin_d1
#define lcd_enable_pin pin_d2
// por defecto la libreria del
teclado(KBD) lo asigna en el puerto D
//se lo va ha ubicar en el puerto B
Figura 16. Distribución de columnas y filas #define use_portb_kbd TRUE //
teclado asignado al puerto B
Se puede trabajar con el LCD y el tecaldo a //luego de realizar los cambios de pines
través de puertos separados o compartiendo el se asigna las librerias
mismo puerto. #include <lcd.c> // libreria lcd
Compartir puerto suele conllevar problemas si #include <kbd.c> //libreria para el
se quiere trabajar con el teclado y las teclado
interrupciones RB4/ RB7. #use standard_io(A)
#include <stdlib.h>
#rom 0x2100={'7','2','3'}
void main()
{
char k;
int i;
char data[3], clave[3];
lcd_init();
kbd_init();
for(i=0;i<=2;i++)
{ [3] Contadores (2010) .Disponible en:
clave[i]=read_eeprom(i); http://personales.unican.es/manzanom/Planantig
} uo/EDigitalI/CONTG1.pdf
if((data[0]==clave[0])&&(data[1]==clave
[1])&&(data[2]==clave[2])) [4] Raúl Esteve Bosch, Fundamentos de
{ Electrónica Digital. Universidad Politécnica de
printf(lcd_putc,"\f puerta abierta"); Valencia. España, 2005
output_high(pin_A0);
delay_ms(500); [5] Contador Johnson.(2013). Disponible
output_low(pin_A0); en:http://logicadigital02.wikispaces.com/DISE%
} C3%91O+DEL+CONTADOR+JHONSON+DE+4
else +BITS
printf(lcd_putc,"\f puerta cerrada");
delay_ms(1000);
}
}
SIMULACIÓN
6. CONCLUSIONES:
• Un contador de anillo es un tipo de
contador compuesto por un registro de
desplazamiento de tipo circular.
• Básicamente los dos contadores son
similares físicamente lo que les
diferencia es que en el uno ingresa la
función positiva y el otro en función
negativa.
• En los contadores tipo anillo existe el
inconveniente que siempre hay que
inicializarlo bien en 1L o 0L.
• Los registros son muy usados para
almacenamiento de memorias para los
desplazamientos de textos de
diferentes maneras de desplegar el
texto en la matriz de led’s