NuMicro® NUC029LEE/NUC029SEE32-bit Arm® Cortex® -M0 MicrocontrollerAug, 2018 Page 396 of 497 Rev 1.00NUMICRO® NUC029LEE/NUC029SEE TECHNICAL REFERENCE MANUALI2CDAT(SLA+R) ACKNAKI2CDAT(Data) NAKI2CDAT(Data) ACKP SPSrI2CDAT=SLA+R(STA,STO,SI,AA)=(0,0,1,x)STATUS=0x40STATUS=0x48 STATUS=0x08STATUS=0xF8STATUS=0x10STATUS=0x50STATUS=0x58(STA,STO,SI,AA)=(0,0,1,1)(STA,STO,SI,AA)=(0,0,1,0)(STA,STO,SI,AA)=(1,1,1,X)(STA,STO,SI,AA)=(0,1,1,X)(STA,STO,SI,AA)=(1,0,1,X)SSTATUS=0x08(STA,STO,SI,AA)=(1,0,1,X)Master to SlaveSlave to MasterArbitration LostI2CDAT(Data) ACK(STA,STO,SI,AA)=(0,0,1,0)(Arbitration Lost) ACKSTATUS=0x38I2CDAT(SLA+R)ACK/NAKI2CDAT=SLA+R(STA,STO,SI,AA)=(0,0,1,X)(Arbitration Lost)STATUS=0x38I2CDAT(SLA+R) ACKI2CDAT=SLA+R(STA,STO,SI,AA)=(0,0,1,1)(Arbitration Lost) ACKSTATUS= 0x68, 0x78, 0xB0(STA,STO,SI,AA)=(0,0,1,X)...I2C bus will be release;Not addressed SLV mode will be enterd...(STA,STO,SI,AA)=(1,0,1,X)A START will be transmittedwhen the bus becomes freeEnter not addressed SLVmodeSend a START when bus becomesfreeMRMTMR...STATUS=0xF8Figure 6.14-11 Master Receiver Mode Control FlowIf the I2C is in Master mode and gets arbitration lost, the status code will be 0x38. In status 0x38,user may set (STA, STO, SI, AA) = (1, 0, 1, X) to send START to re-start Master operation whenbus become free. Otherwise, user may set (STA, STO, SI, AA) = (0, 0, 1, X) to release I2C busand enter not addressed Slave mode.6.14.5.2.2 Slave ModeWhen reset default, I2C is not addressed and will not recognize the address on I2C bus. User canset slave address by I2CADDRx and set (STA, STO, SI, AA) = (0, 0, 1, 1) to let I2C recognize theaddress sent by master. Figure 6.14-12 shows all the possible flow for I2C in Slave mode. Usersneed to follow a proper flow (as shown in Figure 6.14-12 to implement their own I2C protocol.