制作便攜式 PCM 播放器電路
出處:維庫電子市場網(wǎng) 發(fā)布于:2024-01-25 17:26:17 | 2082 次閱讀
音頻格式:未壓縮的 LPCM(RIFF WAVE 文件)
存儲介質(zhì):MicroSD存儲卡
顯示屏:Grachics OLED
收音機:單芯片F(xiàn)M接收器
電源:嵌入式鋰聚合物電池 框圖
圖 1顯示了內(nèi)置 LPCM 播放器的框圖。該播放器的有趣功能是用軟件驅(qū)動音頻 DAC。為了實現(xiàn)這一點,采樣數(shù)據(jù)必須以恒定的周期發(fā)送到DAC。一些微控制器具有片上IIS接口來輸入/輸出數(shù)字音頻數(shù)據(jù)。然而,該項目中使用的 Atmel AVR 微控制器不具備如此有用的功能,因此必須使用通用 SPI 端口和定時器中斷來驅(qū)動音頻 DAC。
DAC 的模擬輸出通過模擬量進行衰減,饋送到緩沖放大器并通過耳機插孔輸出。衰減也可以在 DAC(數(shù)字衰減)之前完成,但會降低正常音量下的 SNR,因為無論信號電平如何,DAC 生成的噪聲電平(熱噪聲和量化誤差)都是恒定的。為了避免這個問題,DAC 采用滿量程驅(qū)動,并通過 DAC 后衰減器調(diào)節(jié)音量。
使用鋰聚合物電池供電。它是內(nèi)置于機箱中的,無法輕易更換。當然,板上需要一個電池管理器。鋰聚合物電池是一種敏感的化學設(shè)備,必須按照正確的設(shè)計使用,否則可能會導致冒煙、火災或爆炸。
128 x 64 圖形OLED模塊用于顯示曲目信息。與通用背光 LCD 模塊相比,它非常薄,可以減少移動設(shè)備的厚度。然而,由于OLED是自發(fā)光器件,因此與反射式LCD模塊相比,存在功耗較大的缺點。
主電路板
電路板分為主板和顯示板兩部分。照片2和圖2顯示了組裝好的主板。
電池電壓由兩個 LDO 穩(wěn)壓器分配。數(shù)字電源提供給微控制器、存儲卡和顯示板。模擬電源提供給 DAC 和無線電接收器。兩個域的電源分開的原因是為了使模擬電路免受存儲卡產(chǎn)生的大噪聲的影響。由于同樣的原因,緩沖放大器也與模擬電源分離并直接連接到電池。數(shù)字電源由按鈕開關(guān)打開并由微控制器保持。這稱為“軟件控制電源開關(guān)”。這是第一個構(gòu)建的共同原理。模擬電源僅由微控制器控制。LiPo電池的充電控制由獨立于微控制器的充電控制IC BQ2057C完成。
該項目使用 Atmel ATmega644P微控制器,內(nèi)置 64K 字節(jié)閃存和 4K 字節(jié) RAM。3.3V 時的最大時鐘速率為 13.3MHz,但我沒有合適的晶體,因此使用了 14.745MHz 晶體。這超出了規(guī)格 10%,但對于業(yè)余愛好使用來說是沒有問題的。
大多數(shù)音頻 DAC 都有一個 8 階插值濾波器。除了 BCK/LRCK 之外,內(nèi)置數(shù)字濾波器還需要 256、384 或 512fs 過采樣時鐘 (OCK),因此很難將此類 DAC 與通用串行接口一起使用。當可以生成 OCK 時,DAC 將不接受軟件生成的數(shù)字音頻信號,因為 BCK/LRCK/OCK 之間的相位關(guān)系不穩(wěn)定。我選擇的Rohm BU9480F音頻 DAC 沒有插值濾波器。
DAC 的模擬輸出通過音量進行衰減,并通過運算放大器 (BurrBrown OPA2353 ) 進行緩沖。由于電源電壓低于4伏,不能使用非RRO類型的普通運算放大器。當任何低壓耳機放大器可用時,它比運算放大器更適合用于此目的。該項目還使用耳機線作為 FM 收音機接收器的天線,因此耳機插孔必須使用電感器進行 RF 浮置。 調(diào)頻收音機接收器已被大大簡化。該項目中使用的RDA5800C是集成在4x4mm QFN 封裝中的完整 FM 接收器。起初我使用了NS953M FM接收模塊,但靈敏度較差,后來我用RDA5800C替換它,并獲得了良好的靈敏度。調(diào)諧器 IC 的模擬輸出在啟用時通過寄存器與 DAC 輸出連接,在禁用時與 DAC 斷開。
顯示電路板
照片3和圖3為顯示板。它通過排針堆疊在主板上。板上有一個 OLED 顯示模塊、一個用于產(chǎn)生 OLED 驅(qū)動電壓的 DC-DC 轉(zhuǎn)換器、一個 LED 和一個光探測器 (CdS)。光探測器用于控制顯示強度以保持最佳可見度,這是大多數(shù)移動設(shè)備上的常見功能。OLED模組由兩塊無蓋玻璃板組成,厚度僅為1.7毫米。它安裝在電路板上。
機殼
該項目使用Takachi PB-1塑料外殼 (75 x 50 x 20mm)。材質(zhì)為透明聚苯乙烯,鉆孔時容易破裂、碎裂,應小心操作。我在外殼內(nèi)部涂上了導電涂料以形成電磁屏蔽。導電涂料有兩種類型。一種是碳基(黑色),另一種是鎳基(深灰色)。第二種似乎電阻更小,電磁屏蔽性能更好。聚苯乙烯外殼涂漆時,應分兩遍或三遍進行,以免表面溶解。當然,展示窗必須被油漆遮蓋。
控制按鈕布置在外殼側(cè)面,以防止意外操作。按鈕開關(guān)有兩種安裝方法,如圖4和圖5所示。
軟件
DAC 控制
軟件 DAC 控制是該項目的主要特點。采樣時鐘(LRCK)由TC1 的PWM 功能產(chǎn)生。音頻數(shù)據(jù)通過配置為 SPI 模式的 USART1 發(fā)送。當 LRCK 為低電平時,左側(cè)樣本被發(fā)送到 DAC,反之亦然。LRCK 的兩個邊沿上產(chǎn)生兩個獨立的中斷,每個 ISR 從數(shù)據(jù) FIFO 中讀取音頻數(shù)據(jù),混合蜂鳴聲(如果是聲音)并將其發(fā)送到 USART1。這些后臺進程在 48kHz 采樣率下占用約 4MHz 的 CPU 功率。主進程的剩余處理能力約為11MHz。一些CPU寄存器是為后臺進程保留的,因此必須在所有模塊中聲明它。
音頻播放器
當按下“播放”按鈕時,數(shù)字電源打開,微控制器開始工作。如果上次斷電后卡尚未更換,則會從中斷的曲目頂部開始播放。音頻文件(曲目)存儲在根目錄下的子目錄(專輯)中。專輯數(shù)量最多為 20 張,每張專輯的曲目數(shù)量最多為 99 首。專輯和曲目按文件/目錄名稱排序。如果專輯中存在播放列表(.m3u/.wpl 文件),則遵循列表順序。
播放時按“播放”按鈕可切換暫停/播放狀態(tài)。NEXT 按鈕跳轉(zhuǎn)到下一首曲目,如果到達最后一首曲目,則返回到第一首曲目。按住NEXT按鈕0.7秒,跳出專輯并進入下一張專輯。PREV 按鈕可跳轉(zhuǎn)到當前曲目的頂部,雙擊可跳轉(zhuǎn)上一曲目。
在播放過程中,主進程必須從存儲卡中讀取音頻數(shù)據(jù)并將其存儲到音頻FIFO中。長時間中斷可能會導致 FIFO 欠載。任何其他進程,例如用戶命令和顯示控制,都會在 FIFO 已滿時執(zhí)行。
無線電接收器
PCM 播放器和 FM 收音機接收器這兩種功能可通過長按 STOP 按鈕進行切換。收音模式下,通過PREV/NEXT按鈕調(diào)諧接收頻率,有兩種調(diào)諧模式。一種是預設(shè)模式,另一種是自由調(diào)諧模式。調(diào)音模式通過 PLAY 按鈕切換。預設(shè)頻道可通過存儲卡上的設(shè)置文件進行更改。當它被更改時,它被讀取并復制到 EEPROM 中。
PCM 播放器具有 128 x 64 點圖形 OLED 模塊。它還可以顯示漢字字體。然而,漢字字體的數(shù)據(jù)量非常大,無法包含在程序代碼中。漢字字體存儲在存儲卡中,該存儲卡具有無限的空間用于存儲字體數(shù)據(jù)。如果由于任何原因無法讀取字體數(shù)據(jù),則會顯示白色塊。
照片 4顯示了顯示屏上的布局。專輯名稱(目錄名稱)顯示在其LFN中。藝術(shù)家和標題是從 wav 文件中的 INFO 塊中獲取的。如果沒有 INFO 塊,則顯示文件名。要使用在代碼頁 932 (SJIS) 中啟用 LFN 的 FatFs,F(xiàn)atFs 模塊本身至少需要 64K 字節(jié)程序存儲器。我通過使用一些技巧減小代碼轉(zhuǎn)換表的大小解決了這個問題。
字體圖像按比例間距繪制,可增加字符密度約20%。顯示亮度由環(huán)境光控制。當處于口袋或包等黑暗地方時,OLED 顯示屏會關(guān)閉以減少功耗,但在換軌或任何按鈕上會亮起。
當播放器處于關(guān)閉狀態(tài)時,微控制器在充電時通電,并且 LED 緩慢閃爍以指示正在充電。
版權(quán)與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。