LIST P=16F84A
INCLUDE <P16F84A.INC>
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
CBLOCK 0x0C
Contador
ENDC
#DEFINE Incremente PORTA,4
#DEFINE Decremente PORTA,3
#DEFINE Derecha PORTA,2
#DEFINE Izquierda PORTA,1
; ZONA DE CÓDIGOS ********************************************************************
Inicio
call LCD_Inicializa
bsf STATUS,RP0
bsf Incremente
bsf Decremente
bsf Derecha
bsf Izquierda
bcf STATUS,RP0
movlw 0X61
movwf Contador
Principal
btfsc Incremente
goto FinIncremente
call Retardo_20ms
btfsc Incremente
goto FinIncremente
goto SePulsoIncremente
FinIncremente
btfsc Decremente
goto FinDecremente
call Retardo_20ms
btfsc Decremente
goto FinDecremente
goto SePulsoDecremente
FinDecremente
btfsc Derecha
goto FinDerecha
call Retardo_20ms
btfsc Derecha
goto FinDerecha
goto SePulsoDerecha
FinDerecha
btfsc Izquierda
goto Principal
call Retardo_20ms
btfsc Izquierda
goto SePulsoIzquierda
SePulsoIncremente
incf Contador,F
goto Prueba
Prueba
movlw 0x7B
subwf Contador,W
btfsc STATUS,Z
goto InicializarContador
call LCD_Caracter
IncializarContador
movlw 0X61
movwf Contador
SePulsoDecremente
decf Contador,F
goto Prueba2
Prueba2
movlw 0x60
subwf Contador,W
btfsc STATUS,Z
call LCD_Caracter
Inicializar Contador
movlw 0x7B
movwf Contador
SePulsoDerecha
incf Contador,F
goto Prueba3
Prueba3
movlw 0x00
subwf Contador,W
btfsc STATUS,Z
call LCD_posicionlinea1
Inicializar Contador
movlw 0x4F
movwf Contador
SePulsoIzquierda
decf Contador,F
goto Prueba4
Prueba4
movlw 0x4F
subwf Contador,W
btfsc STATUS,Z
call LCD_posicionlinea1
Inicializar Contador
movlw 0x00
movwf Contador
INCLUDE <LCD_4BIT.INC>
INCLUDE <RETARDOS.INC>
END
esta librerias las tome de Microcontrolador Pic 16f84 de la editorial Alfaomega