;------------------------------------------------------------
; Código assembler generado por Niple V5.4.4
; Proyecto: encen
; Autor: ---
; Fecha: 25/12/2010
; PIC: 12F629
; Velocidad de reloj: Int 4 Mhz
; Descripcion: 
;------------------------------------------------------------


 LIST    P=PIC12F629


_INTRC_OSC_NOCLKOUT   equ  0x3FFC
_WDT_OFF              equ  0x3FF7
_PWRTE_ON             equ  0x3FEF
_MCLRE_OFF            equ  0x3FDF
_BODEN_OFF            equ  0x3FBF
_CPD_OFF              equ  0x3FFF
_CP_OFF               equ  0x3FFF

 __config _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON & _MCLRE_OFF & _BODEN_OFF & _CPD_OFF & _CP_OFF


;------------------------------------------------------------
;                  Declaración de Registros
;------------------------------------------------------------
w                     equ  0x0000
status                equ  0x0003
gpio                  equ  0x0005
pclath                equ  0x000a
cmcon                 equ  0x0019
_np_tiempo            equ  0x0022
trisio                equ  0x0085


;------------------------------------------------------------
;                  Declaración de Bits
;------------------------------------------------------------
c                     equ  0   ;carry / borrow bit
gp0                   equ  0   ;bit 0 del puerto
gp4                   equ  4   ;bit 4 del puerto
gp5                   equ  5   ;bit 5 del puerto
rp0                   equ  5   ;registrer bank select bit
rp1                   equ  6   ;registrer bank select bit
z                     equ  2   ;bit cero


;------------------------------------------------------------
;               Declaración de Registros EEPROM
;------------------------------------------------------------


;------------------------------------------------------------
;                        Inicio
;------------------------------------------------------------

   org 0
   goto paso2


;------------------------------------------------------------
;                      programa principal
;------------------------------------------------------------
paso2
   bcf status,rp0                   ;cambiar a banco 0
   clrf _np_tiempo
   clrf gpio                        ;configurar el puerto a como xxesesss
   movlw b'00000111'
   movwf cmcon
   movlw b'00101000'
   bsf status,rp0                   ;cambiar a banco 1
   movwf trisio
paso3
   bcf status,rp0                   ;cambiar a banco 0
   btfss gpio,gp5                   ;si el bit gp5 = 1
   goto paso6
   btfsc gpio,gp4                   ;si el bit gp4 = 0
   goto paso3                       ;cierra el ciclo
   bsf gpio,gp4
   goto paso3                       ;cierra el ciclo
paso6
   bcf gpio,gp4
   bsf gpio,gp0
   movlw .10                        ;temporizador 100 use
   call tmp_10_uc
   bcf gpio,gp0
   goto paso3                       ;cierra el ciclo


;------------------------------------------------------------
;                  Declaración de Subrutinas
;------------------------------------------------------------

tmp_10_uc
   movwf _np_tiempo
   goto tmp_10_uc_10
tmp_10_uc_bucle
   nop
   nop
   nop
   nop
   nop
   nop
   nop
tmp_10_uc_10
   decfsz _np_tiempo,1
   goto tmp_10_uc_bucle
   return



;------------------------------------------------------------
;                  DATOS EN MEMORIA EEPROM
;------------------------------------------------------------
   org  0x2100
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff
   data   0xff

 End