at89c51ac3-s3sim ATMEL Corporation, at89c51ac3-s3sim Datasheet - Page 35

no-image

at89c51ac3-s3sim

Manufacturer Part Number
at89c51ac3-s3sim
Description
At89c51ac3 Enhanced 8-bit Microcontroller With 64kb Flash Memory
Manufacturer
ATMEL Corporation
Datasheet
EEPROM Data
Memory
Write Data in the Column
Latches
Programming
Read Data
4383D–8051–02/08
The 2-Kbyte on-chip EEPROM memory block is located at addresses 0000h to 07FFh of
the XRAM/ERAM memory space and is selected by setting control bits in the EECON
register. A read in the EEPROM memory is done with a MOVX instruction.
A physical write in the EEPROM memory is done in two steps: write data in the column
latches and transfer of all data latches into an EEPROM memory row (programming).
The number of data written on the page may vary from 1 up to 128 Bytes (the page
size). When programming, only the data written in the column latch is programmed and
a ninth bit is used to obtain this feature. This provides the capability to program the
whole memory by Bytes, by page or by a number of Bytes in a page. Indeed, each ninth
bit is set when the writing the corresponding byte in a row and all these ninth bits are
reset after the writing of the complete EEPROM row.
Data is written by byte to the column latches as for an external RAM memory. Out of the
11 address bits of the data pointer, the 4 MSBs are used for page selection (row) and 7
are used for byte selection. Between two EEPROM programming sessions, all the
addresses in the column latches must stay on the same page, meaning that the 4 MSB
must no be changed.
The following procedure is used to write to the column latches:
Note:
The EEPROM programming consists of the following actions:
Note:
The following procedure is used to read the data stored in the EEPROM memory:
Save and disable interrupt.
Set bit EEE of EECON register
Load DPTR with the address to write
Store A register with the data to be written
Execute a MOVX @DPTR, A
If needed loop the three last instructions until the end of a 128 Bytes page
Restore interrupt.
writing one or more Bytes of one page in the column latches. Normally, all Bytes
must belong to the same page; if not, the first page address will be latched and the
others discarded.
launching programming by writing the control sequence (50h followed by A0h) to the
EECON register.
EEBUSY flag in EECON is then set by hardware to indicate that programming is in
progress and that the EEPROM segment is not available for reading.
The end of programming is indicated by a hardware clear of the EEBUSY flag.
Save and disable interrupt
Set bit EEE of EECON register
Load DPTR with the address to read
Execute a MOVX A, @DPTR
Restore interrupt
The last page address used when loading the column latch is the one used to select the
page programming address.
The sequence 5xh and Axh must be executed without instructions between then other-
wise the programming is aborted.
35

Related parts for at89c51ac3-s3sim