			
 #include <p16F628.inc>
 __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_OFF & _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _LVP_OFF & _PWRTE_ON
 errorlevel -302

          
escribir  movf     tempo,w
          BSF      STATUS,RP0
          CLRF     EEADR 
          BCF      STATUS,RP0
          call     EE_Write                                                                           
          goto     program      ;este salto es a cualquier etiqueta
 

leer      BSF     STATUS,RP0
          CLRF    EEADR
          BCF     STATUS,RP0
          call    EE_Read 
          movwf   minuto    
          goto     program      ;este salto es a cualquier etiqueta
 
 

;============================================================================================

EE_Write BSF     STATUS,RP0   	 
	 movwf   EEDATA 
	 BSF     EECON1,WREN ;Permiso de escritura 
	 BCF     INTCON,GIE 
	 movlw   0x55 
	 movwf   EECON2 
	 movlw   0xAA 
	 movwf   EECON2 ;Secuencia seg£n Microchip 
         BSF   	 EECON1,WR

         BSF	PIE1, EEIE
	 BSF    INTCON, GIE

ESPERAR	BTFSS	PIR1,EEIF	; Lee ek EEIF y salta una instrucción si el valor es 1
	GOTO	ESPERAR         ; Espera de grabación de la EEPROM

        BCF	PIR1,EEIF	; Limpia el flag EEIF

        BCF	 STATUS,RP0
        RETURN

;============================================================================================

EE_Read  BSF	     STATUS,RP0
	 BSF         EECON1,RD    ;Orden de lectura 
	 MOVF        EEDATA,w     ;datos en W
         BCF         STATUS,RP0   ;Selecci˘n banco 0     
         RETURN

         End











