7. I
2
C Interface > Tsi578 as I
2
C Slave
158
Tsi578 User Manual
June 6, 2016
Integrated Device Technology
www.idt.com
7.5.8
Slave Access Examples
This section shows a slave internal register access by an external master. The following abbreviations
are used:
<S> Start condition
<R> Restart condition
<SLVA> The 7-bit Tsi578 slave address (that matches SLV_ADDR)
<PA=#> 8-bit peripheral address (current setting viewable in SLV_PA)
<A> Acknowledge (ACK)
<N> Not acknowledge (NACK)
<P> Stop condition
<W> Write
<W> Read (not write)
<WD=#> 8-bit write data (from master to Tsi578)
<RD=#> 8-bit read data (from Tsi578 to master)
Also, registers and register fields are referenced by name.
All examples assume that the transactions occur in the order given; only one master is accessing (such
that nothing is changed by another master between transactions); and nothing is changed by the
processor/host during the transactions.
The following conditions pre-exist: ALERT_FLAG is set in the
1.
External device reads
C Slave Access Status Register”
(LSB only). The
returned value of 0x01 is the ALERT_FLAG. External device must NACK after the first read byte
to stop the transfer.
I
2
C Sequence: <S><SLVA><W><PA=0x20><A><R><SLVA><W><RD=0x01><N><P>
Following the transaction, SLV_PA is 0x21 and interrupt status SA_OK asserts. An optional
interrupt can also be sent to the Interrupt Controller if enabled in SA_OK of
2.
External device reads
(all 4 bytes). Note that the data from
this register is returned LSB to MSB. External device must NACK the fourth byte to stop the
transfer.
I
2
C Sequence:
<S><SLVA><W><PA=0x80><A><R><SLVA><W>
<RD=0x56><A><RD=0x34><A><RD=0x12><A><RD=0x80><N><P>
Following the transaction, SLV_PA is 0x84 and interrupt status SA_OK asserts. An optional
interrupt can also be sent to the Interrupt Controller if enabled in SA_OK of