| Electronic Components Datasheet Search |
|
ADM1067ASU Datasheet(PDF) 30 Page - Analog Devices |
|
|
|||||||||||||||||||||||||||||
ADM1067ASU Datasheet(HTML) 30 Page - Analog Devices |
|
30 / 32 page ![]() ADM1067 Rev. B | Page 30 of 32 8 • To set up a 2-byte EEPROM address for a subsequent read, write, block read, block write, or page erase. In this case, the command byte is the high byte of the EEPROM address from 0xF8 to 0xFB. The only data byte is the low byte of the EEPROM address, as shown in Figure 36. SLAVE ADDRESS EEPROM ADDRESS HIGH BYTE (0xF8 TO 0xFB) SW A EEPROM ADDRESS LOW BYTE (0x00 TO 0xFF) AP A 24 13 5 7 6 Figure 36. Setting an EEPROM Address Because a page consists of 32 bytes, only the 3 MSBs of the address low byte are important f or page erasure. The lower five bits of the EEPROM address low byte specify the addresses within a page and are ignored during an erase operation. • To write a single byte of data to EEPROM. In this case, the command byte is the high byte of the EEPROM address from 0xF8 to 0xFB. The first data byte is the low byte of the EEPROM address, and the second data byte is the actual data, as shown in Figure 37. SLAVE ADDRESS EEPROM ADDRESS HIGH BYTE (0xF8 TO 0xFB) SW A EEPROM ADDRESS LOW BYTE (0x00 TO 0xFF) A A 24 13 5 7 A 9 DATA 8 6 P 10 Figure 37. Single Byte Write to EEPROM Block Write In a block write operation, the master device writes a block of data to a slave device. The start address for a block write must have been set previously. In the ADM1067, a send byte opera- tion sets a RAM address, and a write byte/word operation sets an EEPROM address, as follows: 1. The master device asserts a start condition on SDA. 2. The master sends the 7-bit slave address followed by the write bit (low). 3. The addressed slave device asserts ACK on SDA. 4. The master sends a command code that tells the slave device to expect a block write. The ADM1067 command code for a block write is 0xFC (1111 1100). 5. The slave asserts ACK on SDA. 6. The master sends a data byte that tells the slave device how many data bytes are being sent. The SMBus specification allows a maximum of 32 data bytes in a block write. 7. The slave asserts ACK on SDA. 8. The master sends N data bytes. 9. The slave asserts ACK on SDA after each data byte. 10. The master asserts a stop condition on SDA to end the transaction. SLAVE ADDRESS SW A 2 COMMAND 0xFC (BLOCK WRITE) 4 13 A 5 BYTE COUNT 6 A 7 A 9 10 A P A DATA 1 8 DATA N DATA 2 Figure 38. Block Write to EEPROM or RAM Unlike some EEPROM devices that limit block writes to within a page boundary, there is no limitation on the start address when performing a block write to EEPROM, except when • There must be at least N locations from the start address to the highest EEPROM address (0xFBFF), to avoid writing to invalid addresses. • An addresses cross a page boundary. In this case, both pages must be erased before programming. Note that the ADM1067 features a clock extend function for writes to EEPROM. Programming an EEPROM byte takes approximately 250 μs, which limits the SMBus clock for repeated or block write operations. The ADM1067 pulls SCL low and extends the clock pulse when it cannot accept any more data. READ OPERATIONS The ADM1067 uses the following SMBus read protocols. Receive Byte In a receive byte operation, the master device receives a single byte from a slave device, as follows: 1. The master device asserts a start condition on SDA. 2. The master sends the 7-bit slave address followed by the read bit (high). 3. The addressed slave device asserts ACK on SDA. 4. The master receives a data byte. 5. The master asserts no acknowledge on SDA. 6. The master asserts a stop condition on SDA, and the transaction ends. In the ADM1067, the receive byte protocol is used to read a single byte of data from a RAM or EEPROM location whose address has previously been set by a send byte or write byte/word operation, as shown in Figure 39. 23 14 5 SLAVE ADDRESS S R DATA P A 6 A Figure 39. Single Byte Read from EEPROM or RAM Block Read In a block read operation, the master device reads a block of data from a slave device. The start address for a block read must have been set previously. In the ADM1067, this is done by a send byte operation to set a RAM address, or a write byte/word operation to set an EEPROM address. The block read operation itself consists of a send byte operation that sends a block read command to the slave, immediately followed by a repeated start and a read operation that reads out multiple data bytes, as follows: |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | 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 |