/* param base SAI base pointer param handle SAI handle pointer. param callback Pointer to the user callback function. param userData User parameter passed to the callback function  */
void SAI_TransferTxCreateHandle(I2S_Type *base, sai_handle_t *handle, sai_transfer_callback_t callback, void *userData)
/* param base SAI base pointer param handle SAI handle pointer. param callback Pointer to the user callback function. param userData User parameter passed to the callback function  */
void SAI_TransferTxCreateHandle(I2S_Type *base, sai_handle_t *handle, sai_transfer_callback_t callback, void *userData)
{
    assert(handle != NULL);
    (void)memset(handle, 0, sizeof(*handle));
    s_saiHandle[SAI_GetInstance(base)][0] = handle;
    handle->callback = callback;
    handle->userData = userData;
    handle->base     = base;
    s_saiTxIsr = SAI_TransferTxHandleIRQ;
    (void)EnableIRQ(s_saiTxIRQ[SAI_GetInstance(base)]);
}