⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aic23的正确配置方法.txt

📁 5402dasp开发板提供的aic23驱动程序全部是错的
💻 TXT
字号:
在市场上众多的5402dsp开发板,学习板中,厂家彼此相互拷贝,基本上采用的是同一个硬件和软件版本。在这些开发板和学习板中甚至于连错误也拷贝了,其中aic23芯片的错误配置就是一例。在c5402dsp学习板中,普遍采用stc51单片机+c5402+aic23(ad/da芯片)的方案。但是我所看见的所有版本的配套软件,aic23芯片的参数配置都错误了,实际上aic23芯片被设置为工作于话筒旁路模式。aic23芯片的ad转换部分,根本没有数据输出,后面的dsp运算当然就不能实现了。这个错误隐藏的相当深,特别是dsp初学者都没有使用aic23芯片的经验,很难发现,可以说这些购买了学习板的朋友实际上没法使用。本文就此进行分析和纠正,提供正确的aic23芯片的配置参数。
         (本文来源于qq:350270577的qq空间/日志中)
    aic23芯片一共有11个寄存器负责设置其工作模式,其中地址为0x4h的寄存器名为“模拟音频通道控制寄存器”,负责选择输入通道。基本结构如下:
位:   bit8   bit7  bit6   bit5  bit4  bit3  bit2    bit1  bit0
功能:sta2  sta1  sta0  ste   DAC  byp  sel   micm  micb
		
	其中bit3位负责指定是否使用ad功能旁路模式,如果使用,则ad功能无输出。

在众多厂家提供的学习板软件中设置这个寄存器的源程序代码如下(C语言):
    write_AIC23(A_AUDIO_PATH,0x07d);   //bypass MIC ADC DAC ON 20DB sidetone(-6db)
这个函数第一个参数 A_AUDIO_PATH 是指0x04号地址寄存器,
第二个参数就是该寄存器被写入为数值0x7d,
显然,bit3位被设置为1,ad功能无输出。而后面的源代码注释也说明了是 “bypass MIC ADC DAC ON 20DB sidetone(-6db)”

     很显然,源代码的作者是清楚bit3位的作用的,但是由于调试中的疏忽,没有开通ad功能。因此正确的参数应该是:
	        write_AIC23(A_AUDIO_PATH,0x075);  
	或者 write_AIC23(A_AUDIO_PATH,0x074);  
	bit3位被设置为0,旁路模式关闭,ad采样转换开通。
	bit0位指定麦克风通道增益。
如此设置,aic23方能正确输出采样数据。

本文原创发表于本人qq:350270577的qq空间/日志中,如果转载,请注明出处,否则属于侵权。
至此,aic23芯片才是可以正常向dsp芯片提供采样数据。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -