Práctica Contador

Anuncio
CODIFICACIÓN 7 SEGMENTOS. CONTADOR
Se propone la realización de unas prácticas un poco más complicadas:
la realización de un decodificador a 7 segmentos y la realización de un
contador de 4 bits con precarga en paralelo.
Objetivos
Se busca el aprendizaje de las herramientas de trabajo y del ciclo de
diseño, al tiempo que se emplean más instrucciones y se diseñan diagramas
de flujo más complicados.
Especificaciones. Decodificador a 7 segmentos
El segundo programa consiste en la realización de un decodificador a
7 segmentos empleando el microcontrolador citado. La entrada en binario se
realiza a través de los pines RA0..RA3 y la salida decodificada se genera a
través de RB0..RB6 para los segmentos A,B,C,D,E,F,G (ver Figura 2) y
RB7 para el punto decimal (DP).
Figura 2. Display de 7 segmentos. Además
de las señales mostradas tiene un cátodo
común.
Pin Diagrams
PDIP, SOIC
1
2
3
4
VSS
RB0/INT
RB1
RB2
5
6
7
8
RB3
9
PIC16F84A
RA2
RA3
RA4/T0CKI
MCLR
18
17
16
15
RA1
RA0
OSC1/CLKIN
OSC2/CLKOUT
14
13
12
11
VDD
RB7
RB6
RB5
10
RB4
Figura 3. Patillaje del microcontrolador PIC
16F84A.
3
La codificación de tablas en los PIC se hace de una forma muy
diferente a como se realiza en otros micros. Ahí va un ejemplo:
; El acceso a un elemento de la tabla va a consistir en
; llamar a una subrutina (TABLA) metiendo en el registro de
; trabajo (W) el índice de la misma.
TABLA
ADDWF
RETLW
RETLW
RETLW
RETLW
PCL,F
40
41
42
43
;
;
;
;
;
PCL=PCL+W
Valor devuelto
Valor devuelto
Valor devuelto
Valor devuelto
40
41
42
43
(W=0)
(W=1)
(W=2)
(W=3)
; Hay que tener mucho cuidado en que el valor de W este
; dentro del rango definido y que la posición de la tabla
; se encuentre dentro de una página de 256 bytes dado
; que si hay un acarreo del byte inferior (PCL) al byte
; superior del contador de programa, no se accederá
; correctamente a la tabla
Especificaciones: contador de 4 bits con carga en paralelo
El tercer programa consiste en diseñar un contador UP/DOWN de 4
bits utilizando el mismo microcontrolador.
Los pines RA0..RA3 son la entrada en paralelo del contador; RA4
indica el fin de cuenta; RB0 es la entrada de la señal de reloj (para
incrementar o decrementar el contador); RB1 es la patilla de carga en
paralelo; RB2 es el indicador del sentido del contaje (1, incrementa, 0,
decrementa); RB3 es la señal de borrado o puesta a cero del contador y
RB4..RB7 es la salida del contador.
Para sacar nota
Se recomienda el uso de la funcionalidad doble de la patilla RB0/INT
que es capaz de responder por interrupciones a un flanco (de subida o
bajada).
4
Descargar