20.5.2.1 Generating Start Bus Event

To initiate a Start event, the user software sets the SEN bit (I2CxCON1[0]. Prior to setting the Start bit, the user software should check the bus free timer flag BITO (I2CxSTAT2) to ensure that the bus is in an Idle state or wait until the bus is in an Idle state.

Figure 20-7 illustrates the timing of the Start condition.

  • Client logic detects the Start condition, sets the S status bit (I2CxSTAT1[3]) and clears the P status bit (I2CxSTAT1[4])
  • STARTE(I2CxSTA2[14]) bit is set
  • The SEN bit is automatically cleared at completion of the Start condition
  • The I2CxIF interrupt is generated at completion of the Start condition if HSCIE (I2CxINTC[27]) bit and HSTIE(I2CxINTC[13]) are enabled
  • HSTACT (I2CxSTAT2[29]) bit will be set on completion of Start condition
  • After the Start condition, the SDAx line and SCLx lines are left low (Q state)