
M0A21/M0A23 Series
May 06, 2022
Page
582
of 746
Rev 1.02
M0
A21
/M
0
A
2
3
SE
RIES
TEC
H
NICAL
RE
FEREN
C
E
M
ANUAL
I
2
C in slave mode, it can receive the general call address by 0x00 after master send general call address
to I
2
C bus, and then it also will follow protocol status register.
RXDAT
(SLA+W=0x00)
(PTRG, STA, STO, AA)=(0, 0, 0, 1)
GCFUNC = 1
Clear protocol status register
ACKIF = 1
RXDAT
(Data)
(PTRG, STA, STO, AA)=(1, 0, 0, 1)
Writing 1 to ACKIF
...
RXDAT
(Data)
(PTRG, STA, STO, AA)=(1, 0, 0, 0)
Writing 1 to ACKIF
ACKIF = 1
NACKIF = 1
S
(PTRG, STA, STO, AA)=(1, 1, 0, 1)
Writing 1 to ACKIF
Write 1 to STORIF
...
...
Switch to not addressed mode
Own SLA will be recognized
Send START when bus free
S
(PTRG, STA, STO, AA)=(1, 1, 0, 0)
Writing 1 to ACKIF
Write 1 to STORIF
...
...
Switch to not addressed mode
Own SLA will not be recognized
Send START when bus free
...
Switch to not addressed mode
Address 0x0 will be recognized
(PTRG, STA, STO, AA)=(1, 0, 0, 0)
Writing 1 to ACKIF
Write 1 to STORIF
Switch to not addressed mode
Own SLA will not be recognized
Become I
2
C Master
Become I
2
C Master
Become I
2
C Master
Become I
2
C Master
Bus Free
Bus Free
...
(PTRG, STA, STO, AA)=(1, 0, 0, 1)
Writing 1 to ACKIF
Write 1 to STORIF
Switch to not addressed mode
Own SLA will be recognized
Become I
2
C Slave
Become I
2
C Slave
RXDAT
(SLA+W=0x00)
ARBLOIF = 1
Arbitraion Lost
Arbitraion Lost
Master to Slave
Master to Slave
Slave to Master
Slave to Master
STORIF = 1
Sr
Sr
...
Sr
(PTRG, STA, STO, AA)=(1, 0, 0, X)
Writing 1 to ACKIF
(Writing 1 to ARBLOIF)
(PTRG, STA, STO, AA)=(1, 0, 0, X)
Writing 1 to ACKIF
(Writing 1 to ARBLOIF)
S
ACK
NAK
ACK
NAK
P
STARIF=1
Figure 6.15-19 GC Mode with 7-bit Address
If I
2
C is still receiving data in GC mode but got a STOP or Repeat START, the STORIF (UI2C_PROTSTS
[9]) or STARIF (UI2C_PROTSTS [8]) will be set. User could follow the action for NACKIF
(UI2C_PROTSTS [10]) in above figure when got STORIF (UI2C_PROTSTS [9]) or STARIF
(UI2C_PROTSTS [8]) is set.
Note:
After slave gets interrupt flag of NACKIF (UI2C_PROTSTS [10]) and start/stop symbol including
STARIF (UI2C_PROTSTS [8]) and STORIF (UI2C_PROTSTS [9]), slave can switch to not address
mode and own SLA will not be recognized. If setting this interrupt flag, slave will not receive any I
2
C
signal or address from master. At this time, I
2
C controller should be reset by setting FUNMODE
(UI2C_CTL [2:0]) = 000B to leave this status.