音頻簡介
?????將針對聲音的各種要求全部疊加到 DAC 和 ADC 芯片上,那么就會得到一個專門用于音頻的芯片,也就是音頻編解碼芯片,音頻 CODEC 的本質(zhì)是 ADC 和 DAC.
?????采樣率和采樣位數(shù)就是衡量一款音頻CODEC 最重要的指標(biāo)。比如常見音頻采樣率有 8K、 44.1K、 48K、 192K 甚至 384K 和 768K,采樣位數(shù)常見的有 8 位、 16 位、 24 位、 32 位。采樣率和采樣位數(shù)越高,那么音頻 CODEC 越能真實的還原聲音,也就是大家說的 HIFI。因此大家會看到高端的音頻播放器都會有很高的采樣率和采樣位數(shù),同樣的價格也會越高。當(dāng)然了,實際的效果還與其他部分有關(guān),采樣率和采樣位數(shù)只是其中重要的指標(biāo)之一。
以WM8950為例
WM8960 是一顆由 wolfson(歐勝)公司出品的音頻編解碼芯片,是一顆低功耗、高質(zhì)量的立體聲音頻 CODEC。集成 D 類喇叭功放,每個通道可以驅(qū)動一個 1W 喇叭(8Ω )。內(nèi)部集成 3 個立體聲輸入源,可以靈活配置,擁有一路完整的麥克風(fēng)接口。 WM8960 內(nèi)部 ADC 和 DAC 都為24 位, WM8960 主要特性如下所示:
①、 DAC 的 SNR(信噪比)為 98dB, 3.3V、 48KHz 下 THD(諧波失真)為-84dB。
②、 ADC 的 SNR(信噪比)為 94dB, 3.3V、 48KHz 下 THD(諧波失真)為-82dB。
③、 3D 增強(qiáng)。
④、立體聲 D 類功放, 可以直接外接喇叭, 8Ω負(fù)載下每通道 1W。
⑤、集成耳機(jī)接口。
⑥、集成麥克風(fēng)接口。
⑦、采樣率支持 8K、 11.025K、 12K、 16K、 22.05K、 24K、 32K、 44.1K 和 48K。
該芯片框圖如下:
①、此部分是 WM8960 提供的輸入接口,作為立體聲音頻輸入源,一共提供了三路,分別
為 LINPUT1/RINPUT1、 LINPUT2/RINPUT2、 LINPUT3/RINPUT3。麥克風(fēng)或線路輸入就連接到
此接口上,這部分是需要硬件工程師重點關(guān)心的,因為音頻選擇從哪一路進(jìn)入需要在畫 PCB 的
時候就應(yīng)該定好。
②、此部分是 WM8960 的輸出接口,比如輸出給耳機(jī)或喇叭, SPK_LP/SPK_LN 用于連接
左聲道的喇叭,支持 1W 的 8Ω喇叭。 SPK_RP/SPK_RN 用于連接右聲道的喇叭,同樣支持 1W
的 8Ω喇叭,最后就是 HP_L/HP_R,用于連接耳機(jī)。
③、此部分是數(shù)字音頻接口,用于和主控制器連接,有 5 根線,用于主控制器和 WM8960
之間進(jìn)行數(shù)據(jù)“溝通”。主控制器向 WM8960 的 DAC 發(fā)送的數(shù)據(jù), WM8960 的 ADC 向主控制
傳遞的數(shù)據(jù)都是通過此音頻接口來完成的。這個接口非常重要,是我們驅(qū)動開發(fā)人員重點關(guān)注
的,此接口支持 I2S 格式。此接口 5 根線的作用如下:
ADCDAT: ADC 數(shù)據(jù)輸出引腳,采集到的音頻數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號以后通過此引腳傳輸給
主控制器。
ADCLRC: ADC 數(shù)據(jù)對齊時鐘,也就是幀時鐘(LRCK),用于切換左右聲道數(shù)據(jù), 此信號
的頻率就是采樣率。此引腳可以配置為 GPIO 功能,配置為 GPIO 以后 ADC 就會使用 DACLRC
引腳作為幀時鐘。
DACDAT: DAC 數(shù)據(jù)輸入引腳,主控器通過此引腳將數(shù)字信號輸入給 WM8960 的 DAC。
DACLRC: DAC 數(shù)據(jù)對齊時鐘,功能和 ADCLRC 一樣,都是幀時鐘(LRCK),用于切換左
右聲道數(shù)據(jù),此信號的頻率等于采樣率。
BCLK: 位時鐘,用于同步。
MCLK: 主時鐘, WM8960 工作的時候還需要一路主時鐘,此時鐘由 I.MX6ULL 提供,
MCLK 頻率等于采樣率的 256 或 384 倍,因此大家在 WM8960 的數(shù)據(jù)手冊里面??吹?br> MCLK=256fs 或 MCLK=384fs。
④、此部分為控制接口,是一個標(biāo)準(zhǔn)的 I2C 接口, WM8960 要想工作必須對其進(jìn)行配置,這個 I2C 接口就是用于配置 WM8960 的。文章來源:http://www.zghlxwxcb.cn/news/detail-431342.html
I2S接口總結(jié)
I2S(Inter-IC Sound)總線有時候也寫作 IIS
, I2S 是飛利浦公司提出的一種用于數(shù)字音頻設(shè)備之間進(jìn)行音頻數(shù)據(jù)傳輸?shù)目偩€。和 I2C、 SPI 這些常見的通信協(xié)議一樣, I2S 總線用于主控制器和音頻 CODEC 芯片之間傳輸音頻數(shù)據(jù)。因此,要想使用 I2S 協(xié)議, 主控制器和音頻 CODEC 都得支持 I2S 協(xié)議, I.MX6ULL 的 SAI 外設(shè)就支持 I2S 協(xié)議, WM8960 同樣也支持 I2S, I2S 接口需要 3 根信號線(如果需要實現(xiàn)收和發(fā),那么就要 4根信號線,收和發(fā)分別使用一根信號線):
SCK: 串行時鐘信號,也叫做位時鐘(BCLK),音頻數(shù)據(jù)的每一位數(shù)據(jù)都對應(yīng)一個 SCK,立體聲都是雙聲道的,因此 SCK=2×采樣率×采樣位數(shù)。比如采樣率為 44.1KHz、 16 位的立體聲音頻,那么 SCK=2× 44100× 16=1411200Hz=1.4112MHz。
WS: 字段(聲道)選擇信號,也叫做 LRCK,也叫做幀時鐘,用于切換左右聲道數(shù)據(jù), WS 為“1”表示正在傳輸左聲道的數(shù)據(jù), WS 為“0”表示正在傳輸右聲道的數(shù)據(jù)。 WS 的頻率等于采樣率,比如采樣率為 44.1KHz 的音頻, WS=44.1KHz。
SD: 串行數(shù)據(jù)信號,也就是我們實際的音頻數(shù)據(jù),如果要同時實現(xiàn)放音和錄音,那么就需要 2 根數(shù)據(jù)線,比如 WM8960 的 ADCDAT 和 DACDAT,就是分別用于錄音和放音。不管音頻數(shù)據(jù)是多少位的,數(shù)據(jù)的最高位都是最先傳輸?shù)摹?shù)據(jù)的最高位總是出現(xiàn)在一幀開始后(LRCK變化)的第 2 個 SCK 脈沖處。
????另外,有時候為了使音頻 CODEC 芯片與主控制器之間能夠更好的同步,會引入另外一個叫做 MCLK 的信號,也叫做主時鐘或系統(tǒng)時鐘,一般是采樣率的 256 倍或 384 倍。
????????一幀立體音的時序圖文章來源地址http://www.zghlxwxcb.cn/news/detail-431342.html
到了這里,關(guān)于音視頻的簡介及其I2S協(xié)議的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!