Någon som har falkögon o ser vad jag gör för fel.
Har hämtat mesta av nedanstående kod från databladet.
Kod: Markera allt
Lagra_EEPROM ; PIC 16f688
;
; indata:
; (FSR), data
; rgE, adress
;
; utdata:
;
; register som ändras:
;
; PC-stackanvändning: 0
;
movf rgE, w
banksel eeadr
movwf eeadr ; data memory address to write
movf INDF, w
movwf eedat ; data memory value to write
banksel eecon1
bcf eecon1, eepgd ; point to data memory
bsf eecon1, wren ; enable writes
see_ioff
bcf intcon, gie ; disable ints. see an576
btfsc intcon, gie
goto see_ioff
movlw 055h
movwf eecon2 ; write 55h
movlw 0aah
movwf eecon2 ; write aah
see_vnt
bsf eecon1, wr ; set wr bit to begin write
btfsc eecon1, wr ; när bit=0 då är skrivning klar
goto see_vnt
bsf intcon, gie ; enable ints.
bcf eecon1, wren ; disable writes
bcf status, RP0 ; bank 0
return