T
E
RABAJO Y
XPLICACIÓN
PROGRAMA 6
El Display de 7 segmentos del entrenador. Decodificador hex. BCD a 7 segmentos.
Mediante los cuatro interruptores RA0-RA3 se introduce un valor hexadecimal de 4 bits que
debe visualizarse sobre el display.
;--------------------------------------------------------------------------------------------------------------------
;Tabla: Esta rutina convierte el código binario presente en los 4 bits de menos peso del reg. W en
;su equivalente a 7 segmentos. Para ello el valor de W se suma al valor actual del PC. Se obtiene
;un desplazamiento que apunta al elemento deseado de la tabla.El código 7 segmentos retorna
;también en el reg. W.
Tabla:
Inicio
Loop
D
P
ESARROLLO
ROYECTOS Y
PIC 16F87
X
List
p=16F876
include
"P16F876.INC" ;Definiciones de registros internos
org
0x05
goto
Inicio
addwf
PCL,F
retlw
b'00111111'
retlw
b'00000110'
retlw
b'01011011'
retlw
b'01001111'
retlw
b'01100110'
retlw
b'01101101'
retlw
b'01111101'
retlw
b'00000111'
retlw
b'01111111'
retlw
b'01100111'
retlw
b'01110111'
retlw
b'01111100'
retlw
b'00111001'
retlw
b'01011110'
retlw
b'01111001'
retlw
b'01110001'
clrf
PORTB
bsf
STATUS,RP0
clrf
TRISB
movlw
0x06
movwf
ADCON1
movlw
b'00111111'
movwf
TRISA
bcf
STATUS,RP0
movf
PORTA,W
andlw
b'00001111'
call
Tabla
movwf
PORTB
goto
Loop
end
P
E
ROTOTIPOS
LECTRÓNICOS
;Tipo de procesador
;Desplazamiento sobre la tabla
;Dígito 0
;Dígito 1
;Dígito 2
;Dígito 3
;Dígito 4
;Dígito 5
;Dígito 6
;Dígito 7
;Dígito 8
;Dígito 9
;Dígito A
;Dígito B
;Dígito C
;Dígito D
;Dígito E
;Dígito F
;Borra el Puerto B
;Selecciona banco 1
;Puerta B se configura como salida
;Puerta A digital
;Puerta A se configura como entrada
;Selecciona banco 0
;Lee el código de RA0-RA3
;Convierte a 7 segmentos
;Visualiza sobre el display
2º DPE
63