Está en la página 1de 2

C:\proyectos\asembler\Puertos_16F887\Display_887.

asm domingo, 13 de septiembre de 2009 12:48

TITLE "Manejo de dos displays de 7 segmentos"


SUBTITLE "Configuración de puertos del PIC16F887 "
PROCESSOR 16F887

INCLUDE P16F887.INC

;Palabra de configuracion OSCILADOR XT


__CONFIG _CONFIG1,_LVP_OFF&_FCMEN_OFF&_IESO_OFF&_BOR_OFF&_CPD_OFF&_CP_OFF&
_MCLRE_OFF&_PWRTE_ON&_WDT_OFF&_INTRC_OSC_NOCLKOUT
__CONFIG _CONFIG2,_WRT_OFF&_BOR21V

;Definición de Entradas/Salidas
#DEFINE DIS_UNI PORTA,1 ;Activar transistor NPN para habilitar display de las unidades
#DEFINE DIS_DEC PORTA,2 ;Activar transistor NPN para habilitar display de las decenas

CBLOCK 0X20
AUXA,AUXB,AUXC
ENDC
;*******************************************************************************************
ORG 0X00
GOTO PPAL

;Configuración de registros del PIC16F887


CONFIG_PIC
; BANCO 4
BANKSEL ANSEL
CLRF ANSEL
CLRF ANSELH
; BANCO 1
BANKSEL TRISA
MOVLW B'11111001'
MOVWF TRISA
MOVLW B'00000001'
MOVWF TRISB
MOVLW B'01101001'
MOVWF OSCCON
; BANCO 0
BANKSEL PORTA
CLRF PORTB
RETURN

;********************************************************************************
;Rutina de retardo para visualización
RETARDO
MOVLW .1
MOVWF AUXA
RETAR3 MOVLW .2
MOVWF AUXB
RETAR2 MOVLW .100
MOVWF AUXC
RETAR1 DECFSZ AUXC,F
GOTO RETAR1
DECFSZ AUXB,F
-1-
C:\proyectos\asembler\Puertos_16F887\Display_887.asm domingo, 13 de septiembre de 2009 12:48

GOTO RETAR2
DECFSZ AUXA,F
GOTO RETAR3
RETURN
;***************************************************************************************
;Tabla para activación de segmentos en display de cátodo común
TABLA_DISPLAY_CC
ADDWF PCL,F
RETLW B'01111110' ;0
RETLW B'00001100' ;1
RETLW B'10110110' ;2
RETLW B'10011110' ;3
RETLW B'11001100' ;4
RETLW B'11011010' ;5
RETLW B'11111010' ;6
RETLW B'00001110' ;7
RETLW B'11111110' ;8
RETLW B'11001110' ;9
RETLW B'00000000' ;APAGADO

;**************************************************************************
;Rutina para visualización de valor en display
VISUAL_CC
MOVLW 08 ;Dato para visualizar en el disply de las unidades
CALL TABLA_DISPLAY_CC
MOVWF PORTB
BSF DIS_UNI
NOP
BCF DIS_DEC
NOP
CALL RETARDO
CLRF PORTB

MOVLW 05 ;;Dato para visualizar en el disply de las decenas


CALL TABLA_DISPLAY_CC
MOVWF PORTB
BCF DIS_UNI
NOP
BSF DIS_DEC
NOP
CALL RETARDO
CLRF PORTB
RETURN
;********************************************************************************
;Programa principal
PPAL CALL CONFIG_PIC
BUCLE CALL VISUAL_CC
GOTO BUCLE

END

-2-

También podría gustarte