Gran duda con memoria EEPROM

hola, mi problema es el siguiente: estoy realizando un proyecto para el colegio y estoy haciendo una cerradura electronica controlada por teclado, tiene que tener una clave de acceso de 4 digitos y ademas con un boton del teclado poder cambiarle la clave. Lo estoy haciendo con el pic 16F88, la cosa es que no entiendo como hacer la subrutina de escritura/lectura de la EEPROM, les dejo la sub-rutina que me pasaron traducida del datasheet del pic, a ver si alguien me puede dar una mano:

Código:
LECTURA
banksel EEADR
movlw claveing
movwf EEADR
bcf EECON1,EEPGD
banksel EECON1
bsf EECON1,RD
banksel EEDATA
movf EEDATA,W
movwf claveori; en este registro estaria la clave original de la cerradura (¿esta bien?)
 
 
ESCRITURA
call mensaje2
banksel EECON1
btfsc EECON1,WR
goto CLAVE
banksel EEADR
movf clavenuev,w; aca me dijeron que va direccion, pero no entiendo de que :oops:
movwf EEADR
movf claveing,w; aca va el "dato" pero no se a que se refiere :confused:
movwf EEDATA 
banksel EECON1
bcf EECON1,7; pongo en 0 el bit "EEPGD"
bsf EECON1,2; pongo en 1 el bit "WREN"
bcf INTCON,GIE; deshabilito las interrupciones
movlw 0x55
movwf EECON2
movlw 0xAA
movwf EECON2
bsf EECON1,1; pongo en 1 el bit "WR"
bcf EECON1,2; pongo en 0 el bit "WREN"
banksel PORTB
return
muchas gracias :)
 
Última edición por un moderador:
Atrás
Arriba