SBOU024C august 2004 – july 2023 PGA309
The Write EEPROM and Read EEPROM One-Wire commands initiate a communication transaction on the Two-Wire bus between the PGA309 and the EEPROM device (see Figure 4-10).
The Write EEPROM command causes the PGA309 to generate a Two-Wire start condition and send a Two-Wire slave address byte to the EEPROM device with the four MSBs set to ‘1010’ and the three LSBs set to bits 10−8 of the EEPROM address pointer. The R/ W bit is set to ‘0’ to indicate a write instruction. If the PGA309 receives an acknowledge from the EEPROM device, it then sends a byte with eight LSBs of the EEPROM address pointer. If the PGA309 receives an acknowledge from this byte, the PGA309 sends the least significant byte of the data to the EEPROM. Upon successful receipt of an acknowledge to this byte, the PGA309 transmits the most significant byte. After the acknowledge bit of this byte, the PGA309 generates a Two-Wire stop condition to terminate data transfer to the EEPROM.
The Read EEPROM command causes the PGA309 to generate a Two-Wire start condition and send a Two-Wire slave address byte to the EEPROM with the four MSBs set to ‘1010’, the three LSBs set to bits 10−8 of the EEPROM Address Pointer, and the R/W bit set to ‘0’ to indicate a write instruction. If the PGA309 receives an acknowledge from the EEPROM device, it will then send a byte with the eight LSBs of the EEPROM address pointer. If the PGA309 receives an acknowledge from this byte, the PGA309 generates another Two-Wire START condition, send another slave address byte but this time with the R/ W bit set to ‘1’ to indicate a read instruction. If the PGA309 receives an acknowledge, it continues to clock the SCL line to receive the first byte from the EEPROM, acknowledge this byte, receive the second byte, not acknowledge the second byte to terminate data transfer, and then generate a Two-Wire STOP condition.