0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用編解碼器加速開(kāi)發(fā)音頻播放應(yīng)用

電子設(shè)計(jì) ? 來(lái)源:中電網(wǎng) ? 作者:中電網(wǎng) ? 2021-01-19 11:41 ? 次閱讀

嵌入式系統(tǒng)中,越來(lái)越需要提供高保真音頻而不是蜂鳴器來(lái)實(shí)現(xiàn)用戶(hù)反饋,包括報(bào)警和警報(bào)。雖然過(guò)去嗶嗶聲或者鳴叫聲很有效,但用戶(hù)期望通過(guò)播放 MP3 等文件格式音頻才能產(chǎn)生的高級(jí)聲音。問(wèn)題是,音頻播放可能會(huì)讓人緊張,并增加系統(tǒng)成本和復(fù)雜性。第一直覺(jué)是找到可以播放 MP3 的微控制器,但這往往會(huì)使物料清單 (BOM) 增加幾美元并需要相當(dāng)復(fù)雜的嵌入式軟件

音頻編解碼器就是一個(gè)特別能平衡額外成本和軟件復(fù)雜性的解決方案。音頻編解碼器不僅能接受來(lái)自微控制器的音頻數(shù)據(jù)流,往往還具有多種功能,使得開(kāi)發(fā)人員可以對(duì)音頻播放系統(tǒng)進(jìn)行精心調(diào)校,提高系統(tǒng)播放音質(zhì)。

本文將討論音頻編解碼器的作用、開(kāi)發(fā)者在選擇時(shí)應(yīng)考慮的主要特點(diǎn)以及如何有效使用。本文將以 AKM Semiconductor、Texas Instruments 和 Maxim Integrated 的解決方案為例進(jìn)行介紹和說(shuō)明,同時(shí)也會(huì)介紹其他廠商的解決方案。最后將介紹如何使用編解碼器加速開(kāi)發(fā)音頻播放應(yīng)用并降低系統(tǒng)成本的小竅門(mén)和小技巧。

什么是音頻編解碼器?

音頻編解碼器是一種硬件組件,能夠?qū)Π纛l信息的數(shù)字?jǐn)?shù)據(jù)流進(jìn)行編碼或解碼 1。音頻編解碼器能夠分擔(dān)微控制器的音頻處理任務(wù),因此非常有用。這樣可以大大降低軟件復(fù)雜性,也可以在具體應(yīng)用中采用成本較低、性能較低的微控制器。

典型的音頻編解碼器會(huì)包含幾個(gè)功能塊:

一個(gè)用于傳輸或接收經(jīng)過(guò)編碼處理的數(shù)字音頻數(shù)據(jù)的 I2S 接口。

一個(gè)用于配置和讀取音頻編解碼器的控制寄存器的 I2C 接口。

一個(gè)連接到模數(shù)轉(zhuǎn)換器ADC) 的麥克風(fēng)輸入。

至少一個(gè)音頻輸出通道,如揚(yáng)聲器輸出,但大多數(shù)還包括一個(gè)線(xiàn)路輸出,也可能包括多個(gè)揚(yáng)聲器輸出,用于立體聲播放。

一個(gè)包含高通、低通、缺口和均衡器濾波器的數(shù)字功能塊,用于調(diào)節(jié)音頻播放和錄音。

我們以 AKM Semiconductor 的 AK4637EN 24 位音頻編解碼器為例,這是一款憑借成本低、音頻能力強(qiáng)大而頗受歡迎的音頻編解碼器(圖 1)。AK4637EN 具有所有這些功能,還配有一個(gè)蜂鳴器輸入,可以使用所需頻率的脈寬調(diào)制 (PWM) 信號(hào)來(lái)產(chǎn)生蜂鳴。

開(kāi)發(fā)者會(huì)發(fā)現(xiàn),音頻編解碼器的主要區(qū)別在于提供輸出單聲道音頻還是立體聲音頻,以及數(shù)字塊功能。例如,AK4637EN 采用了一個(gè)高通濾波器、一個(gè)低通濾波器、一個(gè)四段均衡器、一個(gè)自動(dòng)調(diào)平通道功能和一個(gè)單段均衡器。后者可作為陷波濾波器使用。開(kāi)發(fā)者如何設(shè)置這些數(shù)字濾波器會(huì)極大地影響系統(tǒng)的聲音。

剛接觸音頻播放的開(kāi)發(fā)者有時(shí)會(huì)對(duì)音頻編解碼器感到恐懼。例如,雖然 AK4637EN 是一款簡(jiǎn)單的音頻編解碼器,但快速瀏覽規(guī)格書(shū)會(huì)發(fā)現(xiàn)它有 64 個(gè)可配置寄存器。乍一看好像很多,但這些寄存器大多是用來(lái)設(shè)置各種可用數(shù)字濾波器的濾波系數(shù)的。要想讓系統(tǒng)正常輸出音頻,只需使用少量寄存器,這使得音頻編解碼器的驅(qū)動(dòng)開(kāi)發(fā)遠(yuǎn)比新手想象的簡(jiǎn)單。

如何選擇音頻編解碼器

產(chǎn)品開(kāi)發(fā)過(guò)程中,選擇任何器件的關(guān)鍵因素之一就是成本,音頻編解碼器也不例外。不過(guò)需要牢記的是,開(kāi)發(fā)人員得到的東西物有所值,所以當(dāng)涉及到音頻時(shí),團(tuán)隊(duì)必須在設(shè)計(jì)要求和解決方案的關(guān)鍵參數(shù)之間仔細(xì)權(quán)衡。

首先考慮的是音頻編解碼器的輸出要求。有幾種不同的選擇。例如,AK4637EN 有一個(gè)線(xiàn)路輸出和一個(gè)單聲道揚(yáng)聲器輸出。還有其他編解碼器,比如 Texas Instruments 的 TLV320AIC3110IRHBR 立體聲音頻編解碼器,可以 1.29 W 的功率驅(qū)動(dòng)兩個(gè)揚(yáng)聲器(圖 2)。

如 Maxim Integrated MAX9867 等其他音頻編解碼器都設(shè)計(jì)成只驅(qū)動(dòng)一對(duì)耳機(jī)(圖 3)。MAX9867 具有典型的 I2S 和 I2C 數(shù)字接口,還包含立體聲麥克風(fēng)輸入和兩個(gè)數(shù)字化選擇線(xiàn)路輸入。

在這三種解決方案中,確定采用什么樣的輸出類(lèi)型(甚至輸入類(lèi)型)是早期的關(guān)鍵決策。

開(kāi)發(fā)者還需要考慮他們將驅(qū)動(dòng)什么負(fù)載。音頻編解碼器將要直接驅(qū)動(dòng)耳機(jī)、一個(gè)音箱還是一對(duì)音箱,并提供何種輸出等級(jí)?如果系統(tǒng)要驅(qū)動(dòng)一個(gè) 5 W 揚(yáng)聲器,那么沒(méi)有多少嵌入式系統(tǒng)的編解碼器能做到這一點(diǎn)。相反,開(kāi)發(fā)人員可能希望選擇線(xiàn)路輸出,并使用單獨(dú)的 D 類(lèi)放大器直接驅(qū)動(dòng)揚(yáng)聲器。這樣既能節(jié)省一些成本,又能帶來(lái)設(shè)計(jì)靈活性。

最后兩個(gè)考慮因素是內(nèi)部布線(xiàn)和數(shù)字濾波能力。這里是決定音頻編解碼器實(shí)現(xiàn)真正差異化和成本差異的地方。例如,TLV320AIC311IRHBR 具有去爆音和軟啟動(dòng)功能,可以將揚(yáng)聲器的爆音降到最低,并使其平穩(wěn)過(guò)渡到音頻播放。該器件的每個(gè)輸出通道還配備了一個(gè)內(nèi)部混音器和數(shù)字音量控制器。

開(kāi)發(fā)者應(yīng)在音頻編解碼器需求、BOM 以及電路所需電路板空間之間進(jìn)行仔細(xì)平衡。

音頻播放系統(tǒng)

在使用音頻編解碼器時(shí),務(wù)必考慮到除音頻編解碼器之外還有幾個(gè)不同的功能塊是成功播放音頻所必需的。具體的功能塊會(huì)根據(jù)應(yīng)用和決定采取的播放方法略有不同,圖 4 所示只是一個(gè)概括說(shuō)明。

在這張圖中有幾點(diǎn)值得討論一下。首先,需要有一些存儲(chǔ)音頻播放文件的方法。有兩種選擇,一是以?xún)?nèi)部方式存儲(chǔ)文件,即存儲(chǔ)在微控制器閃存中,二是存儲(chǔ)在外部閃存中。如何選擇取決于音頻文件的大小,以及微控制器的內(nèi)部閃存容量。

開(kāi)發(fā)者還需要考慮采用什么樣的音頻播放格式。最常見(jiàn)的格式是 MP3。在這種情況下,所選的單片機(jī)需要有一個(gè)支持 MP3 解碼的軟件棧。這樣就可以打開(kāi) MP3 文件,然后使用動(dòng)態(tài)內(nèi)存訪(fǎng)問(wèn) (DMA) 控制器通過(guò) I2S 接口將音頻信號(hào)推送出去。即使是 I2S 端口也可以配置為主 / 從和其他幾種模式,因此需要仔細(xì)檢查,以確保數(shù)據(jù)以正確的速率傳輸?shù)骄幗獯a器。

如前所述,根據(jù)應(yīng)用確定需不需要外部音頻放大器。典型的編解碼器輸出功率約為 1 - 1.5 W,這對(duì)驅(qū)動(dòng)小型揚(yáng)聲器很有用。如果要驅(qū)動(dòng) 3 W 或功率更高的揚(yáng)聲器,則需要使用外部放大器。同樣,應(yīng)用最廣泛的是 D 類(lèi)音頻放大器。放大器也不一定需要具有可變?cè)鲆?。音頻編解碼器可以通過(guò)數(shù)字方式調(diào)節(jié)音量控制器,提供較寬的輸出功率范圍。

經(jīng)常被忽視的一個(gè)方面是大容量電容器。當(dāng)播放音頻時(shí),會(huì)嚴(yán)重拉動(dòng)電源軌。如果電路板上的電容不足,會(huì)極大影響輸出質(zhì)量,并會(huì)出現(xiàn)一種類(lèi)似鼻音的聲音以及其他一些不必要的噪聲。在測(cè)試過(guò)程中,可以通過(guò)仔細(xì)監(jiān)控電源軌來(lái)檢測(cè)這些聲音。在 PC 板開(kāi)發(fā)過(guò)程中,為了能調(diào)節(jié)輸出電路而通過(guò)在電路板上預(yù)留更多的空間來(lái)嘗試不同的電容值,是一個(gè)不錯(cuò)的想法。

選擇和使用音頻編解碼器的小竅門(mén)和小技巧

音頻編解碼器可以極大地簡(jiǎn)化嵌入式軟件,為應(yīng)用提供良好的音質(zhì)。如果開(kāi)發(fā)人員之前沒(méi)有使用過(guò)音頻編解碼器,那么音頻編解碼器可能會(huì)很棘手。為了成功地利用音頻編解碼器,研發(fā)團(tuán)隊(duì)?wèi)?yīng)記住如下幾個(gè)“小技巧和小竅門(mén)”:

在微控制器內(nèi)使用直接內(nèi)存訪(fǎng)問(wèn)控制器 (DMA) 功能,以最少的 CPU 干預(yù)來(lái)供給音頻編解碼器。這將有助于確保編解碼器具有充足的數(shù)據(jù)來(lái)處理。

不播放音頻時(shí),請(qǐng)使用編解碼器靜音功能,以防止低電平輸出噪音進(jìn)入揚(yáng)聲器。

在禁用或啟用播放時(shí),請(qǐng)使用音頻編解碼器的軟靜音功能,以防止揚(yáng)聲器爆音和其他不必要的噪音。

編解碼器初始化后,使用終端應(yīng)用輸出編解碼器寄存器。當(dāng)嘗試調(diào)試問(wèn)題或調(diào)節(jié)揚(yáng)聲器輸出電路和箱體時(shí),這一點(diǎn)特別有用。

充分利用編解碼器中的內(nèi)部數(shù)字濾波機(jī)制。通過(guò)數(shù)字濾波器,開(kāi)發(fā)人員可實(shí)現(xiàn)均衡輸出,過(guò)濾掉不需要的高頻和低頻信號(hào),最大限度地提高音響系統(tǒng)音質(zhì)。

請(qǐng)不要忘了,只有當(dāng)電路板和揚(yáng)聲器安裝在箱體內(nèi)時(shí),調(diào)音才是一項(xiàng)有用的工作,因?yàn)橄潴w和安裝會(huì)造成巨大差異。

要想入門(mén),開(kāi)發(fā)人員可以使用 Maxim Integrated 的 MAX9867EVKIT+ 評(píng)估套件進(jìn)行實(shí)驗(yàn)(圖 5)。

該套件由電路板和相關(guān)軟件組成,配置為使用 Sony/Philips 數(shù)字接口 (S/PDIF) 發(fā)送和接收音頻數(shù)據(jù),但也可以設(shè)置為使用 I2S。該套件有兩個(gè) RCA 輸入插孔,兩個(gè) 3.5 毫米 (mm) 模擬輸出耳機(jī)插孔,以及光纖接收和發(fā)射模塊。該軟件兼容 Windows,通過(guò) USB 電纜連接 PC 時(shí)會(huì)打開(kāi)一個(gè)圖形用戶(hù)界面 (GUI),開(kāi)發(fā)人員可在該界面中對(duì) MAX9867 的設(shè)置進(jìn)行實(shí)驗(yàn)(圖 6)。

結(jié)論

嵌入式系統(tǒng)用戶(hù)已經(jīng)習(xí)慣了高質(zhì)量音頻,以至于現(xiàn)在已經(jīng)不愿意使用蜂鳴器和蜂鳴聲來(lái)代替報(bào)警、警報(bào)和其他用戶(hù)音頻反饋。這使得開(kāi)發(fā)團(tuán)隊(duì)有責(zé)任在其系統(tǒng)中實(shí)現(xiàn) MP3 播放功能。乍看起來(lái)這是一項(xiàng)復(fù)雜的工作。然而,通過(guò)在微控制器旁邊使用正確的音頻編解碼器,并遵循一些設(shè)計(jì)最佳實(shí)踐,開(kāi)發(fā)人員就可以平衡與音頻應(yīng)用相關(guān)的成本和復(fù)雜性。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編解碼器
    +關(guān)注

    關(guān)注

    0

    文章

    250

    瀏覽量

    24185
  • 音頻編解碼器
    +關(guān)注

    關(guān)注

    4

    文章

    125

    瀏覽量

    55843
  • 音頻播放
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    7752
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TMS320C6201/6701 EVM:TMS320C6000 mcBSP轉(zhuǎn)多媒體音頻編解碼器

    電子發(fā)燒友網(wǎng)站提供《TMS320C6201/6701 EVM:TMS320C6000 mcBSP轉(zhuǎn)多媒體音頻編解碼器.pdf》資料免費(fèi)下載
    發(fā)表于 10-26 09:45 ?0次下載
    TMS320C6201/6701 EVM:TMS320C6000 mcBSP轉(zhuǎn)多媒體<b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>

    配置I2S以從編解碼器設(shè)備生成BCLK

    電子發(fā)燒友網(wǎng)站提供《配置I2S以從編解碼器設(shè)備生成BCLK.pdf》資料免費(fèi)下載
    發(fā)表于 10-21 10:30 ?0次下載
    配置I2S以從<b class='flag-5'>編解碼器</b>設(shè)備生成BCLK

    TMS320F2833x與AIC23B立體聲音頻編解碼器的接口

    電子發(fā)燒友網(wǎng)站提供《TMS320F2833x與AIC23B立體聲音頻編解碼器的接口.pdf》資料免費(fèi)下載
    發(fā)表于 10-15 09:21 ?0次下載
    TMS320F2833x與AIC23B立體聲<b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>的接口

    Linux上的編解碼器移植TMS320DM365預(yù)覽版

    電子發(fā)燒友網(wǎng)站提供《Linux上的編解碼器移植TMS320DM365預(yù)覽版.pdf》資料免費(fèi)下載
    發(fā)表于 10-14 10:53 ?0次下載
    Linux上的<b class='flag-5'>編解碼器</b>移植TMS320DM365預(yù)覽版

    TMS320DM365中的智能編解碼器功能

    電子發(fā)燒友網(wǎng)站提供《TMS320DM365中的智能編解碼器功能.pdf》資料免費(fèi)下載
    發(fā)表于 10-14 10:24 ?0次下載
    TMS320DM365中的智能<b class='flag-5'>編解碼器</b>功能

    音頻編解碼器和ADC中有哪些常見(jiàn)噪聲問(wèn)題,如何幫助避免這些問(wèn)題?

    音頻編解碼器和 ADC 中有哪些常見(jiàn)噪聲問(wèn)題,如何幫助避免這些問(wèn)題?
    發(fā)表于 10-10 08:09

    音頻編解碼器中的常見(jiàn)噪聲問(wèn)題

    電子發(fā)燒友網(wǎng)站提供《音頻編解碼器中的常見(jiàn)噪聲問(wèn)題.pdf》資料免費(fèi)下載
    發(fā)表于 10-09 10:19 ?0次下載
    <b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>中的常見(jiàn)噪聲問(wèn)題

    帶你探索HiFi智能編解碼器的奇妙世界

    HiFi智能編解碼器就像是音頻世界的魔法師,它讓我們能聽(tīng)到最真實(shí)、最動(dòng)人的聲音。無(wú)論是家庭音響、智能音箱,還是無(wú)線(xiàn)耳機(jī)和專(zhuān)業(yè)設(shè)備,這個(gè)小小的設(shè)備都能帶來(lái)巨大的音質(zhì)提升。讓我們一同期待,未來(lái)HiFi智能編解碼器為我們帶來(lái)的更多驚喜
    的頭像 發(fā)表于 07-18 17:20 ?523次閱讀
    帶你探索HiFi智能<b class='flag-5'>編解碼器</b>的奇妙世界

    TP3094單芯片PCM編解碼器和濾波數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TP3094單芯片PCM編解碼器和濾波數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-10 09:25 ?0次下載
    TP3094單芯片PCM<b class='flag-5'>編解碼器</b>和濾波<b class='flag-5'>器</b>數(shù)據(jù)表

    音頻編解碼器AC'97電壓轉(zhuǎn)換收發(fā)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《音頻編解碼器AC'97電壓轉(zhuǎn)換收發(fā)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 05-28 10:52 ?0次下載
    <b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>AC'97電壓轉(zhuǎn)換收發(fā)<b class='flag-5'>器</b>數(shù)據(jù)表

    國(guó)產(chǎn)可編程振蕩在視頻編解碼器中的應(yīng)用,兼容SiTime

    國(guó)產(chǎn)可編程振蕩在視頻編解碼器中的應(yīng)用,兼容SiTime
    的頭像 發(fā)表于 04-17 09:39 ?1769次閱讀
    國(guó)產(chǎn)可編程振蕩<b class='flag-5'>器</b>在視頻<b class='flag-5'>編解碼器</b>中的應(yīng)用,兼容SiTime

    集成電源管理和音頻編解碼器TPS65950數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《集成電源管理和音頻編解碼器TPS65950數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-06 11:15 ?0次下載
    集成電源管理和<b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>TPS65950數(shù)據(jù)表

    TPS65920和TPS65930集成電源管理/音頻編解碼器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TPS65920和TPS65930集成電源管理/音頻編解碼器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-06 10:55 ?0次下載
    TPS65920和TPS65930集成電源管理/<b class='flag-5'>音頻</b><b class='flag-5'>編解碼器</b>數(shù)據(jù)表

    高性能立體聲編解碼器DA7400 數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《高性能立體聲編解碼器DA7400 數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 02-20 10:11 ?0次下載
    高性能立體聲<b class='flag-5'>編解碼器</b>DA7400 數(shù)據(jù)表

    使用具備SigmaDSP內(nèi)核的編解碼器是否必須載入SigmaDSP程序才能使用?

    目前預(yù)計(jì)使用ADAU1761連接兩個(gè)MEMS數(shù)字麥克風(fēng), ADAU1761與ADAU1361相比, ADAU1761多了SigmaDSP內(nèi)核. 使用具備SigmaDSP內(nèi)核的編解碼器是否必須
    發(fā)表于 11-30 07:31