/* Send a master data transmit request when the master have obtained control of the bus.(Write Step2) 
For this function returns immediately, it is always using in the interrupt hander. */
void xI2CMasterWriteRequestS2(unsigned long ulBase, unsigned char ucData, xtBoolean bEndTransmition)
/* Send a master data transmit request when the master have obtained control of the bus.(Write Step2) 
For this function returns immediately, it is always using in the interrupt hander. */
void xI2CMasterWriteRequestS2(unsigned long ulBase, unsigned char ucData, xtBoolean bEndTransmition)
{
    xASSERT((ulBase == I2C0_BASE) || (ulBase == I2C1_BASE) ||
            (ulBase == I2C2_BASE) || (ulBase == I2C3_BASE) ||
            (ulBase == I2C4_BASE));
    xHWREG(ulBase + I2C_DAT) = ucData;
    xHWREG(ulBase + I2C_CON) &= ~(I2C_CON_AA | I2C_CON_EI);
    if(bEndTransmition)
    {
        I2CStopSend(ulBase);
    }
}