i2s_pal.h File Reference
#include "i2s_pal_mapping.h"
#include "status.h"
#include "callbacks.h"

Go to the source code of this file.

Data Structures

struct  i2s_user_config_t
 I2S user configuration structure. More...
 

Enumerations

enum  i2s_transfer_type_t { I2S_USING_INTERRUPT = 0U, I2S_USING_DMA = 1U }
 Defines the transfer type. More...
 
enum  i2s_mode_t { I2S_MASTER = 0U, I2S_SLAVE = 1U }
 Master or slave. More...
 

Functions

status_t I2S_Init (const i2s_instance_t *instance, const i2s_user_config_t *config)
 Initializes the I2S module. More...
 
status_t I2S_Deinit (const i2s_instance_t *instance)
 De-initializes the I2S module. More...
 
status_t I2S_GetBaudRate (const i2s_instance_t *instance, uint32_t *configuredBaudRate)
 Returns the i2s baud rate. More...
 
status_t I2S_SetTxBuffer (const i2s_instance_t *instance, const uint8_t *txBuff, uint32_t txSize)
 Keep sending. More...
 
status_t I2S_SetRxBuffer (const i2s_instance_t *instance, uint8_t *rxBuff, uint32_t rxSize)
 Keep receiving. More...
 
status_t I2S_SendDataBlocking (const i2s_instance_t *instance, const uint8_t *txBuff, uint32_t txSize, uint32_t timeout)
 Perform a blocking I2S transmission. More...
 
status_t I2S_SendData (const i2s_instance_t *instance, const uint8_t *txBuff, uint32_t txSize)
 Perform a non-blocking I2S transmission. More...
 
status_t I2S_GetStatus (const i2s_instance_t *instance, uint32_t *countRemaining)
 Get the status of the current I2S transfer. More...
 
status_t I2S_ReceiveDataBlocking (const i2s_instance_t *instance, uint8_t *rxBuff, uint32_t rxSize, uint32_t timeout)
 Perform a blocking I2S reception. More...
 
status_t I2S_ReceiveData (const i2s_instance_t *instance, uint8_t *rxBuff, uint32_t rxSize)
 Perform a non-blocking I2S reception. More...
 
status_t I2S_Abort (const i2s_instance_t *instance)
 Terminates a non-blocking transfer early. More...