STM32L4R9I-Discovery BSP User Manual: Exported Functions

STM32L4R9I-Discovery BSP

STM32L4R9I-Discovery BSP User Manual

Functions

uint8_t BSP_AUDIO_OUT_Init (uint16_t OutputDevice, uint8_t Volume, uint32_t AudioFreq)
 Configures the audio codec related peripherals.
uint8_t BSP_AUDIO_OUT_DeInit (void)
 De-Initializes audio codec related peripherals.
uint8_t BSP_AUDIO_OUT_Play (uint16_t *pData, uint32_t Size)
 Starts playing audio stream from a data buffer for a determined size.
uint8_t BSP_AUDIO_OUT_ChangeBuffer (uint16_t *pData, uint16_t Size)
 Sends n-Bytes on the SAI 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 being played) the output target (speaker or headphone).
uint8_t BSP_AUDIO_OUT_SetFrequency (uint32_t AudioFreq)
 Updates the audio frequency.
void BSP_AUDIO_OUT_ChangeAudioConfig (uint32_t AudioOutOption)
 Changes the Audio Out Configuration.
void BSP_AUDIO_OUT_RegisterCallbacks (Audio_CallbackTypeDef ErrorCallback, Audio_CallbackTypeDef HalfTransferCallback, Audio_CallbackTypeDef TransferCompleteCallback)
 register user callback functions
void HAL_SAI_TxCpltCallback (SAI_HandleTypeDef *hsai)
 Tx Transfer completed callbacks.
void HAL_SAI_TxHalfCpltCallback (SAI_HandleTypeDef *hsai)
 Tx Half Transfer completed callbacks.
void HAL_SAI_ErrorCallback (SAI_HandleTypeDef *hsai)
 SAI error callbacks.
uint8_t BSP_AUDIO_IN_Init (uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr)
 Initializes micropone related peripherals.
uint8_t BSP_AUDIO_IN_InitEx (uint16_t InputDevice, uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr)
 Initialize wave recording.
uint8_t BSP_AUDIO_IN_DeInit (void)
 De-Initializes microphone related peripherals.
uint8_t BSP_AUDIO_IN_Record (uint16_t *pbuf, uint32_t size)
 Starts audio recording.
uint8_t BSP_AUDIO_IN_SetFrequency (uint32_t AudioFreq)
 Updates the audio frequency.
void HAL_DFSDM_FilterRegConvCpltCallback (DFSDM_Filter_HandleTypeDef *hdfsdm_filter)
 Regular conversion complete callback.
void HAL_DFSDM_FilterRegConvHalfCpltCallback (DFSDM_Filter_HandleTypeDef *hdfsdm_filter)
 Half regular conversion complete callback.
void HAL_DFSDM_FilterErrorCallback (DFSDM_Filter_HandleTypeDef *hdfsdm_filter)
 Error callback.
void HAL_SAI_RxCpltCallback (SAI_HandleTypeDef *hsai)
 SAI Rx Transfer completed callbacks.
void HAL_SAI_RxHalfCpltCallback (SAI_HandleTypeDef *hsai)
 SAI Rx Half Transfer completed callbacks.
uint8_t BSP_AUDIO_IN_Stop (void)
 Stops audio recording.
uint8_t BSP_AUDIO_IN_Pause (void)
 Pauses the audio file stream.
uint8_t BSP_AUDIO_IN_Resume (void)
 Resumes the audio file stream.
void BSP_AUDIO_IN_RegisterCallbacks (Audio_CallbackTypeDef ErrorCallback, Audio_CallbackTypeDef HalfTransferCallback, Audio_CallbackTypeDef TransferCompleteCallback)
 register user callback functions

Function Documentation

uint8_t BSP_AUDIO_IN_Init ( uint32_t  AudioFreq,
uint32_t  BitRes,
uint32_t  ChnlNbr 
)

Initializes micropone related peripherals.

Note:
This function assumes that the SAI input clock (through PLL_M) is already configured and ready to be used.
Parameters:
AudioFreq,:Audio frequency to be configured for the SAI peripheral.
BitRes,:Audio frequency to be configured for the SAI peripheral.
ChnlNbr,:Audio frequency to be configured for the SAI peripheral.
Return values:
BSPAUDIO status

Definition at line 775 of file stm32l4r9i_discovery_audio.c.

References BSP_AUDIO_IN_InitEx(), and INPUT_DEVICE_DIGITAL_MIC.

uint8_t BSP_AUDIO_IN_InitEx ( uint16_t  InputDevice,
uint32_t  AudioFreq,
uint32_t  BitRes,
uint32_t  ChnlNbr 
)

Initialize wave recording.

Parameters:
InputDevice,:INPUT_DEVICE_DIGITAL_MIC, INPUT_DEVICE_DIGITAL_MIC1, INPUT_DEVICE_DIGITAL_MIC2 or INPUT_DEVICE_ANALOG_MIC.
AudioFreq,:Audio frequency to be configured.
BitRes,:Audio bit resolution to be configured..
ChnlNbr,:Number of channel to be configured.
Return values:
AUDIO_OKif correct communication, else wrong communication

Definition at line 789 of file stm32l4r9i_discovery_audio.c.

References AUDIO_DFSDMx_Init(), AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_SAIPLLConfig(), AUDIO_SAIx_Init(), AUDIO_IN_TypeDef::AudioDrv, AUDIO_IN_TypeDef::BitResolution, AUDIO_IN_TypeDef::CbError, AUDIO_IN_TypeDef::CbHalfTransfer, AUDIO_IN_TypeDef::CbTransferComplete, AUDIO_IN_TypeDef::ChannelNbr, DmaLeftRecBuffCplt, DmaLeftRecHalfBuffCplt, DmaRightRecBuffCplt, DmaRightRecHalfBuffCplt, AUDIO_OUT_TypeDef::Frequency, AUDIO_IN_TypeDef::Frequency, INPUT_DEVICE_ANALOG_MIC, INPUT_DEVICE_DIGITAL_MIC, INPUT_DEVICE_DIGITAL_MIC1, INPUT_DEVICE_DIGITAL_MIC2, AUDIO_IN_TypeDef::InputDevice, AUDIO_OUT_TypeDef::OutputDevice, and AUDIO_OUT_TypeDef::Volume.

Referenced by BSP_AUDIO_IN_Init().

uint8_t BSP_AUDIO_IN_Record ( uint16_t *  pbuf,
uint32_t  size 
)

Starts audio recording.

Parameters:
pbuf,:Main buffer pointer for the recorded data storing
size,:Current size of the recorded buffer
Note:
The Right channel is start at first with synchro on start of Left channel
Return values:
BSPAUDIO status

Definition at line 933 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_IN_TypeDef::AudioDrv, BSP_AUDIO_hDfsdmLeftFilter, BSP_AUDIO_hDfsdmRightFilter, BSP_AUDIO_hSai_Rx, AUDIO_IN_TypeDef::ChannelNbr, INPUT_DEVICE_ANALOG_MIC, INPUT_DEVICE_DIGITAL_MIC1, INPUT_DEVICE_DIGITAL_MIC2, AUDIO_IN_TypeDef::InputDevice, AUDIO_IN_TypeDef::LeftRecBuff, AUDIO_IN_TypeDef::pRecBuf, AUDIO_IN_TypeDef::RecSize, and AUDIO_IN_TypeDef::RightRecBuff.

void BSP_AUDIO_IN_RegisterCallbacks ( Audio_CallbackTypeDef  ErrorCallback,
Audio_CallbackTypeDef  HalfTransferCallback,
Audio_CallbackTypeDef  TransferCompleteCallback 
)

register user callback functions

Parameters:
ErrorCallback,:pointer to the error callback function
HalfTransferCallback,:pointer to the half transfer callback function
TransferCompleteCallback,:pointer to the transfer complete callback function
Return values:
None

Definition at line 1382 of file stm32l4r9i_discovery_audio.c.

References AUDIO_IN_TypeDef::CbError, AUDIO_IN_TypeDef::CbHalfTransfer, and AUDIO_IN_TypeDef::CbTransferComplete.

uint8_t BSP_AUDIO_IN_SetFrequency ( uint32_t  AudioFreq)

Updates the audio frequency.

Parameters:
AudioFreq,:Audio frequency used to record the audio stream.
Note:
This API should be called after the BSP_AUDIO_IN_Init() to adjust the audio frequency.
Return values:
BSPAUDIO status

Definition at line 1016 of file stm32l4r9i_discovery_audio.c.

References AUDIO_DFSDMx_DeInit(), AUDIO_DFSDMx_Init(), AUDIO_ERROR, AUDIO_OK, AUDIO_SAIPLLConfig(), BSP_AUDIO_hSai_Rx, BSP_AUDIO_hSai_Tx, AUDIO_IN_TypeDef::Frequency, INPUT_DEVICE_ANALOG_MIC, AUDIO_IN_TypeDef::InputDevice, and SAIClockDivider.

void BSP_AUDIO_OUT_ChangeAudioConfig ( uint32_t  AudioOutOption)

Changes the Audio Out Configuration.

Parameters:
AudioOutOption,:specifies the audio out new configuration This parameter can be any value of BSP Audio Out Option
Note:
This API should be called after the BSP_AUDIO_OUT_Init() to adjust the audio out configuration.
Return values:
None

Definition at line 636 of file stm32l4r9i_discovery_audio.c.

References BSP_AUDIO_hSai_Tx, BSP_AUDIO_OUT_CIRCULARMODE, and BSP_AUDIO_OUT_STEREOMODE.

uint8_t BSP_AUDIO_OUT_ChangeBuffer ( uint16_t *  pData,
uint16_t  Size 
)

Sends n-Bytes on the SAI interface.

Parameters:
pData,:pointer on PCM samples buffer
Size,:number of data to be written
Return values:
BSPAUDIO status

Definition at line 439 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_OK, and BSP_AUDIO_hSai_Tx.

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

Configures the audio codec related peripherals.

Parameters:
OutputDevice,:OUTPUT_DEVICE_HEADPHONE.
Volume,:Initial volume level (from 0 (Mute) to 100 (Max))
AudioFreq,:Audio frequency used to play the audio stream.
Return values:
BSPAUDIO status
Note:
The SAI PLL input clock must be configure in the user application. The SAI PLL configuration done within this function assumes that the SAI PLL input clock runs at 8 MHz.

Definition at line 310 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_SAIPLLConfig(), AUDIO_SAIx_Init(), AUDIO_OUT_TypeDef::AudioDrv, AUDIO_OUT_TypeDef::CbError, AUDIO_OUT_TypeDef::CbHalfTransfer, AUDIO_OUT_TypeDef::CbTransferComplete, AUDIO_OUT_TypeDef::Frequency, AUDIO_IN_TypeDef::Frequency, INPUT_DEVICE_ANALOG_MIC, AUDIO_IN_TypeDef::InputDevice, AUDIO_OUT_TypeDef::OutputDevice, and AUDIO_OUT_TypeDef::Volume.

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:
BSPAUDIO status

Definition at line 459 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_OUT_TypeDef::AudioDrv, and BSP_AUDIO_hSai_Tx.

uint8_t BSP_AUDIO_OUT_Play ( uint16_t *  pData,
uint32_t  Size 
)

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

Parameters:
pData,:pointer on PCM samples buffer
Size,:Number of audio data HALF WORD.
Return values:
BSPAUDIO status

Definition at line 416 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_OUT_TypeDef::AudioDrv, BSP_AUDIO_hSai_Tx, and DMA_MAX.

void BSP_AUDIO_OUT_RegisterCallbacks ( Audio_CallbackTypeDef  ErrorCallback,
Audio_CallbackTypeDef  HalfTransferCallback,
Audio_CallbackTypeDef  TransferCompleteCallback 
)

register user callback functions

Parameters:
ErrorCallback,:pointer to the error callback function
HalfTransferCallback,:pointer to the half transfer callback function
TransferCompleteCallback,:pointer to the transfer complete callback function
Return values:
None

Definition at line 702 of file stm32l4r9i_discovery_audio.c.

References AUDIO_OUT_TypeDef::CbError, AUDIO_OUT_TypeDef::CbHalfTransfer, and AUDIO_OUT_TypeDef::CbTransferComplete.

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:
BSPAUDIO status

Definition at line 484 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_OUT_TypeDef::AudioDrv, and BSP_AUDIO_hSai_Tx.

uint8_t BSP_AUDIO_OUT_SetFrequency ( uint32_t  AudioFreq)

Updates the audio frequency.

Parameters:
AudioFreq,:Audio frequency used to play the audio stream.
Note:
The SAI PLL input clock must be configure in the user application. The SAI PLL configuration done within this function assumes that the SAI PLL input clock runs at 8 MHz.
Return values:
BSPAUDIO status

Definition at line 595 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_OK, AUDIO_SAIPLLConfig(), BSP_AUDIO_hSai_Rx, BSP_AUDIO_hSai_Tx, AUDIO_OUT_TypeDef::Frequency, and SAIClockDivider.

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:
BSPAUDIO status

Definition at line 558 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and AUDIO_OUT_TypeDef::AudioDrv.

uint8_t BSP_AUDIO_OUT_SetOutputMode ( uint8_t  Output)

Switch dynamically (while audio file is being 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:
BSPAUDIO status

Definition at line 576 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and AUDIO_OUT_TypeDef::AudioDrv.

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:
BSPAUDIO status

Definition at line 539 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_OUT_TypeDef::AudioDrv, and AUDIO_OUT_TypeDef::Volume.

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:
BSPAUDIO status

Definition at line 510 of file stm32l4r9i_discovery_audio.c.

References AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIO_OUT_TypeDef::AudioDrv, and BSP_AUDIO_hSai_Tx.

void HAL_DFSDM_FilterErrorCallback ( DFSDM_Filter_HandleTypeDef *  hdfsdm_filter)

Error callback.

Parameters:
hdfsdm_filter: DFSDM filter handle.
Return values:
None

Definition at line 1194 of file stm32l4r9i_discovery_audio.c.

References AUDIO_IN_TypeDef::CbError.

void HAL_DFSDM_FilterRegConvCpltCallback ( DFSDM_Filter_HandleTypeDef *  hdfsdm_filter)

Regular conversion complete callback.

Note:
In interrupt mode, user has to read conversion value in this function using HAL_DFSDM_FilterGetRegularValue.
Parameters:
hdfsdm_filter: DFSDM filter handle.
Return values:
None

Definition at line 1073 of file stm32l4r9i_discovery_audio.c.

References BSP_AUDIO_hDfsdmLeftFilter, BSP_ErrorHandler(), AUDIO_IN_TypeDef::CbTransferComplete, AUDIO_IN_TypeDef::ChannelNbr, DmaLeftRecBuffCplt, DmaRightRecBuffCplt, INPUT_DEVICE_DIGITAL_MIC, INPUT_DEVICE_DIGITAL_MIC1, INPUT_DEVICE_DIGITAL_MIC2, AUDIO_IN_TypeDef::InputDevice, AUDIO_IN_TypeDef::LeftRecBuff, AUDIO_IN_TypeDef::pRecBuf, AUDIO_IN_TypeDef::RecSize, AUDIO_IN_TypeDef::RightRecBuff, and SaturaLH.

void HAL_SAI_ErrorCallback ( SAI_HandleTypeDef *  hsai)

SAI error callbacks.

Parameters:
hsai,:SAI handle
Return values:
None

Definition at line 744 of file stm32l4r9i_discovery_audio.c.

References AUDIO_OUT_TypeDef::CbError, and AUDIO_IN_TypeDef::CbError.

void HAL_SAI_RxCpltCallback ( SAI_HandleTypeDef *  hsai)

SAI Rx Transfer completed callbacks.

Parameters:
hsai,:SAI handle
Return values:
None

Definition at line 1208 of file stm32l4r9i_discovery_audio.c.

References AUDIO_IN_TypeDef::CbTransferComplete.

void HAL_SAI_RxHalfCpltCallback ( SAI_HandleTypeDef *  hsai)

SAI Rx Half Transfer completed callbacks.

Parameters:
hsai,:SAI handle
Return values:
None

Definition at line 1222 of file stm32l4r9i_discovery_audio.c.

References AUDIO_IN_TypeDef::CbHalfTransfer.

void HAL_SAI_TxCpltCallback ( SAI_HandleTypeDef *  hsai)

Tx Transfer completed callbacks.

Parameters:
hsai,:SAI handle
Return values:
None

Definition at line 716 of file stm32l4r9i_discovery_audio.c.

References AUDIO_OUT_TypeDef::CbTransferComplete.

void HAL_SAI_TxHalfCpltCallback ( SAI_HandleTypeDef *  hsai)

Tx Half Transfer completed callbacks.

Parameters:
hsai,:SAI handle
Return values:
None

Definition at line 730 of file stm32l4r9i_discovery_audio.c.

References AUDIO_OUT_TypeDef::CbHalfTransfer.

Generated on Fri Oct 13 2017 02:37:42 for STM32L4R9I-Discovery BSP User Manual by   doxygen 1.7.6.1