Hi,
the setting looks normal and code is almost right. If using non-blocking function you should check for transfer finish, before other Send/Receive is called. Non-blocking operations will initiate the transfer and return STATUS_SUCCESS, but the module is still busy with the transfer and another transfer can't be initiated until the current transfer is complete. The application can check the status of the current transfer by calling LPI2C_DRV_MasterGetTransferStatus().
Or use blocking function instead.
BR, Petr