1. AUDIO公共
- AD23N AUDIO包含:
内置Class-D功放的APA模块;(单声道)
模拟DAC模块;(单声道)
模拟ADC模块;(单声道)
1.1. audio模块采样率列表
AW23N AUDIO 采样率支持情况
采样率
ADC
DAC
APA
8000
yes
yes
yes
11025
yes
yes
yes
12000
yes
yes
yes
16000
yes
yes
yes
22050
yes
yes
yes
24000
yes
yes
yes
32000
yes
yes
yes
44100
yes
yes
yes
48000
yes
yes
yes
64000
yes
yes
yes
88200
yes
yes
yes
96000
yes
yes
yes
表1 AD23N audio 采样率支持情况
1.2. audio工作模式列表
本小节主要介绍AUDIO 几种模式的工作场景。
1.2.1. AUDIO DAC / APA 工作模式
AD23N AUDIO 工作模式
DAC
单声道单端DAC
APA
单声道差分APA
表2 AD23N AUDIO DAC 工作模式
1.2.2. AUDIO ADC 工作模式
AD23N AUDIO ADC 工作模式
ADC MIC(模拟麦)
供电方式支持MICBIAS供电(使用内部偏置电阻)、MICLDO供电(使用外部偏置电阻)以及外部供电+外部偏置电阻; 输入方式支持单端和差分输入;
LINEIN
支持单端、差分linein输入
APA_MIC
仅支持APAP&APAN组合做差分输入,APA引脚外接喇叭作为MIC输入,此时声音只能从模拟DAC输出
DIGITAL_MIC(数字麦)
支持单声道数字麦
表3 AD23N AUDIO ADC 工作模式
注1:APA_MIC模式使用时只能以APAP为P端、APAN为N端作差分输入,且使用时APA输出功能需要关闭,此时如果需要播出的声音只能从模拟DAC输出。
注2:APA_MIC模式使用时,APAP和APAN外接喇叭,且喇叭当MIC用时一般灵敏度比较低,因此需要配合AUDIO_ADC的MIC_PGA增益使用。
1.3. Audio 公共配置
- u32 const config_adda_low_voltage_mode:音频模块电压模式;0为高压模式,1为低压模式
音频系统(模拟DAC/ADC)在vddio < 2.7v时会导致性能下降,此时开启低压模式使能可以优化音频性能;
高压模式:供电给VPWR的电压要在2.7V~4.5V之间
低压模式:VPWR和IOVDD短接,且供电在1.8V~3.6v之间
软件默认使用高压模式;
用户根据产品的使用电压范围,决定是否开启该配置;
VPWR供电电压
VPWR和IOVDD是否短接
config_adda_low_voltage_mode
2.7V~4.5V之间
否
配置为0
1.8V~3.6v之间
是
配置为1
表4 AD23N 音频模块电压模式配置、VPWR供电电压以及VPWR相关电路之间的关系
audio.c文件中,audio各个模块依赖的const常量,使用AUDIO模块时,需要把其依赖的常量置1
AD24N AUDIO & APA 工作依赖常量
Audio DAC
Audio ADC
Audio APA
au_const_apa_en
×
×
√
au_const_dpa_digital_en
√
×
√
au_const_dac_analog_en
√
×
×
au_const_adda_common_en
√
√
×
表5 AD23N AUDIO模块工作与const常量依赖关系
1.4. VCM_TRIM相关说明
AD23N的 AUDIO_ADC与AUDIO_DAC (仅包含模拟DAC,不包含APA) 在使用时,第一次上电在audio_init函数会 使用SARADC校准音频的VCM电压,并且将校准后的值写入VM,以便下次开机直接使用,因此在使用AUDIO_ADC以及模拟DAC时,会依赖SARADC和VM功能;
如果用户发现芯片有幅度问题或者底噪问题,可以对照芯片性能指标数据以及在app_config.c开启AUDIO部分的打印来排查trim是否正常,在排查trim问题之前,需要把audio_voltage_trim函数的拦截代码去掉。
AUDIO模块
是否需要VCM_TRIM
AUDIO_ADC
√
AUDIO_DAC
√
AUDIO_APA
×
表6 AD23N AUDIO模块与VCM_TRIM的关系
VCM TRIM已在公版SDK流程中加入。
![]()
VCM_TRIM函数
校准后的VCM电压,应该要和目标值need_mv接近并且大于need_mv, 注:如果开打印后,发现校准结果不符合 校准值>=need_mv,可以排查saradc是否正常工作,或者可以联系开发人员
![]()
vcm电压校准的目标值
校准后的VCM电压结果
![]()
vcm电压校准结果