Está en la página 1de 2

LIST P=16F877A

INCLUDE <P16F877A.INC>
CBLOCK 0X20

; Identifica al dispositivo
; Libreria del dispositivo
; Area de variables

ENDC
ORG 0X2007
DW 0X3F7A

; Configuracion del PIC

ORG 0X0000
; Direccion inicial de la ROM
BSF STATUS,RP0
; Bank 1
BCF STATUS,RP1
MOVLW 0X1F
; Puerto A de entrada para el teclado
MOVWF TRISA
BCF TRISC,6
; RC6 de salida como Transmisor del USART
MOVLW 0X24
; Programacin del TX
MOVWF TXSTA
MOVLW .25
; Constante para velocidad de 9600 baudios
MOVWF SPBRG
BCF STATUS,RP0
; Bank 0
BCF STATUS,RP1
MOVLW 0X80
MOVWF RCSTA
CLRF

LETRA

; Programacin del Puerto Serie RC6/TX

;BORRAMOS LA VARIABLE 'LETRA'

LINE_1 MOVF LETRA,W


;CARGAMOS LETRA->W
CALL TABLA
;LLAMAMOS LA TABLA
MOVWF VARLCD
;W TIENE UN CARACTER Y LO GUARDA EN
VARLCD
CALL MODO_CHAR ;VIZUALIZAMOS EL CARACTER
INCF LETRA,F
;LETRA+1->LETRA
MOVF LETRA,W
;LETRA->W
XORLW D'14'
;
BTFSS STATUS,Z ;SI LETRA=14
GOTO LINE_1
;NO, ENTONCES REPITE EL PROSESO
CALL LINEA_2
;SI, PONE EL CURSOR EN LA SEGUNDO LINEA
CLRF LETRA
;BORRAMOS VARIABLE
LINE_2 MOVF LETRA,W
;MISMO PROCESO DE ARRIBA
CALL TABLA_2
;SOLO QUE AHORA MUESTRA LOS
CARACTERES
MOVWF VARLCD
;EN LA SEGUNDA LINEA
CALL MODO_CHAR
INCF LETRA,F
MOVF LETRA,W
XORLW D'8'
BTFSS STATUS,Z
GOTO LINE_2

SLEEP

;BAJO CONSUMO

;-------------------------------------;
TABLAS DE LETRAS
;-------------------------------------TABLA ADDWF PCL,F
DT "SIMPLE USO DEL"
TABLA_2 ADDWF PCL,F
DT "LCD 16x2"
END

También podría gustarte