
PIC18F66K80 FAMILY
DS39977F-page 142
2010-2012 Microchip Technology Inc.
EXAMPLE 8-1:
DATA EEPROM READ
EXAMPLE 8-2:
DATA EEPROM WRITE
MOVLW
DATA_EE_ADDRH
;
MOVWF
EEADRH
; Upper bits of Data Memory Address to read
MOVLW
DATA_EE_ADDR
;
MOVWF
EEADR
; Lower bits of Data Memory Address to read
BCF
EECON1, EEPGD
; Point to DATA memory
BCF
EECON1, CFGS
; Access EEPROM
BSF
EECON1, RD
; EEPROM Read
NOP
MOVF
EEDATA, W
; W = EEDATA
MOVLW
DATA_EE_ADDRH
;
MOVWF
EEADRH
; Upper bits of Data Memory Address to write
MOVLW
DATA_EE_ADDR
;
MOVWF
EEADR
; Lower bits of Data Memory Address to write
MOVLW
DATA_EE_DATA
;
MOVWF
EEDATA
; Data Memory Value to write
BCF
EECON1, EEPGD
; Point to DATA memory
BCF
EECON1, CFGS
; Access EEPROM
BSF
EECON1, WREN
; Enable writes
BCF
INTCON, GIE
; Disable Interrupts
MOVLW
55h
;
Required
MOVWF
EECON2
; Write 55h
Sequence
MOVLW
0AAh
;
MOVWF
EECON2
; Write 0AAh
BSF
EECON1, WR
; Set WR bit to begin write
BTFSC
EECON1, WR
; Wait for write to complete GOTO $-2
BSF
INTCON, GIE
; Enable Interrupts
; User code execution
BCF
EECON1, WREN
; Disable writes on write complete (EEIF set)