MicroPython开发板播放音乐教程
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
? ? 0x00前言
? ? 前段時間看到TPYBoard的技術(shù)交流群(群號:157816561,)里有人問關(guān)于TPYBoard播放音樂的問題。最近抽空看了一下文檔介紹,著手做了個實(shí)驗(yàn)。
? ? 0x01實(shí)驗(yàn)器材
? ? TPYBoardv102開發(fā)板1塊
? ? 耳機(jī)或音響1個
? ? 杜邦線若干
? ? 0x02前期準(zhǔn)備
? ? 看一下TPYBoard的官方DOCS的上面的資料:
? ? http://docs.tpyboard.com/zh/latest/tpyboard/tutorial/amp_skin/?highlight=wav
? ? 1、首先我們需要一個可以播放的.wav音頻文件,通過文檔的描述和測試,發(fā)現(xiàn)只能播放2秒左右的音樂,文件大小應(yīng)小于50KB,否則會提示錯誤。
? ? 2、wav的格式要求:比特率8-bit,采樣頻率22050Hz。直接可以使用avconv工具將mp3工具轉(zhuǎn)換成可以播放的wav文件。
? ? 3、ubuntu安裝方法:
? ? 4、安裝完成后,直接執(zhí)行命令。
? ? 5、還得需要一個TF內(nèi)存卡,放入源碼和wav音頻文件后,開發(fā)板本身的FLASH空間會不足。
? ? 0x03程序源碼
? ? main.py
import wave from pyb import DAC dac = DAC(1) f = wave.open('/sd/test2.wav') dac.write_timed(f.readframes(f.getnframes()), f.getframerate())? ? 通過上面的源碼中,可以看出來主要是用到wave類庫。在最開始的教程文章中可以直接下載。
? ? 6、點(diǎn)擊紅框可直接下載wave.py,在wave文件中又引入了chunk.py,點(diǎn)擊藍(lán)框直接下載。
? ? 7、將main.py、wave.py和chunk.py直接拷貝到開發(fā)板的TF卡中即可。
? ? 8、點(diǎn)擊綠框中可以下載官方提供的wav播放文件test.wav。
? ? 9、通過上面我自己制作了一個test2.wav文件,大家也可以嘗試自己制作音頻文件播放。
? ? 源碼和wav文件下載地址
? ? https://github.com/PakchoiFood/TPYBoardV102-PlayMusic
? ? 0x04播放效果
? ? 先了解一下耳機(jī)插頭的結(jié)構(gòu)。
? ? 10、上圖是三段的耳機(jī)插頭圖,比如我們的音響插頭、收音機(jī)插頭等。
? ? 11、上面是四段的耳機(jī)插頭圖,我們平時用在手機(jī)上的耳機(jī)插頭一般都是四段的,中間多了麥克的功能??赡苡行﹪H上的標(biāo)準(zhǔn),MIC麥克和GND接地的位置會倒過來。
? ? 12、大家通過main.py源碼可以看到,我們使用的是DAC(1),所以需要將X5引腳和左聲道連接,GND引腳和耳機(jī)插頭上的GND連接。
| TPYBoard ? v102 | 耳機(jī)插頭 |
| X5 | 左聲道(L) |
| GND | GND |
?
? ? 13、接好線后,重新運(yùn)行一下程序,我們就可以聽到聲音啦。
轉(zhuǎn)載于:https://my.oschina.net/micropython/blog/1862920
總結(jié)
以上是生活随笔為你收集整理的MicroPython开发板播放音乐教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: devexpress PivotGrid
- 下一篇: [Python]程序结构与控制流