Figure 6.13-15 Slave Mode Control Flow - Nuvoton ISD94124BYI Technical Reference Manual

Isd arm cortex-m4f soc
Table of Contents

Advertisement

6.13.5.2.3
Slave Mode
After reset by default the ISD94100 device I
2
address on I
C bus. Once the I2C address registers I2C_ADDRn (n=0~3) are written, and (STA,
STO, SI, AA) = (0, 0, 1, 1), the ISD94100 I2C will acknowledge the matching address presented on
I2C bus. Figure 6.13-15 shows all the possible control flow in I2C slave mode.
If bus arbitration is lost in Master mode, I
its own slave address in the same serial transfer. If the detected address is SLA+W (Master want
to write data to Slave) after arbitration lost, the status code is 0x68. If the detected address is SLA+R
(Master want to read data from Slave) after arbitration lost, the status code is 0xB0.
2
Note: During I
C communication, the SCL clock will be released when writing '1' to clear SI flag in
slave mode.
Switch to not addressed mode
Own SLA will be recognized
...
(STA,STO,SI,AA)=(0,0,1,1)
Master to Slave
Slave to Master
Arbitration Lost
I2C_DAT=Data
(STA,STO,SI,AA)=(0,0,1,X)
2
If I
C is still receiving data in addressed Slave mode but got a STOP or Repeat START, the status
Sep 9, 2019
ISD94100 Series Technical Reference Manual
2
C is not addressed and will not acknowledge the
2
C port switches to Slave mode immediately and can detect
Sr
STATUS=0x60
I2C_DAT
S
(SLA+W)
(Arbitration Lost)
STATUS=0x68
I2C_DAT
(SLA+W)
STATUS=0xA8
I2C_DAT
(SLA+R)
(Arbitration Lost)
STATUS=0xB0
I2C_DAT
(SLA+R)
STATUS=0xB8
I2C_DAT
ACK
(Data)
I2C_DAT=Data
(STA,STO,SI,AA)=(0,0,1,1)
STATUS=0xC8
I2C_DAT
ACK
(Data)
I2C_DAT=Data
(STA,STO,SI,AA)=(0,0,1,0)
STATUS=0xC0
I2C_DAT
NAK
(Data)
I2C_DAT=Data
(STA,STO,SI,AA)=(0,0,1,0)
STATUS=0xA0
P
I2C_DAT=Data
(STA,STO,SI,AA)=(0,0,1,X)
STATUS=0xA0
Sr
Sr
...
(STA,STO,SI,AA)=(0,0,1,1)

Figure 6.13-15 Slave Mode Control Flow

Page 631 of 928
STATUS=0x80
I2C_DAT
ACK
(Data)
(STA,STO,SI,AA)=(0,0,1,1)
I2C_DAT
(Data)
ACK
(STA,STO,SI,AA)=(0,0,1,0)
STATUS=0xA0
ACK
P
(STA,STO,SI,AA)=(0,0,1,X)
STATUS=0xA0
ACK
Sr
...
(STA,STO,SI,AA)=(0,0,1,1)
(STA,STO,SI,AA)=(0,0,1,X)
Switch to not addressed mode
Own SLA will be recognized
Send START when bus free
...
S
...
(STA,STO,SI,AA)=(1,0,1,1)
Switch to not addressed mode
Own SLA will not be recognized
Send START when bus free
...
S
...
(STA,STO,SI,AA)=(1,0,1,0)
Switch to not addressed mode
Own SLA will be recognized
...
(STA,STO,SI,AA)=(0,0,1,1)
Switch to not addressed mode
Own SLA will not be recognized
...
(STA,STO,SI,AA)=(0,0,1,0)
ACK
STATUS=0x88
NAK
Sr
2
Become I
C
Master
2
Become I
C
Master
2
Become I
C
Slave
Bus
Free
Rev1.09

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents