思澈科技软件开发工具包  2.20
AUDCODEC

AUDCODEC(audio codec) 完成音频通路数据的AD/DA转换。支持的采样率包括8K,12K,16K,24K,32K,48K,11.025K,22.05K,44.1K,支持音量的缓慢变化。

使用 AUDCODEC HAL 驱动程序:

HAL AUDCODEC sample for TX:

AUDCODEC_HandleTypeDef *haudcodec = &audcodec;
bf0_enable_pll(44100, 1); //RCC ENABLE
int res = HAL_AUDCODEC_Init(haudcodec);
HAL_AUDCODEC_Config_TChanel(haudcodec, 0, haudcodec->Init.dac_cfg);
HAL_NVIC_EnableIRQ(AUDCODEC_DAC1_DMA_IRQ);
__HAL_AUDCODEC_HP_ENABLE(haudcodec);
HAL_AUDCODEC_Config_Analog_DACPath(haudcodec->Init.dac_cfg);

HAL AUDCODEC sample for RX:

AUDCODEC_HandleTypeDef *haudcodec = &audcodec;
bf0_enable_pll(44100, 1); //RCC ENABLE
int res = HAL_AUDCODEC_Init(haudcodec);
HAL_AUDCODEC_Config_RChanel(haudcodec, 0, haudcodec->Init.adc_cfg);
HAL_NVIC_EnableIRQ(AUDCODEC_ADC0_DMA_IRQ);
HAL_AUCODEC_Refgen_Init();
HAL_AUDCODEC_Config_Analog_ADCPath(haudcodec->Init.adc_cfg);
/* enable AUDCODEC at last*/
__HAL_AUDCODEC_LP_ENABLE(haudcodec);
HAL_AUDCODEC_Config_RChanel
HAL_StatusTypeDef HAL_AUDCODEC_Config_RChanel(AUDCODEC_HandleTypeDef *hacodec, int channel, AUDCODEC_ADCCfgTypeDef *cfg)
Set AUDCODEC Receive configures.
AUDCODEC_HandleTypeDef::Init
AUDCODEC_InitTypeDef Init
Definition: bf0_hal_audcodec.h:217
HAL_AUDCODEC_ADC_CH0
@ HAL_AUDCODEC_ADC_CH0
Definition: bf0_hal_audcodec.h:199
HAL_AUDCODEC_Config_DACPath
HAL_StatusTypeDef HAL_AUDCODEC_Config_DACPath(AUDCODEC_HandleTypeDef *hacodec, uint16_t bypass)
Bypass DAC path.
HAL_AUDCODEC_Transmit_DMA
HAL_StatusTypeDef HAL_AUDCODEC_Transmit_DMA(AUDCODEC_HandleTypeDef *hacodec, uint8_t *pData, uint32_t Size, uint32_t did)
Set AUDCODEC Transmit data with DMA mode.
AUDCODEC_InitTypeDef::adc_cfg
AUDCODEC_ADCCfgTypeDef adc_cfg
Definition: bf0_hal_audcodec.h:175
HAL_AUDCODEC_Config_TChanel
HAL_StatusTypeDef HAL_AUDCODEC_Config_TChanel(AUDCODEC_HandleTypeDef *hacodec, int channel, AUDCODEC_DACCfgTypeDef *cfg)
Set AUDCODEC transmit channel configures.
AUDCODEC_HandleTypeDef
AUDCODEC handle Structure definition.
Definition: bf0_hal_audcodec.h:209
HAL_AUDCODEC_Init
HAL_StatusTypeDef HAL_AUDCODEC_Init(AUDCODEC_HandleTypeDef *hacodec)
Initializes the AUDCODEC according to the specified parameters in the AUDCODEC_InitTypeDef and create...
AUDCODEC_HandleTypeDef::buf
uint8_t * buf[HAL_AUDCODEC_INSTANC_CNT]
Definition: bf0_hal_audcodec.h:226
HAL_AUDCODEC_DAC_CH1
@ HAL_AUDCODEC_DAC_CH1
Definition: bf0_hal_audcodec.h:198
HAL_NVIC_EnableIRQ
void HAL_NVIC_EnableIRQ(IRQn_Type IRQn)
Enable a device specific interrupt in the NVIC interrupt controller.
AUDCODEC_InitTypeDef::dac_cfg
AUDCODEC_DACCfgTypeDef dac_cfg
Definition: bf0_hal_audcodec.h:174
AUDCODEC_HandleTypeDef::bufSize
uint16_t bufSize
Definition: bf0_hal_audcodec.h:229
HAL_AUDCODEC_Receive_DMA
HAL_StatusTypeDef HAL_AUDCODEC_Receive_DMA(AUDCODEC_HandleTypeDef *hacodec, uint8_t *pData, uint32_t Size, uint32_t did)
Set AUDCODEC Receive configures.