首頁 > 評測 > 8位機也玩音頻-Arduino+SD+DAC+運放打造的播放器
8位機也玩音頻-Arduino+SD+DAC+運放打造的播放器
- [導讀]
- 比如本文要介紹的Adafruit Wave Shield,就能是專門為Arduino設計的音頻模塊.確切的說是為AVR這一類的8位機而設計的音頻模塊.下文將從硬件到軟件詳細介紹一下子此模塊的設計細節(jié)與使用方法.
圖 插在Arduino Uno板子上
圖 帶上耳機
也懶得去追求美觀了,只求扎實與連接可靠.有幾個件沒有焊接的屬于套件中沒有包含的器件,是些指示,接口之類的, 并不影響主要功能.
下面看看原理圖:
圖 板子的原理圖
原理同總共就這一頁.不難看出,板子是通過DAC片(MCP4921)來播放音頻的,這是個12bit的單通道,參數上與大多數有DAC的片如STM32的內置DAC類似. 但是分立的DAC肯定效果要好點. DAC過了之后加了兩級運放進行放大, 運放電路也是簡單粗暴, 僅僅進行電流加強, 這是因為DAC輸出的幅度已經足夠. 另外使用74125隔離后使用SPI來讀取SD卡. 這個SD卡才是這板子較為重要的部分. 因為SD卡意味著能播放的數據源超級大了. 相比而言,12bit的DAC雖然性能還說的過去, 但不是那么必要, 因為Arduino板子幾乎都有通過PWM+濾波器來播放音頻的選項. 但是這板子不僅僅是個SD卡擴展kit,分立DAC+運放的組合起碼在教育意義上較大. 很多人能夠通過這板子來理解基本的音頻播放電路的原理. Arduino是通過SPI接口來讀取SD卡的.
安裝Arduino庫
Arduino的一大特點是能利用的庫函數很豐富. 如何使用這個模塊, 當然自己來寫FAT讀取,再進行DAC操作也是可以的. 但那樣做之前不妨試試別人寫好的庫來評估一下子硬件也是很好的. 作者相信這也是Arduino這種開源硬件這么流行的原因: 方便快捷評估硬件.這一點效率在真正的開發(fā)中很重要.在DIY中也是如此,因為可以參考別人成果,激發(fā)你的創(chuàng)作靈感. 當沒有庫的時候也要發(fā)揮自己動手的開創(chuàng)精神, 有庫的時候就要先去利用.
以下這個庫函數封裝了讀取SD卡與通過MCP4921來播放wav文件的功能:
https://github.com/adafruit/WaveHC
通過git下載也好,直接下載zip也好. 總之下載好解壓之后把WaveHC這個文件夾拷貝到你的Arduino的庫文件夾中. 系統(tǒng)中Arduino的庫文件夾這樣查看:
圖 Arduino的庫文件夾
轉換音頻
首先找個SD卡, 用TF+卡套也可以. 本人使用的是16G的SDHC卡, 最好是先進行格式化成FAT32格式. 再到你電腦上找?guī)讉想聽的歌曲要轉成單通道44.1KHz或以下, 16bit或以下的wav文件. 這里面我們使用Audacity來進行:
http://www.audacityteam.org/
這軟件本人在其他文章中寫了不少, 這里從簡, 不清楚的可以留言或翻之前的文章.
比如要轉化某mp3文件,首先當然是打開該文件:
- 本文系21ic原創(chuàng),未經許可禁止轉載!
網友評論
- 聯系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
-
人均百萬?英偉達中國員工收入曝光! 2024-08-29
-
《黑神話:悟空》玩家硬盤升級攻略:提升游戲體驗,暢享3A大作 2024-08-29
- NRF52810藍牙數字耳機找人定制
預算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預算:¥1100000015小時前
- 12V汽車啟動電源項目BMS設計
預算:¥50000023小時前
- 數據可視化軟件 開發(fā)
預算:¥5000023小時前
- PLC項目調試修改
預算:¥100001天前
- 起動電機控制器開發(fā)
預算:¥1100001天前