Codigo LCD
Enviado por ztiven • 20 de Junio de 2014 • 652 Palabras (3 Páginas) • 568 Visitas
INCLUDE <P16F628A.INC> ; Incluya el archivo de cabecera
CBLOCK 0X20 ; Declarar direcciones variables a partir de 0x20
R0C,R0D,R0E,R13,loops,loops2,REG_RX,CONTE,MEMORIA,RX_COMP,RX_ID1,RX_ID2,RX_PRO1,MENS_CONT,CON_USER,DATA_IN,CONT_USER,
CONT_INTS,MEM_STATUS,DATA_RUP,DATA_COMP,ID1_SAVE,ID2_SAVE,ID3_SAVE
ENDC
E EQU 2H ;dirección de E = B
RS EQU 1H ;dirección de RS = B
ORG 0X00 ; vector reset
GOTO INICIO ;saltar a inicio
RETARDO
CLRWDT ;limpia el (WDT)
MOVLW D'15' ;hace W = 15 (decimal)
MOVWF loops ;hace loops = W = 15
top2_1 ;define la etiqueta TOP2_1
MOVLW D'25' ;hace W = 25 (decimal)
MOVWF loops2 ;hace loops2 = 25 (decimal)
top_1 ;define la etiqueta TOP_1
CLRWDT ;limpia el WDT
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
NOP ;no se realiza instruccion (NOP usados como pequeños retardos)
DECFSZ loops2,1
GOTO top_1
DECFSZ loops,1
GOTO top2_1
RETLW 0
RETARDO_1
CLRWDT
MOVLW D'100'
MOVWF loops
top2_2
MOVLW D'200'
MOVWF loops2
top_2
CLRWDT
NOP
NOP
NOP
NOP
NOP
NOP
DECFSZ loops2,1
GOTO top_2
DECFSZ loops,1
GOTO top2_2
RETLW 0
CONTROL
CLRWDT
BCF PORTB,RS
GOTO DATO2
DATO
CLRWDT
BSF PORTB,RS
DATO2
BSF PORTB,E
MOVWF R0E
MOVLW 0FH
ANDWF PORTB,1
MOVF R0E,W
ANDLW 0F0H
IORWF PORTB,1
CALL RETARDO
BCF PORTB,E
CALL RETARDO
BSF PORTB,E
MOVLW 0FH
ANDWF PORTB,1
SWAPF R0E,W
ANDLW 0F0H
IORWF PORTB,1
CALL RETARDO
BCF PORTB,E
CALL RETARDO
RETLW 0
INICIO
BSF STATUS,5
CLRF TRISB
MOVLW .255
MOVWF TRISA
BCF STATUS,5
CONFI_LCD
MOVLW 02H
CALL CONTROL
MOVLW 28H
CALL CONTROL
MOVLW 0CH
CALL CONTROL
MOVLW 06H
CALL CONTROL
ENTRADAS
BTFSC PORTA,0
GOTO MENSAJE_1
BTFSC PORTA,1
GOTO MENSAJE_2
BTFSC PORTA,2
GOTO MENSAJE_3
GOTO BORRA_LCD
MENSAJE_1
MOVLW 01H
CALL CONTROL
CALL RETARDO
MOVLW " "
CALL DATO
MOVLW " "
CALL DATO
...