WRITE_EN:
MOV A,#06H ;instruction for WRITE EN
MOV BITCNT,#08H ;send 1 bytes at once
CLR CS ;enable the M25PE80 through /CS
CLR C
SEND_WREN_CODE:
CLR SCL
RLC A
MOV SDA,C
NOP
SETB SCL
NOP
DJNZ BITCNT,SEND_WREN_DATA
SETB WC1 ;indicated the M25PE80 start
;process the data after all data were
;done
CALL DLY1MS
PAGE_ERASE:
MOV A,#0DBH ;instruction for PAGE ERASE
MOV R0,#RAM_EE1 ;contain 3 BYTES address for start erase
MOV BYTECNT,#03H
MOV BITCNT,#08H ;send 1 bytes at once
CLR CS ;enable the M25PE80 through /CS
CLR C
SEND_PE_CODE:
CLR SCL ;CLK OF M25PE80
RLC A
MOV SDA,C ;DATA OF M25PE80
NOP
SETB SCL
NOP
DJNZ BITCNT,SEND_PE_CODE
SEND_PE__ADDRESS:
MOV A,@R0
MOV BITCNT,#08H
SEND_PE_ADDRESS_LOOP:
CLR SCL
RLC A
MOV SDA,C
NOP
SETB SCL
NOP
DJNZ BITCNT,SEND_PE_ADDRESS_LOOP1
INC R0
DJNZ BYTECNT,SEND_PE_ADDRESS
NOP
NOP
SETB CS ;indicated the M25PE80 start
;process the data after all data were
;done
CALL DLY10MS
CALL DLY1MS
RET