39 #ifndef __SENSORTILE_AUDIO_IN_H 40 #define __SENSORTILE_AUDIO_IN_H 99 #define AUDIO_IN_IRQ_PREPRIO 6 106 #define AUDIO_OK ((uint8_t)0) 109 #define AUDIO_ERROR ((uint8_t)1) 111 #ifndef AUDIO_TIMEOUT 112 #define AUDIO_TIMEOUT ((uint8_t)2) 115 #ifndef AUDIO_FREQUENCY_192K 116 #define AUDIO_FREQUENCY_192K ((uint32_t)192000) 118 #ifndef AUDIO_FREQUENCY_96K 119 #define AUDIO_FREQUENCY_96K ((uint32_t)96000) 121 #ifndef AUDIO_FREQUENCY_48K 122 #define AUDIO_FREQUENCY_48K ((uint32_t)48000) 124 #ifndef AUDIO_FREQUENCY_44K 125 #define AUDIO_FREQUENCY_44K ((uint32_t)44100) 127 #ifndef AUDIO_FREQUENCY_32K 128 #define AUDIO_FREQUENCY_32K ((uint32_t)32000) 130 #ifndef AUDIO_FREQUENCY_22K 131 #define AUDIO_FREQUENCY_22K ((uint32_t)22050) 133 #ifndef AUDIO_FREQUENCY_16K 134 #define AUDIO_FREQUENCY_16K ((uint32_t)16000) 136 #ifndef AUDIO_FREQUENCY_11K 137 #define AUDIO_FREQUENCY_11K ((uint32_t)11025) 139 #ifndef AUDIO_FREQUENCY_8K 140 #define AUDIO_FREQUENCY_8K ((uint32_t)8000) 143 #define DEFAULT_AUDIO_IN_VOLUME 64 152 extern DMA_HandleTypeDef hdma_dfsdmReg_FLT[];
170 #define MAX_CH_NUMBER (4) 171 #define MAX_FS (96000) 172 #define MAX_SAMPLES_PER_CH ((MAX_FS/1000)*2) 175 #define AUDIO_FREQUENCY_192K ((uint32_t)192000) 176 #define AUDIO_FREQUENCY_96K ((uint32_t)96000) 177 #define AUDIO_FREQUENCY_48K ((uint32_t)48000) 178 #define AUDIO_FREQUENCY_44K ((uint32_t)44100) 179 #define AUDIO_FREQUENCY_32K ((uint32_t)32000) 180 #define AUDIO_FREQUENCY_22K ((uint32_t)22050) 181 #define AUDIO_FREQUENCY_16K ((uint32_t)16000) 182 #define AUDIO_FREQUENCY_11K ((uint32_t)11025) 183 #define AUDIO_FREQUENCY_8K ((uint32_t)8000) 187 #define AUDIO_IN_DFSDM_CLK_ENABLE() __HAL_RCC_DFSDM_CLK_ENABLE() 189 #define AUDIO_IN_DFSDM_1st_CHANNEL DFSDM_Channel5 190 #define AUDIO_IN_DFSDM_2nd_CHANNEL DFSDM_Channel1 191 #define AUDIO_IN_DFSDM_3rd_CHANNEL DFSDM_Channel7 192 #define AUDIO_IN_DFSDM_4rd_CHANNEL DFSDM_Channel6 194 #define AUDIO_IN_DFSDM_1st_FILTER DFSDM_Filter0 195 #define AUDIO_IN_DFSDM_2st_FILTER DFSDM_Filter1 196 #define AUDIO_IN_DFSDM_3rd_FILTER DFSDM_Filter2 197 #define AUDIO_IN_DFSDM_4th_FILTER DFSDM_Filter3 199 #define AUDIO_IN_DFSDM_CKOUT_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() 200 #define AUDIO_IN_DFSDM_CKOUT_GPIO_PORT GPIOC 201 #define AUDIO_IN_DFSDM_CKOUT_PIN GPIO_PIN_2 203 #define AUDIO_IN_DFSDM_CH12_DATAIN_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() 204 #define AUDIO_IN_DFSDM_CH12_DATIN_GPIO_PORT GPIOB 205 #define AUDIO_IN_DFSDM_CH12_DATIN_PIN GPIO_PIN_6 207 #define AUDIO_IN_DFSDM_CH12_EXT_DATAIN_GPIO_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE() 208 #define AUDIO_IN_DFSDM_CH12_EXT_DATIN_GPIO_PORT GPIOB 209 #define AUDIO_IN_DFSDM_CH12_EXT_DATIN_PIN GPIO_PIN_8 211 #define AUDIO_IN_DFSDM_CH34_EXT_DATAIN_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE() 212 #define AUDIO_IN_DFSDM_CH34_EXT_DATIN_GPIO_PORT GPIOC 213 #define AUDIO_IN_DFSDM_CH34_EXT_DATIN_PIN GPIO_PIN_0 215 #define AUDIO_IN_DFSDM_CKOUT_DATIN_AF GPIO_AF6_DFSDM 218 #define AUDIO_IN_DFSDM_DMA_CLK_ENABLE() __HAL_RCC_DMA1_CLK_ENABLE() 220 #define AUDIO_IN_DFSDM_DMA_1st_CHANNEL DMA1_Channel4 221 #define AUDIO_IN_DFSDM_DMA_2nd_CHANNEL DMA1_Channel5 222 #define AUDIO_IN_DFSDM_DMA_3rd_CHANNEL DMA1_Channel6 223 #define AUDIO_IN_DFSDM_DMA_4th_CHANNEL DMA1_Channel7 225 #define AUDIO_IN_DFSDM_DMA_1st_CH_IRQn DMA1_Channel4_IRQn 226 #define AUDIO_IN_DFSDM_DMA_2nd_CH_IRQn DMA1_Channel5_IRQn 227 #define AUDIO_IN_DFSDM_DMA_3rd_CH_IRQn DMA1_Channel6_IRQn 228 #define AUDIO_IN_DFSDM_DMA_4th_CH_IRQn DMA1_Channel7_IRQn 230 #define AUDIO_IN_DFSDM_DMA_PERIPH_DATA_SIZE DMA_PDATAALIGN_WORD 231 #define AUDIO_IN_DFSDM_DMA_MEM_DATA_SIZE DMA_MDATAALIGN_WORD 233 #define AUDIO_IN_DFSDM_DMA_1st_CH_IRQHandler DMA1_Channel4_IRQHandler 234 #define AUDIO_IN_DFSDM_DMA_2nd_CH_IRQHandler DMA1_Channel5_IRQHandler 235 #define AUDIO_IN_DFSDM_DMA_3rd_CH_IRQHandler DMA1_Channel6_IRQHandler 236 #define AUDIO_IN_DFSDM_DMA_4th_CH_IRQHandler DMA1_Channel7_IRQHandler 247 uint8_t
BSP_AUDIO_IN_Init(uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr);
uint8_t BSP_AUDIO_IN_Init(uint32_t AudioFreq, uint32_t BitRes, uint32_t ChnlNbr)
Initializes audio acquisition.
HP filter state structure definition.
Microphone internal structure definition.
uint8_t BSP_AUDIO_IN_SetVolume(uint8_t Volume)
Controls the audio in volume level.
void BSP_AUDIO_IN_TransferComplete_CallBack(void)
User callback when record buffer is filled.
uint8_t BSP_AUDIO_IN_Pause(void)
Pauses the audio file stream.
__weak uint8_t BSP_AUDIO_IN_ClockConfig(uint32_t AudioFreq, void *Params)
Clock Config.
void BSP_AUDIO_IN_HalfTransfer_CallBack(void)
User callback when record buffer is half filled.
uint8_t BSP_AUDIO_IN_Stop(void)
Stops audio recording.
uint8_t BSP_AUDIO_IN_DeInit(void)
DeInitializes the audio peripheral.
__weak void BSP_AUDIO_IN_Error_Callback(void)
Audio IN Error callback function.
uint8_t BSP_AUDIO_IN_Resume(void)
Resumes the audio file stream.
uint8_t BSP_AUDIO_IN_Record(uint16_t *pbuf, uint32_t size)
Starts audio recording.