Estoy trarando de hacer una rutina de grabacion de la eeprom en forma secuencial, que toma el dato y la direccion de los registros: "dato" y "dir" y los graba uno a continuacion del otro pero no me funciona. Al parecer no se escribe EEADR o EEDATA con el valor de dir y dato y por eso no graba nada. Al hacerlo directamente si graba. Este es el codigo:
movlw 07h
movwf dir
movlw 'K'
movwf dato
call escribir
bsf STATUS, RP0 ;Bank 1
movlw 00h
movwf EEADR;cargo direccion a escribir
movlw 'A'
movwf EEDATA; cargo dato a escribir
bcf STATUS, RP0 ; Bank 0
call WhiteEEPROM
call RETARDO4MS
goto fin
escribir
bsf STATUS, RP0 ;Bank 1
movf dir,w
movwf EEADR;cargo direccion a escribir
movf dato,w
movwf EEDATA; cargo dato a escribir
bcf STATUS, RP0 ; Bank 0
call WhiteEEPROM
call RETARDO4MS
return
fin
nop
goto fin
end
Cual es el error?