Electronic Components Datasheet Search |
|
ADP1046-100-EVALZ Datasheet(PDF) 41 Page - Analog Devices |
|
ADP1046-100-EVALZ Datasheet(HTML) 41 Page - Analog Devices |
41 / 96 page Data Sheet ADP1046 Rev. 0 | Page 41 of 96 EEPROM The ADP1046 has a built-in EEPROM controller that is used to communicate with the embedded 8K × 8-byte EEPROM. The EEPROM, also called Flash®/EE, is partitioned into two major blocks: the INFO block and the main block. The INFO block contains 128 8-bit bytes (for internal use only), and the main block contains 8K 8-bit bytes. The main block is further partitioned into 16 pages, each page containing 512 bytes. OVERVIEW The EEPROM controller provides an interface between the ADP1046 core logic and the built-in Flash/EE. The user can control data access to and from the EEPROM through this controller interface. Different I2C commands are available for the different operations to the EEPROM. Communication is initiated by the master device sending a command to the I2C slave device to access data from or send data to the EEPROM. Using read and write commands, data is transferred between devices in a byte-wide format. Using a read command, data is received from the EEPROM and transmitted to the master device. Using a write command, data is received from the master device and stored in the EEPROM through the EEPROM controller. Send commands are also supported, in which case the command is executed by the slave device upon receiving the stop bit. The stop bit is the last bit in a complete data transfer, as defined in the I2C communication protocol. For a complete description of the I2C protocol, see the Philips I2C Bus Specification, Version 2.1, dated January 2000. PAGE ERASE OPERATION The main block consists of 16 equivalent pages of 512 bytes each, numbered Page 0 to Page 15. Page 0 and Page 1 of the main block are reserved for storing the default settings and user settings, respectively. The user cannot perform a page erase operation on Page 0 or Page 1. Page 2 and Page 3 are reserved for internal use, and their contents should not be erased. Only Page 4 to Page 15 of the main block should be used to store data. To erase any page from Page 4 to Page 15, the EEPROM must first be unlocked for access. For instructions on how to unlock the EEPROM, see the Unlock the EEPROM section. Page 4 to Page 15 of the main block can be individually erased using the EEPROM_PAGE_ERASE command (Register 0x87). For example, to perform a page erase of Page 10, execute the following command: S 7-BIT SLAVE ADDRESS W A A P DATA BYTE COMMAND CODE A = MASTER-TO-SLAVE = SLAVE-TO-MASTER Figure 54. Example Erase Command In this example, command code = 0x87 and data byte = 0x0A. Note that it is necessary to wait at least 35 ms for the page erase operation to complete before executing the next I2C command. The EEPROM allows erasing of whole pages only; therefore, to change the data of any single byte in a page, the entire page must first be erased (set high) for that byte to be writable. Subsequent writes to any bytes in that page are allowed as long as that byte has not been written to a logic low previously. READ OPERATION (BYTE READ AND BLOCK READ) Read from Main Block, Page 0 and Page 1 Page 0 and Page 1 of the main block are reserved for storing the default settings and user settings, respectively, and are intended to prevent third-party access to this data. To read from Page 0 or Page 1, the user must first unlock the EEPROM (see the Unlock the EEPROM section). After the EEPROM is unlocked, Page 0 and Page 1 are readable using the EEPROM_DATA_xx commands, as described in the Read from Main Block, Page 2 to Page 15 section. Note that when the EEPROM is locked, a read from Page 0 or Page 1 returns invalid data. Read from Main Block, Page 2 to Page 15 Data in Page 2 to Page 15 of the main block is always readable, even with the EEPROM locked. The data in the EEPROM main block can be read one byte at a time or in multiple bytes in series using the EEPROM_DATA_xx commands (Register 0x8B to Register 0x9A). Before executing this command, the user must program the number of bytes to read using the EEPROM_NUM_RD_BYTES command (Register 0x86). The user can also program the offset from the page boundary where the first read byte is returned using the EEPROM_ADDR_OFFSET command (Register 0x85). In the following example, three bytes from Page 4 are read from the EEPROM, starting from the fifth byte of that page. 1. Set the number of return bytes = 3. S 7-BIT SLAVE ADDRESS W A A P 0x86 0x03 A = MASTER-TO-SLAVE = SLAVE-TO-MASTER 2. Set address offset = 5. S 7-BIT SLAVE ADDRESS W A A A A P 0x85 0x00 0x05 = MASTER-TO-SLAVE = SLAVE-TO-MASTER 3. Read three bytes from Page 4. S 7-BIT SLAVE ADDRESS 7-BIT SLAVE ADDRESS W A A R A 0x8F Sr BYTE COUNT = 0x03 DATA BYTE 3 A A NA P DATA BYTE 1 ... = MASTER-TO-SLAVE = SLAVE-TO-MASTER Note that the block read command can read a maximum of 256 bytes for any single transaction (set the number of return bytes = 0). |
Similar Part No. - ADP1046-100-EVALZ |
|
Similar Description - ADP1046-100-EVALZ |
|
|
Link URL |
Privacy Policy |
ALLDATASHEET.COM |
Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Datasheet Upload | Contact us | Privacy Policy | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
Family Site : ic2ic.com |
icmetro.com |