?? 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 + -