Datasheet

2010-2012 Microchip Technology Inc. DS41419D-page 109
PIC16(L)F1824/1828
EXAMPLE 11-2: DATA EEPROM WRITE
FIGURE 11-1: FLASH PROGRAM MEMORY READ CYCLE EXECUTION
BANKSEL EEADRL ;
MOVLW DATA_EE_ADDR ;
MOVWF EEADRL ;Data Memory Address to write
MOVLW DATA_EE_DATA ;
MOVWF EEDATL ;Data Memory Value to write
BCF EECON1, CFGS ;Deselect Configuration space
BCF EECON1, EEPGD ;Point to DATA memory
BSF EECON1, WREN ;Enable writes
BCF INTCON, GIE ;Disable INTs.
MOVLW 55h ;
MOVWF EECON2 ;Write 55h
MOVLW 0AAh ;
MOVWF EECON2 ;Write AAh
BSF EECON1, WR ;Set WR bit to begin write
BSF INTCON, GIE ;Enable Interrupts
BCF EECON1, WREN ;Disable writes
BTFSC EECON1, WR ;Wait for write to complete
GOTO $-2 ;Done
Required
Sequence
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
BSF EECON1,RD
executed here
INSTR(PC + 1)
executed here
Forced NOP
executed here
PC
PC + 1 EEADRH,EEADRL
PC+3
PC + 5
Flash ADDR
RD bit
EEDATH,EEDATL
PC + 3 PC + 4
INSTR (PC + 1)
INSTR(PC - 1)
executed here
INSTR(PC + 3)
executed here
INSTR(PC + 4)
executed here
Flash Data
EEDATH
EEDATL
Register
EERHLT
INSTR (PC) INSTR (PC + 3) INSTR (PC + 4)