STM32F413H-Discovery BSP User Manual
|
This file contains the common defines and functions prototypes for the stm32f413h_discovery_audio.c driver. More...
Go to the source code of this file.
Data Structures | |
struct | AUDIOIN_ContextTypeDef |
Defines | |
#define | AUDIO_OUT_I2Sx SPI2 |
#define | AUDIO_OUT_I2Sx_CLK_ENABLE() __HAL_RCC_SPI2_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_CLK_DISABLE() __HAL_RCC_SPI2_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_MCK_PIN GPIO_PIN_3 |
#define | AUDIO_OUT_I2Sx_MCK_GPIO_PORT GPIOA |
#define | AUDIO_OUT_I2Sx_MCK_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_MCK_GPIO_CLK_DISABLE() __HAL_RCC_GPIOA_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_MCK_AF GPIO_AF5_SPI2 |
#define | AUDIO_OUT_I2Sx_SCK_PIN GPIO_PIN_3 |
#define | AUDIO_OUT_I2Sx_SCK_GPIO_PORT GPIOD |
#define | AUDIO_OUT_I2Sx_SCK_GPIO_CLK_ENABLE() __HAL_RCC_GPIOD_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_SCK_GPIO_CLK_DISABLE() __HAL_RCC_GPIOD_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_SCK_AF GPIO_AF5_SPI2 |
#define | AUDIO_OUT_I2Sx_WS_PIN GPIO_PIN_9 |
#define | AUDIO_OUT_I2Sx_WS_GPIO_PORT GPIOB |
#define | AUDIO_OUT_I2Sx_WS_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_WS_GPIO_CLK_DISABLE() __HAL_RCC_GPIOB_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_WS_AF GPIO_AF5_SPI2 |
#define | AUDIO_OUT_I2Sx_SD_PIN GPIO_PIN_3 |
#define | AUDIO_OUT_I2Sx_SD_GPIO_PORT GPIOC |
#define | AUDIO_OUT_I2Sx_SD_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_SD_GPIO_CLK_DISABLE() __HAL_RCC_GPIOC_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_SD_AF GPIO_AF5_SPI2 |
#define | AUDIO_OUT_I2Sx_DMAx_CLK_ENABLE() __HAL_RCC_DMA1_CLK_ENABLE() |
#define | AUDIO_OUT_I2Sx_DMAx_CLK_DISABLE() __HAL_RCC_DMA1_CLK_DISABLE() |
#define | AUDIO_OUT_I2Sx_DMAx_STREAM DMA1_Stream4 |
#define | AUDIO_OUT_I2Sx_DMAx_CHANNEL DMA_CHANNEL_0 |
#define | AUDIO_OUT_I2Sx_DMAx_IRQ DMA1_Stream4_IRQn |
#define | AUDIO_OUT_I2Sx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_HALFWORD |
#define | AUDIO_OUT_I2Sx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_HALFWORD |
#define | DMA_MAX_SIZE 0xFFFF |
#define | AUDIO_OUT_I2Sx_DMAx_IRQHandler DMA1_Stream4_IRQHandler |
#define | AUDIO_OUT_IRQ_PREPRIO ((uint32_t)0x0E) /* Select the preemption priority level(0 is the highest) */ |
#define | AUDIO_DFSDMx_MIC1_CHANNEL DFSDM1_Channel1 /* MP34DT01TR U1 microphone on PCB top side */ |
#define | AUDIO_DFSDMx_MIC2_CHANNEL DFSDM2_Channel1 /* MP34DT01TR U2 microphone on PCB top side */ |
#define | AUDIO_DFSDMx_MIC3_CHANNEL DFSDM2_Channel0 /* MP34DT01TR U3 microphone on PCB top side */ |
#define | AUDIO_DFSDMx_MIC4_CHANNEL DFSDM2_Channel7 /* MP34DT01TR U4 microphone on PCB top side */ |
#define | AUDIO_DFSDMx_MIC5_CHANNEL DFSDM2_Channel6 /* MP34DT01TR U5 microphone on PCB top side */ |
#define | AUDIO_DFSDMx_MIC1_CHANNEL_FOR_FILTER DFSDM_CHANNEL_1 |
#define | AUDIO_DFSDMx_MIC2_CHANNEL_FOR_FILTER DFSDM_CHANNEL_1 |
#define | AUDIO_DFSDMx_MIC3_CHANNEL_FOR_FILTER DFSDM_CHANNEL_0 |
#define | AUDIO_DFSDMx_MIC4_CHANNEL_FOR_FILTER DFSDM_CHANNEL_7 |
#define | AUDIO_DFSDMx_MIC5_CHANNEL_FOR_FILTER DFSDM_CHANNEL_6 |
#define | AUDIO_DFSDMx_MIC1_FILTER DFSDM1_Filter0 /* Common MIC1 filter for MP34DT01TR (U1) microphone input */ |
#define | AUDIO_DFSDMx_MIC2_FILTER DFSDM2_Filter0 /* Common MIC2 filter for MP34DT01TR(U2) microphone input */ |
#define | AUDIO_DFSDMx_MIC3_FILTER DFSDM2_Filter1 /* Common MIC2 filter for MP34DT01TR(U3) microphone input */ |
#define | AUDIO_DFSDMx_MIC4_FILTER DFSDM2_Filter2 /* Common MIC2 filter for MP34DT01TR(U4) microphone input */ |
#define | AUDIO_DFSDMx_MIC5_FILTER DFSDM2_Filter3 /* Common MIC2 filter for MP34DT01TR(U5) microphone input */ |
#define | AUDIO_DFSDMx_MIC2_5_CLK_ENABLE() __HAL_RCC_DFSDM2_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC1_CLK_ENABLE() __HAL_RCC_DFSDM1_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC1_CKOUT_PIN GPIO_PIN_8 |
#define | AUDIO_DFSDMx_MIC1_CKOUT_DMIC_GPIO_PORT GPIOA |
#define | AUDIO_DFSDMx_MIC1_CKOUT_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC1_CKOUT_DMIC_AF GPIO_AF6_DFSDM1 |
#define | AUDIO_DFSDMx_MIC1_DMIC_PIN GPIO_PIN_6 |
#define | AUDIO_DFSDMx_MIC1_DMIC_GPIO_PORT GPIOD |
#define | AUDIO_DFSDMx_MIC1_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOD_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC1_DMIC_AF GPIO_AF6_DFSDM1 |
#define | AUDIO_DFSDMx_MIC2_5_CKOUT_PIN GPIO_PIN_2 |
#define | AUDIO_DFSDMx_MIC2_5_CKOUT_DMIC_GPIO_PORT GPIOD |
#define | AUDIO_DFSDMx_MIC2_5_CKOUT_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOD_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC2_5_CKOUT_DMIC_AF GPIO_AF3_DFSDM2 |
#define | AUDIO_DFSDMx_MIC23_DMIC_PIN GPIO_PIN_7 |
#define | AUDIO_DFSDMx_MIC23_DMIC_GPIO_PORT GPIOA |
#define | AUDIO_DFSDMx_MIC23_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC23_DMIC_AF GPIO_AF7_DFSDM2 |
#define | AUDIO_DFSDMx_MIC45_DMIC_PIN GPIO_PIN_7 |
#define | AUDIO_DFSDMx_MIC45_DMIC_GPIO_PORT GPIOB |
#define | AUDIO_DFSDMx_MIC45_DMIC_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() |
#define | AUDIO_DFSDMx_MIC45_DMIC_AF GPIO_AF6_DFSDM2 |
#define | AUDIO_DFSDMx_DMAx_CLK_ENABLE() __HAL_RCC_DMA2_CLK_ENABLE() |
#define | AUDIO_DFSDMx_DMAx_MIC1_STREAM DMA2_Stream6 |
#define | AUDIO_DFSDMx_DMAx_MIC1_CHANNEL DMA_CHANNEL_3 |
#define | AUDIO_DFSDMx_DMAx_MIC2_STREAM DMA2_Stream0 |
#define | AUDIO_DFSDMx_DMAx_MIC2_CHANNEL DMA_CHANNEL_8 |
#define | AUDIO_DFSDMx_DMAx_MIC3_STREAM DMA2_Stream1 |
#define | AUDIO_DFSDMx_DMAx_MIC3_CHANNEL DMA_CHANNEL_8 |
#define | AUDIO_DFSDMx_DMAx_MIC4_STREAM DMA2_Stream2 |
#define | AUDIO_DFSDMx_DMAx_MIC4_CHANNEL DMA_CHANNEL_8 |
#define | AUDIO_DFSDMx_DMAx_MIC5_STREAM DMA2_Stream7 |
#define | AUDIO_DFSDMx_DMAx_MIC5_CHANNEL DMA_CHANNEL_8 |
#define | AUDIO_DFSDMx_DMAx_MIC1_IRQ DMA2_Stream6_IRQn |
#define | AUDIO_DFSDMx_DMAx_MIC2_IRQ DMA2_Stream0_IRQn |
#define | AUDIO_DFSDMx_DMAx_MIC3_IRQ DMA2_Stream1_IRQn |
#define | AUDIO_DFSDMx_DMAx_MIC4_IRQ DMA2_Stream2_IRQn |
#define | AUDIO_DFSDMx_DMAx_MIC5_IRQ DMA2_Stream7_IRQn |
#define | AUDIO_DFSDMx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_WORD |
#define | AUDIO_DFSDMx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_WORD |
#define | AUDIO_DFSDM_DMAx_MIC1_IRQHandler DMA2_Stream6_IRQHandler |
#define | AUDIO_DFSDM_DMAx_MIC2_IRQHandler DMA2_Stream0_IRQHandler |
#define | AUDIO_DFSDM_DMAx_MIC3_IRQHandler DMA2_Stream1_IRQHandler |
#define | AUDIO_DFSDM_DMAx_MIC4_IRQHandler DMA2_Stream2_IRQHandler |
#define | AUDIO_DFSDM_DMAx_MIC5_IRQHandler DMA2_Stream7_IRQHandler |
#define | AUDIO_IN_IRQ_PREPRIO 0x0F /* Select the preemption priority level(0 is the highest) */ |
#define | AUDIO_IN_I2Sx SPI3 |
#define | AUDIO_IN_I2Sx_CLK_ENABLE() __HAL_RCC_SPI3_CLK_ENABLE() |
#define | AUDIO_IN_I2Sx_CLK_DISABLE() __HAL_RCC_SPI3_CLK_DISABLE() |
#define | AUDIO_IN_I2Sx_EXT_SD_PIN GPIO_PIN_4 |
#define | AUDIO_IN_I2Sx_EXT_SD_GPIO_PORT GPIOB |
#define | AUDIO_IN_I2Sx_EXT_SD_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() |
#define | AUDIO_IN_I2Sx_EXT_SD_GPIO_CLK_DISABLE() __HAL_RCC_GPIOB_CLK_DISABLE() |
#define | AUDIO_IN_I2Sx_EXT_SD_AF GPIO_AF7_SPI3 |
#define | AUDIO_IN_CODEC_INT_PIN GPIO_PIN_2 |
#define | AUDIO_IN_CODEC_INT_GPIO_PORT GPIOG |
#define | AUDIO_IN_CODEC_INT_GPIO_CLK_ENABLE() __HAL_RCC_GPIOG_CLK_ENABLE() |
#define | AUDIO_IN_CODEC_INT_GPIO_CLK_DISABLE() __HAL_RCC_GPIOG_CLK_DISABLE() |
#define | AUDIO_IN_CODEC_INT_IRQ EXTI2_IRQn |
#define | AUDIO_IN_I2Sx_DMAx_CLK_ENABLE() __HAL_RCC_DMA1_CLK_ENABLE() |
#define | AUDIO_IN_I2Sx_DMAx_CLK_DISABLE() __HAL_RCC_DMA1_CLK_DISABLE() |
#define | AUDIO_IN_I2Sx_DMAx_STREAM DMA1_Stream0 |
#define | AUDIO_IN_I2Sx_DMAx_CHANNEL DMA_CHANNEL_3 |
#define | AUDIO_IN_I2Sx_DMAx_IRQ DMA1_Stream0_IRQn |
#define | AUDIO_IN_I2Sx_DMAx_PERIPH_DATA_SIZE DMA_PDATAALIGN_HALFWORD |
#define | AUDIO_IN_I2Sx_DMAx_MEM_DATA_SIZE DMA_MDATAALIGN_HALFWORD |
#define | AUDIO_IN_I2Sx_DMAx_IRQHandler DMA1_Stream0_IRQHandler |
#define | AUDIO_IN_I2Sx_DMAx_IRQ DMA1_Stream0_IRQn |
#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_OUT_FREQ I2S_AUDIOFREQ_48K |
#define | DEFAULT_AUDIO_OUT_BIT_RESOLUTION ((uint8_t)16) |
#define | DEFAULT_AUDIO_OUT_CHANNEL_NBR ((uint8_t)2) /* Mono = 1, Stereo = 2 */ |
#define | DEFAULT_AUDIO_OUT_VOLUME ((uint16_t)64) |
#define | DEFAULT_AUDIO_IN_FREQ I2S_AUDIOFREQ_16K |
#define | DEFAULT_AUDIO_IN_BIT_RESOLUTION ((uint8_t)16) |
#define | DEFAULT_AUDIO_IN_CHANNEL_NBR ((uint8_t)2) /* Mono = 1, Stereo = 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_ANALOG_MIC ((uint32_t)0x00000001) |
#define | INPUT_DEVICE_DIGITAL_MIC1 ((uint32_t)0x00000010) |
#define | INPUT_DEVICE_DIGITAL_MIC2 ((uint32_t)0x00000020) |
#define | INPUT_DEVICE_DIGITAL_MIC3 ((uint32_t)0x00000040) |
#define | INPUT_DEVICE_DIGITAL_MIC4 ((uint32_t)0x00000080) |
#define | INPUT_DEVICE_DIGITAL_MIC5 ((uint32_t)0x00000100) |
#define | INPUT_DEVICE_DIGITAL_MIC ((uint32_t)(INPUT_DEVICE_DIGITAL_MIC1 | INPUT_DEVICE_DIGITAL_MIC2)) |
#define | INPUT_DEVICE_DIGITAL_MIC_ALL |
#define | DFSDM_MIC_NUMBER (5) |
#define | DMA_MAX(x) (((x) <= DMA_MAX_SIZE)? (x):DMA_MAX_SIZE) |
#define | POS_VAL(VAL) (POSITION_VAL(VAL) - 4) |
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. | |
void | BSP_AUDIO_OUT_SetFrequency (uint32_t AudioFreq) |
Updates the audio frequency. | |
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_DeInit (void) |
Deinit the audio peripherals. | |
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 (I2S_HandleTypeDef *hi2s, uint32_t AudioFreq, void *Params) |
Clock Config. | |
void | BSP_AUDIO_OUT_MspInit (I2S_HandleTypeDef *hi2s, void *Params) |
Initializes BSP_AUDIO_OUT MSP. | |
void | BSP_AUDIO_OUT_MspDeInit (I2S_HandleTypeDef *hi2s, void *Params) |
Deinitializes I2S MSP. | |
uint8_t | BSP_AUDIO_IN_Init (uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr) |
Initializes wave recording. | |
uint8_t | BSP_AUDIO_IN_InitEx (uint32_t InputDevice, uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr) |
Initializes wave recording. | |
uint8_t | BSP_AUDIO_IN_ConfigMicDefault (uint32_t InputDevice) |
Initializes default configuration of the Digital Filter for Sigma-Delta Modulators interface (DFSDM). | |
uint8_t | BSP_AUDIO_IN_ConfigDigitalMic (uint32_t InputDevice, void *Params) |
Initializes the Digital Filter for Sigma-Delta Modulators interface (DFSDM). | |
uint8_t | BSP_AUDIO_IN_AllocScratch (int32_t *pScratch, uint32_t size) |
Allocate channel buffer scratch. | |
uint8_t | BSP_AUDIO_IN_Record (uint16_t *pBuf, uint32_t Size) |
Starts audio recording. | |
uint8_t | BSP_AUDIO_IN_RecordEx (uint32_t *pBuf, uint32_t Size) |
Starts audio recording. | |
uint8_t | BSP_AUDIO_IN_SetFrequency (uint32_t AudioFreq) |
uint8_t | BSP_AUDIO_IN_Stop (void) |
Stops audio recording. | |
uint8_t | BSP_AUDIO_IN_StopEx (uint32_t InputDevice) |
Stops audio recording. | |
uint8_t | BSP_AUDIO_IN_Pause (void) |
Pauses the audio file stream. | |
uint8_t | BSP_AUDIO_IN_PauseEx (uint32_t InputDevice) |
Pauses the audio file stream. | |
uint8_t | BSP_AUDIO_IN_Resume (void) |
Resumes the audio file stream. | |
uint8_t | BSP_AUDIO_IN_ResumeEx (uint32_t *pBuf, uint32_t InputDevice) |
Resumes the audio file stream. | |
uint8_t | BSP_AUDIO_IN_SetVolume (uint8_t Volume) |
Controls the audio in volume level. | |
void | BSP_AUDIO_IN_DeInit (void) |
DeInitializes the audio peripheral. | |
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_TransferComplete_CallBackEx (uint32_t InputDevice) |
User callback when record buffer is filled. | |
void | BSP_AUDIO_IN_HalfTransfer_CallBackEx (uint32_t InputDevice) |
User callback when record buffer is filled. | |
void | BSP_AUDIO_IN_Error_Callback (void) |
Audio IN Error callback function. | |
uint8_t | BSP_AUDIO_IN_ClockConfig (uint32_t AudioFreq, void *Params) |
Clock Config. | |
void | BSP_AUDIO_IN_MspInit (void *Params) |
Initializes BSP_AUDIO_IN MSP. | |
void | BSP_AUDIO_IN_MspDeInit (void *Params) |
De-Initializes BSP_AUDIO_IN MSP. | |
Variables | |
__IO uint16_t | AudioInVolume |
Detailed Description
This file contains the common defines and functions prototypes for the stm32f413h_discovery_audio.c driver.
- Attention:
© COPYRIGHT(c) 2017 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 stm32f413h_discovery_audio.h.
Generated on Thu Jan 26 2017 16:30:37 for STM32F413H-Discovery BSP User Manual by 1.7.6.1