STM32F769I-Discovery BSP User Manual
|
This file contains the common defines and functions prototypes for the stm32f769i_discovery_audio.c driver. More...
Go to the source code of this file.
Defines | |
#define | BSP_AUDIO_FREQUENCY_96K SAI_AUDIO_FREQUENCY_96K |
#define | BSP_AUDIO_FREQUENCY_48K SAI_AUDIO_FREQUENCY_48K |
#define | BSP_AUDIO_FREQUENCY_44K SAI_AUDIO_FREQUENCY_44K |
#define | BSP_AUDIO_FREQUENCY_32K SAI_AUDIO_FREQUENCY_32K |
#define | BSP_AUDIO_FREQUENCY_22K SAI_AUDIO_FREQUENCY_22K |
#define | BSP_AUDIO_FREQUENCY_16K SAI_AUDIO_FREQUENCY_16K |
#define | BSP_AUDIO_FREQUENCY_11K SAI_AUDIO_FREQUENCY_11K |
#define | BSP_AUDIO_FREQUENCY_8K SAI_AUDIO_FREQUENCY_8K |
#define | CODEC_AUDIOFRAME_SLOT_0123 SAI_SLOTACTIVE_0 | SAI_SLOTACTIVE_1 | SAI_SLOTACTIVE_2 | SAI_SLOTACTIVE_3 |
CODEC_AudioFrame_SLOT_TDMMode In W8994 codec the Audio frame contains 4 slots : TDM Mode TDM format : +------------------|------------------|--------------------|-------------------+ | CODEC_SLOT0 Left | CODEC_SLOT1 Left | CODEC_SLOT0 Right | CODEC_SLOT1 Right | +------------------------------------------------------------------------------+. | |
#define | CODEC_AUDIOFRAME_SLOT_02 SAI_SLOTACTIVE_0 | SAI_SLOTACTIVE_2 |
#define | CODEC_AUDIOFRAME_SLOT_13 SAI_SLOTACTIVE_1 | SAI_SLOTACTIVE_3 |
#define | AUDIO_OUT_SAIx SAI1_Block_A |
#define | AUDIO_OUT_SAIx_CLK_ENABLE() __HAL_RCC_SAI1_CLK_ENABLE() |
#define | AUDIO_OUT_SAIx_CLK_DISABLE() __HAL_RCC_SAI1_CLK_DISABLE() |
#define | AUDIO_OUT_SAIx_AF GPIO_AF6_SAI1 |
#define | AUDIO_OUT_SAIx_MCLK_ENABLE() __HAL_RCC_GPIOG_CLK_ENABLE() |
#define | AUDIO_OUT_SAIx_MCLK_GPIO_PORT GPIOG |
#define | AUDIO_OUT_SAIx_MCLK_PIN GPIO_PIN_7 |
#define | AUDIO_OUT_SAIx_SD_FS_CLK_ENABLE() __HAL_RCC_GPIOE_CLK_ENABLE() |
#define | AUDIO_OUT_SAIx_SD_FS_SCK_GPIO_PORT GPIOE |
#define | AUDIO_OUT_SAIx_FS_PIN GPIO_PIN_4 |
#define | AUDIO_OUT_SAIx_SCK_PIN GPIO_PIN_5 |
#define | AUDIO_OUT_SAIx_SD_PIN GPIO_PIN_6 |
#define | AUDIO_OUT_SAIx_DMAx_CLK_ENABLE() __HAL_RCC_DMA2_CLK_ENABLE() |
#define | AUDIO_OUT_SAIx_DMAx_STREAM DMA2_Stream1 |
#define | AUDIO_OUT_SAIx_DMAx_CHANNEL DMA_CHANNEL_0 |
#define | AUDIO_OUT_SAIx_DMAx_IRQ DMA2_Stream1_IRQn |
#define | AUDIO_OUT_SAIx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_HALFWORD |
#define | AUDIO_OUT_SAIx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_HALFWORD |
#define | DMA_MAX_SZE 0xFFFF |
#define | AUDIO_OUT_SAIx_DMAx_IRQHandler DMA2_Stream1_IRQHandler |
#define | AUDIO_OUT_IRQ_PREPRIO ((uint32_t)0x0E) |
#define | AUDIO_IN_SAIx SAI1_Block_B |
#define | AUDIO_IN_SAIx_CLK_ENABLE() __HAL_RCC_SAI1_CLK_ENABLE() |
#define | AUDIO_IN_SAIx_CLK_DISABLE() __HAL_RCC_SAI1_CLK_DISABLE() |
#define | AUDIO_IN_SAIx_AF GPIO_AF6_SAI1 |
#define | AUDIO_IN_SAIx_SD_ENABLE() __HAL_RCC_GPIOE_CLK_ENABLE() |
#define | AUDIO_IN_SAIx_SD_GPIO_PORT GPIOE |
#define | AUDIO_IN_SAIx_SD_PIN GPIO_PIN_3 |
#define | AUDIO_IN_SAIx_DMAx_CLK_ENABLE() __HAL_RCC_DMA2_CLK_ENABLE() |
#define | AUDIO_IN_SAIx_DMAx_STREAM DMA2_Stream4 |
#define | AUDIO_IN_SAIx_DMAx_CHANNEL DMA_CHANNEL_1 |
#define | AUDIO_IN_SAIx_DMAx_IRQ DMA2_Stream4_IRQn |
#define | AUDIO_IN_SAIx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_HALFWORD |
#define | AUDIO_IN_SAIx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_HALFWORD |
#define | AUDIO_IN_INT_GPIO_ENABLE() __HAL_RCC_GPIOJ_CLK_ENABLE() |
#define | AUDIO_IN_INT_GPIO_PORT GPIOJ |
#define | AUDIO_IN_INT_GPIO_PIN GPIO_PIN_12 |
#define | AUDIO_IN_INT_IRQ EXTI15_10_IRQn |
#define | AUDIO_DFSDMx_TOP_RIGHT_CHANNEL DFSDM_CHANNEL_0 |
#define | AUDIO_DFSDMx_TOP_LEFT_CHANNEL DFSDM_CHANNEL_1 |
#define | AUDIO_DFSDMx_BUTTOM_RIGHT_CHANNEL DFSDM_CHANNEL_4 |
#define | AUDIO_DFSDMx_BUTTOM_LEFT_CHANNEL DFSDM_CHANNEL_5 |
#define | AUDIO_DFSDMx_TOP_LEFT_FILTER DFSDM1_Filter0 |
#define | AUDIO_DFSDMx_TOP_RIGHT_FILTER DFSDM1_Filter1 |
#define | AUDIO_DFSDMx_BUTTOM_LEFT_FILTER DFSDM1_Filter2 |
#define | AUDIO_DFSDMx_BUTTOM_RIGHT_FILTER DFSDM1_Filter3 |
#define | AUDIO_DFSDMx_CLK_ENABLE() __HAL_RCC_DFSDM1_CLK_ENABLE() |
#define | AUDIO_DFSDMx_CKOUT_PIN GPIO_PIN_3 |
#define | AUDIO_DFSDMx_CKOUT_DMIC_GPIO_PORT GPIOD |
#define | AUDIO_DFSDMx_CKOUT_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOD_CLK_ENABLE() |
#define | AUDIO_DFSDMx_DMIC_DATIN1_PIN GPIO_PIN_3 |
#define | AUDIO_DFSDMx_DMIC_DATIN5_PIN GPIO_PIN_11 |
#define | AUDIO_DFSDMx_DMIC_DATIN_GPIO_PORT GPIOC |
#define | AUDIO_DFSDMx_DMIC_DATIN_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() |
#define | AUDIO_DFSDMx_DMIC_DATIN_AF GPIO_AF3_DFSDM1 |
#define | AUDIO_DFSDMx_CKOUT_AF GPIO_AF3_DFSDM1 |
#define | AUDIO_DFSDMx_DMAx_CLK_ENABLE() __HAL_RCC_DMA2_CLK_ENABLE() |
#define | AUDIO_DFSDMx_DMAx_CHANNEL DMA_CHANNEL_8 |
#define | AUDIO_DFSDMx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_WORD |
#define | AUDIO_DFSDMx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_WORD |
#define | AUDIO_DFSDMx_DMAx_TOP_LEFT_STREAM DMA2_Stream0 |
#define | AUDIO_DFSDMx_DMAx_TOP_LEFT_IRQ DMA2_Stream0_IRQn |
#define | AUDIO_DFSDMx_DMAx_TOP_LEFT_IRQHandler DMA2_Stream0_IRQHandler |
#define | AUDIO_DFSDMx_DMAx_TOP_RIGHT_STREAM DMA2_Stream5 |
#define | AUDIO_DFSDMx_DMAx_TOP_RIGHT_IRQ DMA2_Stream5_IRQn |
#define | AUDIO_DFSDMx_DMAx_TOP_RIGHT_IRQHandler DMA2_Stream5_IRQHandler |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_LEFT_STREAM DMA2_Stream6 |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_LEFT_IRQ DMA2_Stream6_IRQn |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_LEFT_IRQHandler DMA2_Stream6_IRQHandler |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_RIGHT_STREAM DMA2_Stream7 |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_RIGHT_IRQ DMA2_Stream7_IRQn |
#define | AUDIO_DFSDMx_DMAx_BUTTOM_RIGHT_IRQHandler DMA2_Stream7_IRQHandler |
#define | AUDIO_IN_IRQ_PREPRIO ((uint32_t)0x0F) |
#define | AUDIODATA_SIZE 2 /* 16-bits audio data size */ |
#define | AUDIO_OK ((uint8_t)0) |
#define | AUDIO_ERROR ((uint8_t)1) |
#define | AUDIO_TIMEOUT ((uint8_t)2) |
#define | DEFAULT_AUDIO_IN_FREQ BSP_AUDIO_FREQUENCY_16K |
#define | DEFAULT_AUDIO_IN_BIT_RESOLUTION ((uint8_t)16) |
#define | DEFAULT_AUDIO_IN_CHANNEL_NBR ((uint8_t)2) |
#define | DEFAULT_AUDIO_IN_VOLUME ((uint16_t)64) |
#define | OUTPUT_DEVICE_HEADPHONE1 OUTPUT_DEVICE_HEADPHONE |
#define | OUTPUT_DEVICE_HEADPHONE2 OUTPUT_DEVICE_SPEAKER /* Headphone2 is connected to Speaker output of the wm8994 */ |
#define | INPUT_DEVICE_DIGITAL_MIC ((uint16_t)0) |
#define | INPUT_DEVICE_ANALOG_MIC INPUT_DEVICE_INPUT_LINE_1 |
#define | DMA_MAX(x) (((x) <= DMA_MAX_SZE)? (x):DMA_MAX_SZE) |
Functions | |
uint8_t | BSP_AUDIO_OUT_Init (uint16_t OutputDevice, uint8_t Volume, uint32_t AudioFreq) |
Configures the audio peripherals. | |
void | BSP_AUDIO_OUT_DeInit (void) |
De-initializes the audio out peripheral. | |
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) |
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. | |
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. | |
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_TransferComplete_CallBack (void) |
Manages the DMA full Transfer complete event. | |
void | BSP_AUDIO_OUT_HalfTransfer_CallBack (void) |
Manages the DMA Half Transfer complete event. | |
void | BSP_AUDIO_OUT_Error_CallBack (void) |
Manages the DMA FIFO error event. | |
void | BSP_AUDIO_OUT_ClockConfig (SAI_HandleTypeDef *hsai, uint32_t AudioFreq, void *Params) |
Clock Config. | |
void | BSP_AUDIO_OUT_MspInit (SAI_HandleTypeDef *hsai, void *Params) |
Initializes BSP_AUDIO_OUT MSP. | |
void | BSP_AUDIO_OUT_MspDeInit (SAI_HandleTypeDef *hsai, void *Params) |
Deinitializes SAI MSP. | |
uint8_t | BSP_AUDIO_IN_Init (uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr) |
Initialize wave recording. | |
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_AllocScratch (int32_t *pScratch, uint32_t size) |
Allocate channel buffer scratch. | |
uint8_t | BSP_AUDIO_IN_GetChannelNumber (void) |
Return audio in channel number. | |
void | BSP_AUDIO_IN_DeInit (void) |
Deinit the audio IN peripherals. | |
uint8_t | BSP_AUDIO_IN_Record (uint16_t *pData, uint32_t Size) |
Start audio recording. | |
uint8_t | BSP_AUDIO_IN_Stop (void) |
Stop audio recording. | |
uint8_t | BSP_AUDIO_IN_Pause (void) |
Pause the audio file stream. | |
uint8_t | BSP_AUDIO_IN_Resume (void) |
Resume the audio file stream. | |
void | BSP_AUDIO_IN_TransferComplete_CallBack (void) |
User callback when record buffer is filled. | |
void | BSP_AUDIO_IN_HalfTransfer_CallBack (void) |
Manages the DMA Half Transfer complete event. | |
void | BSP_AUDIO_IN_Error_CallBack (void) |
Audio IN Error callback function. | |
void | BSP_AUDIO_IN_ClockConfig (DFSDM_Filter_HandleTypeDef *hdfsdm_filter, uint32_t AudioFreq, void *Params) |
Clock Config. | |
void | BSP_AUDIO_IN_MspInit (void) |
Initialize BSP_AUDIO_IN MSP. | |
void | BSP_AUDIO_IN_MspDeInit (void) |
DeInitialize BSP_AUDIO_IN MSP. |
Detailed Description
This file contains the common defines and functions prototypes for the stm32f769i_discovery_audio.c driver.
- Attention:
© COPYRIGHT(c) 2016 STMicroelectronics
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file stm32f769i_discovery_audio.h.
Generated on Fri Dec 30 2016 18:30:07 for STM32F769I-Discovery BSP User Manual by
