Norberto:
Realmente el problema lo tuve con la eeprom del 873, les copio el código para leerla y grabarla.
lee_eeprom:
clrf adress
bsf status,RP1
bcf status,RP0
movlw adress
movwf eeadr
bsf status,RP0
bcf eecon1,EEPGD
bsf eecon1,RD
bcf status,RP0
movf eedata,w
movwf aux2
bcf status,RP1
graba_eeprom:
clrf adress
bcf STATUS,RP0
bsf STATUS,RP1
movlw adress
movwf EEADR
bcf STATUS,RP0
bcf STATUS,RP1
movf aux2,w
bcf STATUS,RP0
bsf STATUS,RP1
movwf EEDATA
bsf STATUS,RP0
bsf STATUS,RP1
bcf EECON1,EEPGD
bsf EECON1,WREN
bcf INTCON,GIE
movlw 0x55
movwf EECON2
movlw 0xaa
movwf EECON2
bsf EECON1,WR
wee1:
btfsc EECON1,WR
goto wee1
bcf INTCON,EEIF
bcf EECON1,WREN
bcf STATUS,RP0
bcf STATUS,RP1
bsf INTCON,GIE ;
return
Los registros AUX son lo que utiliza cada uno en el programa para pasar los datos
Saludos
Jorge