UM10413
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2011. All rights reserved.
User manual
Rev. 1 — 16 December 2011
146 of 268
NXP Semiconductors
UM10413
MPT612 User manual
7. Exit.
16.9.6 Master transmitter states
16.9.6.1
State: 0x18
Previous state was state 8 or state 10, slave a write is transmitted, ACK is
received. The first data byte is transmitted, an ACK bit is received.
1. Load I2DAT with first data byte from master transmit buffer.
2. Write 0x04 to I2CONSET to set bit AA.
3. Write 0x08 to I2CONCLR to clear the SI flag.
4. Increment master transmit buffer pointer.
5. Exit.
16.9.6.2
State: 0x20
Slave a write is transmitted, NOT ACK is received. A Stop condition is
transmitted.
1. Write 0x14 to I2CONSET to set the STO and AA bits.
2. Write 0x08 to I2CONCLR to clear the SI flag.
3. Exit.
16.9.6.3
State: 0x28
Data is transmitted, ACK is received. If the transmitted data was the last data byte, then
transmit a Stop condition, otherwise transmit the next data byte.
1. Decrement the master data counter, skip to step 5 if not the last data byte.
2. Write 0x14 to I2CONSET to set the STO and AA bits.
3. Write 0x08 to I2CONCLR to clear the SI flag.
4. Exit.
5. Load I2DAT with next data byte from master transmit buffer.
6. Write 0x04 to I2CONSET to set bit AA.
7. Write 0x08 to I2CONCLR to clear the SI flag.
8. Increment master transmit buffer pointer
9. Exit.
16.9.6.4
State: 0x30
Data is transmitted, NOT ACK received. A Stop condition is transmitted.
1. Write 0x14 to I2CONSET to set the STO and AA bits.
2. Write 0x08 to I2CONCLR to clear the SI flag.
3. Exit.
16.9.6.5
State: 0x38
Arbitration is lost during slave a write or data. The bus is released and
not-addressed slave mode is entered. A new Start condition is transmitted when the bus is
free again.