STM32412G-Discovery BSP User Manual: STM32412G Discovery Audio Out Private Functions

STM32412G-Discovery BSP Drivers

STM32412G-Discovery BSP User Manual
STM32412G Discovery Audio Out Private Functions

Functions

uint8_t BSP_AUDIO_OUT_Init (uint16_t OutputDevice, uint8_t Volume, uint32_t AudioFreq)
 Configures the audio peripherals.
uint8_t BSP_AUDIO_OUT_Play (uint16_t *pBuffer, uint32_t Size)
 Starts playing audio stream from a data buffer for a determined size.
void BSP_AUDIO_OUT_ChangeBuffer (uint16_t *pData, uint16_t Size)
 Sends n-Bytes on the I2S interface.
uint8_t BSP_AUDIO_OUT_Pause (void)
 This function Pauses the audio file stream.
uint8_t BSP_AUDIO_OUT_Resume (void)
 This function Resumes the audio file stream.
uint8_t BSP_AUDIO_OUT_Stop (uint32_t Option)
 Stops audio playing and Power down the Audio Codec.
uint8_t BSP_AUDIO_OUT_SetVolume (uint8_t Volume)
 Controls the current audio volume level.
uint8_t BSP_AUDIO_OUT_SetMute (uint32_t Cmd)
 Enables or disables the MUTE mode by software.
uint8_t BSP_AUDIO_OUT_SetOutputMode (uint8_t Output)
 Switch dynamically (while audio file is played) the output target (speaker or headphone).
void BSP_AUDIO_OUT_SetFrequency (uint32_t AudioFreq)
 Updates the audio frequency.
void BSP_AUDIO_OUT_DeInit (void)
 Deinit the audio peripherals.
void HAL_I2S_TxCpltCallback (I2S_HandleTypeDef *hi2s)
 Tx Transfer completed callbacks.
void HAL_I2S_TxHalfCpltCallback (I2S_HandleTypeDef *hi2s)
 Tx Half Transfer completed callbacks.
void HAL_I2S_ErrorCallback (I2S_HandleTypeDef *hi2s)
 I2S error callbacks.
__weak void BSP_AUDIO_OUT_TransferComplete_CallBack (void)
 Manages the DMA full Transfer complete event.
__weak void BSP_AUDIO_OUT_HalfTransfer_CallBack (void)
 Manages the DMA Half Transfer complete event.
__weak void BSP_AUDIO_OUT_Error_CallBack (void)
 Manages the DMA FIFO error event.
__weak void BSP_AUDIO_OUT_MspInit (I2S_HandleTypeDef *hi2s, void *Params)
 Initializes BSP_AUDIO_OUT MSP.
__weak void BSP_AUDIO_OUT_MspDeInit (I2S_HandleTypeDef *hi2s, void *Params)
 Deinitializes I2S MSP.
__weak void BSP_AUDIO_OUT_ClockConfig (I2S_HandleTypeDef *hi2s, uint32_t AudioFreq, void *Params)
 Clock Config.
static void I2Sx_Out_Init (uint32_t AudioFreq)
 Initializes the Audio Codec audio interface (I2S)

Function Documentation

void BSP_AUDIO_OUT_ChangeBuffer ( uint16_t *  pData,
uint16_t  Size 
)

Sends n-Bytes on the I2S interface.

Parameters:
pData,:pointer on data address
Size,:number of data to be written

Definition at line 318 of file stm32412g_discovery_audio.c.

References haudio_i2s.

__weak void BSP_AUDIO_OUT_ClockConfig ( I2S_HandleTypeDef *  hi2s,
uint32_t  AudioFreq,
void *  Params 
)

Clock Config.

Parameters:
hi2s,:might be required to set audio peripheral predivider if any.
AudioFreq,:Audio frequency used to play the audio stream.
Params: pointer on additional configuration parameters, can be NULL.
Note:
This API is called by BSP_AUDIO_OUT_Init() and BSP_AUDIO_OUT_SetFrequency() Being __weak it can be overwritten by the application

Definition at line 678 of file stm32412g_discovery_audio.c.

Referenced by BSP_AUDIO_OUT_Init(), and BSP_AUDIO_OUT_SetFrequency().

void BSP_AUDIO_OUT_DeInit ( void  )

Deinit the audio peripherals.

Definition at line 491 of file stm32412g_discovery_audio.c.

References BSP_AUDIO_OUT_MspDeInit(), haudio_i2s, and I2Sx_Out_DeInit().

__weak void BSP_AUDIO_OUT_Error_CallBack ( void  )

Manages the DMA FIFO error event.

Definition at line 546 of file stm32412g_discovery_audio.c.

Referenced by HAL_I2S_ErrorCallback().

__weak void BSP_AUDIO_OUT_HalfTransfer_CallBack ( void  )

Manages the DMA Half Transfer complete event.

Definition at line 539 of file stm32412g_discovery_audio.c.

Referenced by HAL_I2S_TxHalfCpltCallback().

uint8_t BSP_AUDIO_OUT_Init ( uint16_t  OutputDevice,
uint8_t  Volume,
uint32_t  AudioFreq 
)

Configures the audio peripherals.

Parameters:
OutputDevice,:OUTPUT_DEVICE_SPEAKER, OUTPUT_DEVICE_HEADPHONE, or OUTPUT_DEVICE_BOTH.
Volume,:Initial volume level (from 0 (Mute) to 100 (Max))
AudioFreq,:Audio frequency used to play the audio stream.
Note:
The I2S PLL input clock must be done in the user application.
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 238 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_IO_DeInit(), AUDIO_IO_Init(), AUDIO_OK, AUDIO_OUT_I2Sx, BSP_AUDIO_OUT_ClockConfig(), BSP_AUDIO_OUT_MspInit(), haudio_i2s, I2Sx_Out_DeInit(), and I2Sx_Out_Init().

__weak void BSP_AUDIO_OUT_MspDeInit ( I2S_HandleTypeDef *  hi2s,
void *  Params 
)
uint8_t BSP_AUDIO_OUT_Pause ( void  )

This function Pauses the audio file stream.

In case of using DMA, the DMA Pause feature is used.

Note:
When calling BSP_AUDIO_OUT_Pause() function for pause, only BSP_AUDIO_OUT_Resume() function should be called for resume (use of BSP_AUDIO_OUT_Play() function for resume could lead to unexpected behavior).
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 331 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_i2s.

uint8_t BSP_AUDIO_OUT_Play ( uint16_t *  pBuffer,
uint32_t  Size 
)

Starts playing audio stream from a data buffer for a determined size.

Parameters:
pBuffer,:Pointer to the buffer
Size,:Number of audio data BYTES.
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 297 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIODATA_SIZE, DMA_MAX, and haudio_i2s.

uint8_t BSP_AUDIO_OUT_Resume ( void  )

This function Resumes the audio file stream.

Note:
When calling BSP_AUDIO_OUT_Pause() function for pause, only BSP_AUDIO_OUT_Resume() function should be called for resume (use of BSP_AUDIO_OUT_Play() function for resume could lead to unexpected behavior).
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 355 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_i2s.

void BSP_AUDIO_OUT_SetFrequency ( uint32_t  AudioFreq)

Updates the audio frequency.

Parameters:
AudioFreq,:Audio frequency used to play the audio stream.
Note:
This API should be called after the BSP_AUDIO_OUT_Init() to adjust the audio frequency.

Definition at line 472 of file stm32412g_discovery_audio.c.

References BSP_AUDIO_OUT_ClockConfig(), and haudio_i2s.

uint8_t BSP_AUDIO_OUT_SetMute ( uint32_t  Cmd)

Enables or disables the MUTE mode by software.

Parameters:
Cmd,:Could be AUDIO_MUTE_ON to mute sound or AUDIO_MUTE_OFF to unmute the codec and restore previous volume level.
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 431 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, and AUDIO_OK.

uint8_t BSP_AUDIO_OUT_SetOutputMode ( uint8_t  Output)

Switch dynamically (while audio file is played) the output target (speaker or headphone).

Parameters:
Output,:The audio output target: OUTPUT_DEVICE_SPEAKER, OUTPUT_DEVICE_HEADPHONE or OUTPUT_DEVICE_BOTH
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 452 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, and AUDIO_OK.

uint8_t BSP_AUDIO_OUT_SetVolume ( uint8_t  Volume)

Controls the current audio volume level.

Parameters:
Volume,:Volume level to be set in percentage from 0% to 100% (0 for Mute and 100 for Max volume level).
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 411 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, and AUDIO_OK.

uint8_t BSP_AUDIO_OUT_Stop ( uint32_t  Option)

Stops audio playing and Power down the Audio Codec.

Parameters:
Option,:could be one of the following parameters
  • CODEC_PDWN_SW: for software power off (by writing registers). Then no need to reconfigure the Codec after power on.
  • CODEC_PDWN_HW: completely shut down the codec (physically). Then need to reconfigure the Codec after power on.
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 383 of file stm32412g_discovery_audio.c.

References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_i2s.

Manages the DMA full Transfer complete event.

Definition at line 532 of file stm32412g_discovery_audio.c.

Referenced by HAL_I2S_TxCpltCallback().

void HAL_I2S_ErrorCallback ( I2S_HandleTypeDef *  hi2s)

I2S error callbacks.

Parameters:
hi2s,:I2S handle

Definition at line 524 of file stm32412g_discovery_audio.c.

References BSP_AUDIO_OUT_Error_CallBack().

void HAL_I2S_TxCpltCallback ( I2S_HandleTypeDef *  hi2s)

Tx Transfer completed callbacks.

Parameters:
hi2s,:I2S handle

Definition at line 502 of file stm32412g_discovery_audio.c.

References BSP_AUDIO_OUT_TransferComplete_CallBack().

void HAL_I2S_TxHalfCpltCallback ( I2S_HandleTypeDef *  hi2s)

Tx Half Transfer completed callbacks.

Parameters:
hi2s,:I2S handle

Definition at line 513 of file stm32412g_discovery_audio.c.

References BSP_AUDIO_OUT_HalfTransfer_CallBack().

static void I2Sx_Out_Init ( uint32_t  AudioFreq) [static]

Initializes the Audio Codec audio interface (I2S)

Note:
This function assumes that the I2S input clock is already configured and ready to be used.
Parameters:
AudioFreq,:Audio frequency to be configured for the I2S peripheral.

Definition at line 736 of file stm32412g_discovery_audio.c.

References AUDIO_OUT_I2Sx, and haudio_i2s.

Referenced by BSP_AUDIO_OUT_Init().

Generated on Tue Jan 24 2017 11:28:05 for STM32412G-Discovery BSP User Manual by   doxygen 1.7.6.1