音頻控制芯片PGA2311的音頻增益自動(dòng)控制
1.2 電平搬移電路
由于一般音頻輸出設備音量大小不一且為交流耦合形式,而MSP430F149的A/D采樣電壓范圍是0~2.5 V,為了使被采樣信號與A/D匹配避免削波失真,需要將輸入信號比例放大(或縮小),并將中心電壓搬移至1.25 V附近。如圖2所示。本文引用地址:http://dyxdggzs.com/article/166068.htm
2 軟件設計
軟件設計包括按鍵顯示、外設控制、音頻信號處理幾個(gè)部分,重點(diǎn)是音頻信號處理的AGC算法。按鍵顯示響應用戶(hù)設置輸出音量大小并顯示出來(lái),外設控制主要是對PGA2311進(jìn)行配置。
2.1 AGC算法
AGC算法核心是通過(guò)信號的包絡(luò )信息來(lái)判斷信號的動(dòng)態(tài)范圍是否超過(guò)設置大小,這里需要快速跟蹤包絡(luò )的變化,及時(shí)進(jìn)行增益控制。
以往的AGC算法中乘除法運算對CPU資源的占用較大。這里提出的AGC算法比較簡(jiǎn)單實(shí)用,其流程如圖3所示。具體實(shí)現過(guò)程:從單片機的A/D口,獲得音頻輸入/輸出信號的電平存入數組。數組存儲數據達到門(mén)限比較要求,進(jìn)入峰值比較流程。根據存儲的輸入信號數據,采用冒泡排序的算法找出最大幅值,判斷輸入端是否有信號。如果判定沒(méi)有音頻信號輸入,則增益不調整,防止由于輸出信號太小而一直增大增益,噪聲過(guò)大,或者一旦出現聲音,由于增益過(guò)大而出現短時(shí)間輸出聲音太大。輸入端有信號,則對輸出端進(jìn)行檢測,同樣調用冒泡排序程序找出最大幅值,如發(fā)現輸出信號大小超過(guò)設定門(mén)限,則減小增益,反之則增大增益。在減小增益時(shí),步進(jìn)要大些,而在增大增益時(shí)步進(jìn)要小些,這樣在增益調整時(shí)輸出的音量使用戶(hù)聽(tīng)覺(jué)上不覺(jué)得難受。
3 實(shí)驗論證
為驗證設計的正確性進(jìn)行實(shí)驗論證。設定輸出電平范圍,由計算機輸入突變的音頻信號,通過(guò)示波器觀(guān)察輸出,如圖4所示。
從圖4中方框所標示的音量突變區域,可以看出輸入音量突然增大后,在500 ms內就將增益調低,保持音量輸出在設定范圍輸出。高音突變低音等實(shí)驗由于調整周期較長(cháng),這里就不作圖示整個(gè)調整過(guò)程了。
結語(yǔ)
實(shí)驗結果說(shuō)明,該設計增益控制及時(shí)、準確,保持輸出信號電平在設定范圍穩定輸出,且低功耗,實(shí)現簡(jiǎn)單,可移植性強,可以滿(mǎn)足目前用戶(hù)對音頻接收設備音量輸出的要求。
評論