C6748和音頻ADC連接時候的TDM以及I2S格式問題


一.C6748支持的音頻數據格式

    1.首先是TDM格式.其中可以通過寄存器設置slot的數量以及延時的位數,

 

2.另一種是標准的i2S格式,如下圖,在配置寄存器的時候,如果把slot數量配置成2,那么C6748的時鍾就會相應的變成下圖的格式.(如高亮部分說明)

 

 

二.C6748和音頻ADC連接時需要注意的問題

我們的C6748在連接音頻ADC的時候,有三個時鍾管腳,分別是AHCLKR,ACLKR,AFSR.我們的ADC也有三個與時鍾相關的管腳,分別是MCKI,BICK,LRCK,在連接的時候,我們的ADC一般都是用的從模式,也就是由我們的C6748給ADC提供相應的時鍾,C6748的AHCLKR和ADC的MCKI都連接到晶振上面,然后ACLKR連接到ADC的BICK上面給ADC提供位時鍾,,AFSR連接到LRCK上面給ADC提供幀時鍾,其中C6748的ACLKR由AHCLKR經過分頻得到,AFSR又是經過ACLKR分頻得到.

我們的ADC一般都是用BCLK作為參考時鍾,計算方式就是BCLK=采樣率*通道數*每個通道的寬度=16000*4*32,一般是這樣的.

下面說一下C6748和音頻ADC連接時兩個需要注意的問題.以下兩個問題已經經過代碼進行試驗驗證.

1.幀時鍾問題,

    在前面介紹C6748的TDM的格式的時候我們看到幀時鍾先是高電平,然后是低電平,而如果我們的音頻ADC設置成下圖Figure29的格式,也就是幀時鍾先低后高的模式,那么這樣連接時候也是能夠采集到ADC的聲音的,只不過這時候采集的順序是R1,L2,R2,L1,相當於順序亂了,這樣通道的對應關系就亂了,

 

2.延時一位的問題

    如果我們的C6748配置的TDM格式是延時一位的,也就是相對於幀時鍾延時一個位時鍾之后才傳輸數據,而我們的ADC配置的模式Figure28的模式,也就是數據相對於幀時鍾沒有延時,那么這個時候同樣也是能夠采集到音頻數據的,只不過這時候采集的音頻數據相對於真實數據最高位錯了,這樣導致的后果就是音量比實際音量大或小.

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM