STM324x9I_EVAL BSP User Manual
|
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 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 played) the output target (speaker or headphone). | |
void | BSP_AUDIO_OUT_SetFrequency (uint32_t AudioFreq) |
Updates the audio frequency. | |
void | BSP_AUDIO_OUT_SetAudioFrameSlot (uint32_t AudioFrameSlot) |
Updates the Audio frame slot configuration. | |
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. | |
__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. | |
uint8_t | BSP_AUDIO_IN_Init (uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr) |
Initializes wave recording. | |
uint8_t | BSP_AUDIO_IN_Record (uint16_t *pbuf, uint32_t size) |
Starts audio recording. | |
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. | |
uint8_t | BSP_AUDIO_IN_SetVolume (uint8_t Volume) |
Controls the audio in volume level. | |
uint8_t | BSP_AUDIO_IN_PDMToPCM (uint16_t *PDMBuf, uint16_t *PCMBuf) |
Converts audio format from PDM to PCM. | |
void | HAL_I2S_RxCpltCallback (I2S_HandleTypeDef *hi2s) |
Rx Transfer completed callbacks. | |
void | HAL_I2S_RxHalfCpltCallback (I2S_HandleTypeDef *hi2s) |
Rx Half Transfer completed callbacks. | |
void | HAL_I2S_ErrorCallback (I2S_HandleTypeDef *hi2s) |
I2S error callbacks. | |
__weak void | BSP_AUDIO_IN_TransferComplete_CallBack (void) |
User callback when record buffer is filled. | |
__weak void | BSP_AUDIO_IN_HalfTransfer_CallBack (void) |
Manages the DMA Half Transfer complete event. | |
__weak void | BSP_AUDIO_IN_Error_Callback (void) |
Audio IN Error callback function. | |
static void | SAIx_Init (uint32_t AudioFreq) |
Initializes the Audio Codec audio interface (SAI). | |
static void | PDMDecoder_Init (uint32_t AudioFreq, uint32_t ChnlNbr) |
Initializes the PDM library. | |
static void | I2Sx_Init (uint32_t AudioFreq) |
Initializes the Audio Codec audio interface (I2S) | |
static void | TIMx_IC_MspInit (TIM_HandleTypeDef *htim) |
Initializes the TIM INput Capture MSP. | |
static void | TIMx_Init (void) |
Configure TIM as a clock divider by 2. |
Function Documentation
__weak void BSP_AUDIO_IN_Error_Callback | ( | void | ) |
Audio IN Error callback function.
Definition at line 870 of file stm324x9i_eval_audio.c.
Referenced by HAL_I2S_ErrorCallback().
__weak void BSP_AUDIO_IN_HalfTransfer_CallBack | ( | void | ) |
Manages the DMA Half Transfer complete event.
Definition at line 860 of file stm324x9i_eval_audio.c.
Referenced by HAL_I2S_RxHalfCpltCallback().
uint8_t BSP_AUDIO_IN_Init | ( | uint32_t | AudioFreq, |
uint32_t | BitRes, | ||
uint32_t | ChnlNbr | ||
) |
Initializes wave recording.
- Note:
- This function assumes that the I2S input clock (through PLL_R in Devices RevA/Z and through dedicated PLLI2S_R in Devices RevB/Y) is already configured and ready to be used.
- Parameters:
-
AudioFreq,: Audio frequency to be configured for the I2S peripheral. BitRes,: Audio frequency to be configured for the I2S peripheral. ChnlNbr,: Audio frequency to be configured for the I2S peripheral.
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 681 of file stm324x9i_eval_audio.c.
References AUDIO_OK, I2Sx_Init(), PDMDecoder_Init(), and TIMx_Init().
uint8_t BSP_AUDIO_IN_Pause | ( | void | ) |
Pauses the audio file stream.
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 747 of file stm324x9i_eval_audio.c.
References AUDIO_OK, and haudio_in_i2s.
uint8_t BSP_AUDIO_IN_PDMToPCM | ( | uint16_t * | PDMBuf, |
uint16_t * | PCMBuf | ||
) |
Converts audio format from PDM to PCM.
- Parameters:
-
PDMBuf,: Pointer to data PDM buffer PCMBuf,: Pointer to data PCM buffer
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 790 of file stm324x9i_eval_audio.c.
References AUDIO_OK, AudioInVolume, Channel_Demux, CHANNEL_DEMUX_MASK, DEFAULT_AUDIO_IN_CHANNEL_NBR, Filter, and INTERNAL_BUFF_SIZE.
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
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 710 of file stm324x9i_eval_audio.c.
References AUDIO_ERROR, AUDIO_OK, and haudio_in_i2s.
uint8_t BSP_AUDIO_IN_Resume | ( | void | ) |
Resumes the audio file stream.
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 760 of file stm324x9i_eval_audio.c.
References AUDIO_OK, and haudio_in_i2s.
uint8_t BSP_AUDIO_IN_SetVolume | ( | uint8_t | Volume | ) |
Controls the audio in 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_OK if correct communication, else wrong communication
Definition at line 775 of file stm324x9i_eval_audio.c.
References AUDIO_OK, and AudioInVolume.
uint8_t BSP_AUDIO_IN_Stop | ( | void | ) |
Stops audio recording.
- Return values:
-
AUDIO_OK if correct communication, else wrong communication
Definition at line 727 of file stm324x9i_eval_audio.c.
References AUDIO_ERROR, AUDIO_OK, AUDIO_TIMx_CLK_DISABLE, and haudio_in_i2s.
__weak void BSP_AUDIO_IN_TransferComplete_CallBack | ( | void | ) |
User callback when record buffer is filled.
Definition at line 850 of file stm324x9i_eval_audio.c.
Referenced by HAL_I2S_RxCpltCallback().
void BSP_AUDIO_OUT_ChangeBuffer | ( | uint16_t * | pData, |
uint16_t | Size | ||
) |
Sends n-Bytes on the SAI interface.
- Parameters:
-
pData,: pointer on data address Size,: number of data to be written
Definition at line 281 of file stm324x9i_eval_audio.c.
References haudio_out_sai.
__weak void BSP_AUDIO_OUT_Error_CallBack | ( | void | ) |
Manages the DMA FIFO error event.
Definition at line 543 of file stm324x9i_eval_audio.c.
Referenced by HAL_SAI_ErrorCallback().
__weak void BSP_AUDIO_OUT_HalfTransfer_CallBack | ( | void | ) |
Manages the DMA Half Transfer complete event.
Definition at line 536 of file stm324x9i_eval_audio.c.
Referenced by HAL_SAI_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_OK if correct communication, else wrong communication
Definition at line 195 of file stm324x9i_eval_audio.c.
References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and SAIx_Init().
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. WARNING: 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_OK if correct communication, else wrong communication
Definition at line 294 of file stm324x9i_eval_audio.c.
References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_out_sai.
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_OK if correct communication, else wrong communication
Definition at line 260 of file stm324x9i_eval_audio.c.
References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, AUDIODATA_SIZE, DMA_MAX, and haudio_out_sai.
uint8_t BSP_AUDIO_OUT_Resume | ( | void | ) |
This function Resumes the audio file stream.
WARNING: 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_OK if correct communication, else wrong communication
Definition at line 318 of file stm324x9i_eval_audio.c.
References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_out_sai.
void BSP_AUDIO_OUT_SetAudioFrameSlot | ( | uint32_t | AudioFrameSlot | ) |
Updates the Audio frame slot configuration.
- Parameters:
-
AudioFrameSlot,: specifies the audio Frame slot This parameter can be any value of CODEC AudioFrame SLOT TDMMode
- Note:
- This API should be called after the BSP_AUDIO_OUT_Init() to adjust the audio frame slot.
Definition at line 482 of file stm324x9i_eval_audio.c.
References haudio_out_sai.
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 433 of file stm324x9i_eval_audio.c.
References haudio_out_sai.
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_OK if correct communication, else wrong communication
Definition at line 392 of file stm324x9i_eval_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_OK if correct communication, else wrong communication
Definition at line 413 of file stm324x9i_eval_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_OK if correct communication, else wrong communication
Definition at line 372 of file stm324x9i_eval_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_OK if correct communication, else wrong communication
Definition at line 344 of file stm324x9i_eval_audio.c.
References audio_drv, AUDIO_ERROR, AUDIO_I2C_ADDRESS, AUDIO_OK, and haudio_out_sai.
__weak void BSP_AUDIO_OUT_TransferComplete_CallBack | ( | void | ) |
Manages the DMA full Transfer complete event.
Definition at line 529 of file stm324x9i_eval_audio.c.
Referenced by HAL_SAI_TxCpltCallback().
void HAL_I2S_ErrorCallback | ( | I2S_HandleTypeDef * | hi2s | ) |
I2S error callbacks.
- Parameters:
-
hi2s,: I2S handle
Definition at line 840 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_IN_Error_Callback().
void HAL_I2S_RxCpltCallback | ( | I2S_HandleTypeDef * | hi2s | ) |
Rx Transfer completed callbacks.
- Parameters:
-
hi2s,: I2S handle
Definition at line 819 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_IN_TransferComplete_CallBack().
void HAL_I2S_RxHalfCpltCallback | ( | I2S_HandleTypeDef * | hi2s | ) |
Rx Half Transfer completed callbacks.
- Parameters:
-
hi2s,: I2S handle
Definition at line 829 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_IN_HalfTransfer_CallBack().
void HAL_SAI_ErrorCallback | ( | SAI_HandleTypeDef * | hsai | ) |
SAI error callbacks.
- Parameters:
-
hsai,: SAI handle
Definition at line 521 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_OUT_Error_CallBack().
void HAL_SAI_TxCpltCallback | ( | SAI_HandleTypeDef * | hsai | ) |
Tx Transfer completed callbacks.
- Parameters:
-
hsai,: SAI handle
Definition at line 499 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_OUT_TransferComplete_CallBack().
void HAL_SAI_TxHalfCpltCallback | ( | SAI_HandleTypeDef * | hsai | ) |
Tx Half Transfer completed callbacks.
- Parameters:
-
hsai,: SAI handle
Definition at line 510 of file stm324x9i_eval_audio.c.
References BSP_AUDIO_OUT_HalfTransfer_CallBack().
static void I2Sx_Init | ( | uint32_t | AudioFreq | ) | [static] |
Initializes the Audio Codec audio interface (I2S)
- Note:
- This function assumes that the I2S input clock (through PLL_R in Devices RevA/Z and through dedicated PLLI2S_R in Devices RevB/Y) is already configured and ready to be used.
- Parameters:
-
AudioFreq,: Audio frequency to be configured for the I2S peripheral.
Definition at line 974 of file stm324x9i_eval_audio.c.
References AUDIO_I2Sx, haudio_in_i2s, and I2Sx_MspInit().
Referenced by BSP_AUDIO_IN_Init().
static void PDMDecoder_Init | ( | uint32_t | AudioFreq, |
uint32_t | ChnlNbr | ||
) | [static] |
Initializes the PDM library.
- Parameters:
-
AudioFreq,: Audio sampling frequency ChnlNbr,: Number of audio channels (1: mono; 2: stereo)
Definition at line 885 of file stm324x9i_eval_audio.c.
References Filter.
Referenced by BSP_AUDIO_IN_Init().
static void SAIx_Init | ( | uint32_t | AudioFreq | ) | [static] |
Initializes the Audio Codec audio interface (SAI).
- Parameters:
-
AudioFreq,: Audio frequency to be configured for the SAI peripheral.
- Note:
- The default SlotActive configuration is set to CODEC_AUDIOFRAME_SLOT_0123 and user can update this configuration using
Definition at line 616 of file stm324x9i_eval_audio.c.
References AUDIO_SAIx, CODEC_AUDIOFRAME_SLOT_0123, haudio_out_sai, and SAIx_MspInit().
Referenced by BSP_AUDIO_OUT_Init().
static void TIMx_IC_MspInit | ( | TIM_HandleTypeDef * | htim | ) | [static] |
Initializes the TIM INput Capture MSP.
- Parameters:
-
htim,: TIM handle
Definition at line 1004 of file stm324x9i_eval_audio.c.
References AUDIO_TIMx_AF, AUDIO_TIMx_CLK_ENABLE, AUDIO_TIMx_GPIO, AUDIO_TIMx_GPIO_CLK_ENABLE, AUDIO_TIMx_IN_GPIO_PIN, and AUDIO_TIMx_OUT_GPIO_PIN.
Referenced by TIMx_Init().
static void TIMx_Init | ( | void | ) | [static] |
Configure TIM as a clock divider by 2.
I2S_SCK is externally connected to TIMx input channel
Definition at line 1035 of file stm324x9i_eval_audio.c.
References AUDIO_TIMx, AUDIO_TIMx_IN_CHANNEL, AUDIO_TIMx_OUT_CHANNEL, haudio_tim, and TIMx_IC_MspInit().
Referenced by BSP_AUDIO_IN_Init().
Generated on Wed Jan 13 2016 15:52:54 for STM324x9I_EVAL BSP User Manual by 1.7.6.1