259
ABOV Semiconductor Co., Ltd.
15.1.8 Erase Mode
The sector erase program procedure in user program mode
1. Page buffer clear (FMCR=0x01)
2. Write ‘0’ to page buffer
3. Set flash sector address register (FSADRH/FSADRM/FSADRL).
4. Set flash identification register (FIDR).
5. Check the UserID for to prevent the invalid work
(Note)
.
6. Set flash mode control register (FMCR).
7. Erase verify
NOTE)
1. Please refer to the chapter “Protection for Invalid Erase/Write”
2. On flash memory erase and write, it should be disabled the RXE bit of USInCR2 register.
Program Tip – sector erase
ANL EO,#0xF8 ;Set DPTR0
MOV FMCR,#0x01 ;page buffer clear
NOP ;Dummy instruction, This instruction must be needed.
NOP ;Dummy instruction, This instruction must be needed.
NOP ;Dummy instruction, This instruction must be needed.
MOV A,#0
MOV R0,#SectorSize ;Sector size of Device
MOV DPH,#0x80 ;Page Buffer Address is 8000H
MOV DPL,#0
Pgbuf_clr:
MOVX @DPTR,A
INC DPTR
DJNZ R0,Pgbuf_clr ;Write ‘0’ to all page buffer
MOV FSADRH,#SAH ;Sector Address High Byte.
MOV FSADRM,#SAM ;Sector Address Middle Byte
MOV FSADRL,#SAL ;Sector Address Low Byte
MOV FIDR,#0xA5 ;Identification value
MOV A,#ID_DATA_1 ;Check the UserID(written by user)
CJNE A,UserID1,No_WriteErase;This routine for UserID must be needed.
MOV A,#ID_DATA_2
CJNE A,UserID2,No_WriteErase
MOV FMCR,#0x02 ;Start flash erase mode
NOP ;Dummy instruction, This instruction must be needed.
NOP ;Dummy instruction, This instruction must be needed.
NOP ;Dummy instruction, This instruction must be needed.
LJMP Erase_verify
---
No_WriteErase:
MOV FIDR,#00H
MOV UserID1,#00H
MOV UserID2,#00H
---
Erase_verify:
---
Verify_error:
---