如何使用Arduino迷你放大器
Arduino迷你放大器是一個(gè)緊湊的音頻系統(tǒng),融合了老式模擬和現(xiàn)代數(shù)字組件。它結(jié)合了飛利浦TDA8425音頻處理器和Arduino Nano,支持藍(lán)牙和線內(nèi)音頻,頻譜分析,立體聲模式和軟件控制的音調(diào)調(diào)節(jié)。
Arduino Mini放大器分為六大子系統(tǒng):音頻處理器、頻譜分析儀、藍(lán)牙源、功率放大器、控制接口和電源管理單元。這種模塊化設(shè)置允許每個(gè)部件在最小的干擾下運(yùn)行,使設(shè)計(jì)和PCB布線更容易。系統(tǒng)對(duì)模擬地和數(shù)字地信號(hào)使用單獨(dú)的路徑(模擬地稱(chēng)為GNDA,數(shù)字地稱(chēng)為GNDD)。它們的連接被限制在特定的點(diǎn)上,這有助于防止來(lái)自MCU的不必要的電氣噪聲到達(dá)模擬音頻電路。
音頻部分以飛利浦在20世紀(jì)80年代末開(kāi)發(fā)的雙通道音頻處理器TDA8425為中心。該設(shè)備最初用于電視和高端音頻接收器,提供精確的模擬音調(diào)控制和音量控制,具有出色的線性度和低總諧波失真。盡管它的年齡,TDA8425仍然高度重視其模擬保真度和簡(jiǎn)單性。雖然這種芯片是在20世紀(jì)80年代制造的,但仍然可以在當(dāng)?shù)睾途W(wǎng)上電子商店購(gòu)買(mǎi)到。
在這個(gè)項(xiàng)目中,它執(zhí)行輸入源選擇、音調(diào)調(diào)整和立體聲效果管理,同時(shí)保持一個(gè)完全模擬的信號(hào)路徑。Arduino Nano通過(guò)I2C接口與TDA8425通信,發(fā)出控制命令以實(shí)時(shí)配置音量,低音,高音和立體聲模式。
該放大器的一個(gè)顯著特點(diǎn)是其16通道實(shí)時(shí)頻譜分析儀。該放大器中的頻譜分析儀是一個(gè)純軟件實(shí)現(xiàn)。而不是依賴(lài)于模擬濾波器組或外部ic,放大器的Arduino Nano直接通過(guò)其ADC采樣音頻波形,使用FFT算法處理數(shù)據(jù),并在LCD上將結(jié)果可視化為條形圖風(fēng)格的頻譜。
為了防止弱信號(hào)不可見(jiàn)和強(qiáng)信號(hào)使顯示器飽和,固件應(yīng)用動(dòng)態(tài)縮放過(guò)程,并根據(jù)音頻輸入的總體幅度調(diào)整頻譜數(shù)據(jù)的增益水平。因此,無(wú)論輸入音量大小如何,光譜顯示都保持一致的可見(jiàn)性。
最后,分析儀的數(shù)據(jù)呈現(xiàn)在16×2 LCD上,作為一個(gè)不斷更新的頻率顯示。
由于NE5532緩沖器提供出色的噪聲性能,高擺幅率和平坦的頻率響應(yīng),該分析儀引入了可忽略不計(jì)的失真,確保顯示保持準(zhǔn)確和響應(yīng),而不會(huì)影響主音頻路徑。
為了適應(yīng)現(xiàn)代音頻源,放大器集成了一個(gè)基于ac6939的藍(lán)牙模塊,能夠接收立體聲A2DP音頻流。該模塊的輸出電容耦合并路由到TDA8425輸入選擇器,在那里它們被視為與有線輸入一起的主要源之一。
雅馬哈YDA138,一個(gè)緊湊的d類(lèi)音頻功率放大器IC,作為系統(tǒng)的最后階段。它為8個(gè)Ω負(fù)載提供高達(dá)2×10 W RMS,為桌面或書(shū)架揚(yáng)聲器提供足夠的功率,同時(shí)保持出色的效率和低熱輸出。
放大器輸出通過(guò)LC低通濾波器路由,以在到達(dá)輸出連接器之前去除PWM開(kāi)關(guān)組件。由Arduino驅(qū)動(dòng)的繼電器控制開(kāi)關(guān)系統(tǒng)在揚(yáng)聲器和耳機(jī)輸出之間切換。這確保了安全操作,并防止d類(lèi)輸出級(jí)同時(shí)加載。此外,數(shù)字靜音控制線由固件管理,支持靜音模式轉(zhuǎn)換和上電靜音,以消除切換砰砰聲。
系統(tǒng)的核心組件Arduino Nano負(fù)責(zé)編排所有信號(hào)路由、模式選擇和用戶界面任務(wù)。Arduino Nano通過(guò)I2C與TDA8425和其他子系統(tǒng)交互,管理頻譜分析儀的ADC采樣,并更新16×2 LCD顯示屏。4個(gè)前面板觸覺(jué)按鈕(UP, DOWN, OPTION, MUTE)通過(guò)系統(tǒng)參數(shù)和音調(diào)調(diào)節(jié)提供直觀的導(dǎo)航。
使用PlatformIO開(kāi)發(fā)的固件基于標(biāo)準(zhǔn)Arduino庫(kù)。代碼庫(kù)利用非阻塞狀態(tài)機(jī)和定時(shí)器驅(qū)動(dòng)的例程,確保平滑的LCD刷新、響應(yīng)式按鈕處理和實(shí)時(shí)頻譜更新,而不會(huì)引入延遲或抖動(dòng)。
通過(guò)這個(gè)用戶界面,用戶可以控制幾乎每一個(gè)功能,從音調(diào)調(diào)整輸入源選擇。
該項(xiàng)目的高質(zhì)量PCB由PCBWay制造,該公司是該項(xiàng)目的慷慨贊助商,提供全面的制造,裝配,CNC和3D打印服務(wù)。完整的PCB設(shè)計(jì)文件可通過(guò)PCBWay項(xiàng)目頁(yè)面直接訂購(gòu)。查看PCBWay網(wǎng)站,了解其制造能力和價(jià)格。
Arduino迷你放大器PCB是使用KiCad設(shè)計(jì)的,無(wú)需專(zhuān)門(mén)的設(shè)備即可進(jìn)行手動(dòng)組裝。雖然電路板主要使用SMD組件來(lái)實(shí)現(xiàn)緊湊的布局和短的信號(hào)路徑,但所有組件的足跡都經(jīng)過(guò)精心挑選,可以使用細(xì)尖烙鐵和標(biāo)準(zhǔn)工具手工焊接。
原理圖:
本文編譯自hackster.io





